1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Fr: 04 Juli 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Gameserver & Hosting
    4. ArmA Series - ArmA 3 / Reforger
    5. Hilfeforum

    Custom Hud mit ACE verbinden

    • HelperLee
    • 13. April 2017 um 14:42
    • Geschlossen
    • Erledigt
    • HelperLee
      Amateur
      Reaktionen
      12
      Trophäen
      9
      Beiträge
      181
      • 13. April 2017 um 14:42
      • #1

      Hey Liebe Community,

      Ich möchte gerne meine HUD / Statusbar mit ACE in Verbindung bringen also habe ich mal paar Sachen herausgesucht.
      Im Scripts Ordner

      Code
      #include "..\..\script_macros.hpp"
      /*
          Author: David
          Edited: Dark (Custom colours & precise stats)
          Community: ArmaCentral RP & Altisliferpg.com & InfiniteNetwork.xyz
          Don't edit or redistribute without asking, 1st not cool, 2nd I will DMCA you, ask slyfoxgaming :)
      */
      disableSerialization;
      
      1 cutRsc ["custHUD","PLAIN"];
      
      waitUntil {!isNull (uiNameSpace getVariable "custHUD")};
              //Displays
              _display = uiNameSpace getVariable "custHUD";
              _healthidc = _display displayCtrl 1100;
              _foodidc = _display displayCtrl 1101;
              _thirstidc = _display displayCtrl 1102;
              _bankidc = _display displayCtrl 1103;
              _cashidc = _display displayCtrl 1104;
              _playeridc = _display displayCtrl 1105;
      
              //titles
              _banktitle = _display displayCtrl 1001;
              _cashtitle = _display displayCtrl 1002;
              _playertitle = _display displayCtrl 1006;
      
              //Stats
              _damage = round ((1 - (damage player)) * 100);
              //
              //PLEASE COMMENT OUT >>ONE<< OF THE TWO SETS OF VARIABLES BELOW
              //
              //THIS ONE OS FOR TEXT E.G. | IM HEALTHY | NEED SOME FOOD | NOT THIRSTY |
              _hunger = life_hunger;
              _thirst = life_thirst;
      
              //THIS ONE OS FOR EXACT VALUES E.G.| 100% HEALTH | 100% FOOD | 100% THIRST |
              _hunger = round (life_hunger);
              _thirst = round (life_thirst);
      
      
              _cash = [CASH] call life_fnc_numberText;
              _bank = [BANK] call life_fnc_numberText;
              _players = count playableUnits;
      
              //Colours
              _colourDefault     = parseText "#adadad";
              _colour108        = parseText "#FF7000";
              _colour107        = parseText "#FF9000";
              _colour106        = parseText "#FFBB00";
              _colour105        = parseText "#FFCC00";
              _colour104        = parseText "#81CCDD";
              _colour103        = parseText    "#33AACC";
              _colour102        = parseText "#3388CC";
              _colour101        = parseText "#3366CC";
              _colour100         = parseText "#336600";
              _colour90         = parseText "#339900";
              _colour80         = parseText "#33CC00";
              _colour70         = parseText "#33FF00";
              _colour60         = parseText "#66FF00";
              _colour50         = parseText "#CCFF00";
              _colour40         = parseText "#CCCC00";
              _colour30         = parseText "#CC9900";
              _colour20         = parseText "#CC6600";
              _colour10         = parseText "#CC3300";
              _colour0         = parseText "#CC0000";
              _colourDead     = parseText "#000000";
      
              _colourDamage = _colourDefault;
              switch true do {
                  case(_damage >= 100) : {_colourDamage = _colour100;};
                  case((_damage >= 90) && (_damage < 100)) : {_colourDamage =  _colour100;};
                  case((_damage >= 80) && (_damage < 90)) : {_colourDamage =  _colour80;};
                  case((_damage >= 70) && (_damage < 80)) : {_colourDamage =  _colour70;};
                  case((_damage >= 60) && (_damage < 70)) : {_colourDamage =  _colour60;};
                  case((_damage >= 50) && (_damage < 60)) : {_colourDamage =  _colour50;};
                  case((_damage >= 40) && (_damage < 50)) : {_colourDamage =  _colour40;};
                  case((_damage >= 30) && (_damage < 40)) : {_colourDamage =  _colour30;};
                  case((_damage >= 20) && (_damage < 30)) : {_colourDamage =  _colour20;};
                  case((_damage >= 10) && (_damage < 20)) : {_colourDamage =  _colour10;};
                  case((_damage >= 1) && (_damage < 10)) : {_colourDamage =  _colour0;};
                  case(_damage < 1) :{_colourDamage =  _colourDead;};
              };
      
              _colourHunger = _colourDefault;
              switch true do {
                  case(_hunger >= 100) :{_colourHunger = _colour100;};
                  case((_hunger >= 90) && (_hunger < 100)) : {_colourHunger =  _colour90;};
                  case((_hunger >= 80) && (_hunger < 90)) : {_colourHunger =  _colour80;};
                  case((_hunger >= 70) && (_hunger < 80)) : {_colourHunger =  _colour70;};
                  case((_hunger >= 60) && (_hunger < 70)) : {_colourHunger =  _colour60;};
                  case((_hunger >= 50) && (_hunger < 60)) : {_colourHunger =  _colour50;};
                  case((_hunger >= 40) && (_hunger < 50)) : {_colourHunger =  _colour40;};
                  case((_hunger >= 30) && (_hunger < 40)) : {_colourHunger =  _colour30;};
                  case((_hunger >= 20) && (_hunger < 30)) : {_colourHunger =  _colour20;};
                  case((_hunger >= 10) && (_hunger < 20)) : {_colourHunger =  _colour10;};
                  case((_hunger >= 1) && (_hunger < 10)) : {_colourHunger =  _colour0;};
                  case(_hunger < 1) :{_colourHunger =  _colourDead;};
              };
      
              _colourThirst = _colourDefault;
              switch true do {
                  case(_thirst >= 100) : {_colourThirst = _colour101;};
                  case((_thirst >= 90) && (_thirst < 100)) :  {_colourThirst =  _colour102;};
                  case((_thirst >= 80) && (_thirst < 90)) :  {_colourThirst =  _colour103;};
                  case((_thirst >= 70) && (_thirst < 80)) :  {_colourThirst =  _colour104;};
                  case((_thirst >= 60) && (_thirst < 70)) :  {_colourThirst =  _colour105;};
                  case((_thirst >= 50) && (_thirst < 60)) :  {_colourThirst =  _colour106;};
                  case((_thirst >= 40) && (_thirst < 50)) :  {_colourThirst =  _colour107;};
                  case((_thirst >= 30) && (_thirst < 40)) :  {_colourThirst =  _colour108;};
                  case((_thirst >= 20) && (_thirst < 30)) :  {_colourThirst =  _colour20;};
                  case((_thirst >= 10) && (_thirst < 20)) :  {_colourThirst =  _colour10;};
                  case((_thirst >= 1) && (_thirst < 10)) :  {_colourThirst =  _colour0;};
                  case(_thirst < 1) : {_colourThirst =  _colourDead;};
              };
      Alles anzeigen
    • HelperLee
      Amateur
      Reaktionen
      12
      Trophäen
      9
      Beiträge
      181
      • 13. April 2017 um 14:42
      • #2

      Hier geht es weiter

      Code
      if (_damage < 100) then {
                      _healthtext = parseText format["Very Healthy"];
              } else {
              if (_damage < 85) then {
                      _healthtext = parseText format["A few scratches"];
              } else {
              if (_damage < 70) then {
                      _healthtext = parseText format["Slightly injured"];
              } else {
              if (_damage < 60) then {
                      _healthtext = parseText format["Not feeling well"];
              } else {
              if (_damage < 50 ) then {
                      _healthtext = parseText format["Starting to feel pain"];
              } else {
              if (_damage < 40) then {
                      _healthtext = parseText format["I feel pain"];
              } else {
              if (_damage < 30) then {
                      _healthtext = parseText format["Something must be broken"];
              } else {
              if (_damage < 20) then {
                      _healthtext = parseText format["Horribly injured"];
              } else {
              if (_damage < 10) then {
                      _healthtext = parseText format["Extremely injured"];
              } else {
              if (_damage == 0) then {
                      _healthtext = parseText format["Dead</t>"];
      };};};};};};};};};};
      
      if (_hunger > 90) then {
                      _hungertext = parseText format["I'm not hungry"];
              } else {
              if (_hunger > 80) then {
                      _hungertext = parseText format["Not hungry at all"];
              } else {
              if (_hunger > 70) then {
                      _hungertext = parseText format["Could use some crackers"];
              } else {
              if (_hunger > 60) then {
                      _hungertext = parseText format["Might need something soon"];
              } else {
              if (_hunger > 50) then {
                      _hungertext = parseText format["Stomach is feeling empty"];
              } else {
              if (_hunger > 40) then {
                      _hungertext = parseText format["I should eat soon"];
              } else {
              if (_hunger > 30) then {
                      _hungertext = parseText format["My stomach is grumbling"];
              } else {
              if (_hunger > 20) then {
                      _hungertext = parseText format["I need to eat now"];
              } else {
              if (_hunger > 10) then {
                      _hungertext = parseText format["Starvation is kicking in"];
              } else {
              if (_hunger == 0) then {
                      _hungertext = parseText format["Dead</t>"];
      };};};};};};};};};};
      
      if (_thirst > 80) then {
                      _thirsttext = parseText format["Not thirsty"];
              } else {
              if (_thirst > 70) then {
                      _thirsttext = parseText format["Could use a glass of water"];
              } else {
              if (_thirst > 60) then {
                      _thirsttext = parseText format["Should drink something soon"];
              } else {
              if (_thirst > 50) then {
                      _thirsttext = parseText format["Throat is a little dry"];
              } else {
              if (_thirst > 40) then {
                      _thirsttext = parseText format["I should drink soon"];
              } else {
              if (_thirst > 30) then {
                      _thirsttext = parseText format["My throat is dry"];
              } else {
              if (_thirst > 20) then {
                      _thirsttext = parseText format["I should drink now"];
              } else {
              if (_thirst > 10) then {
                      _thirsttext = parseText format["Dehydration Feels Horrible"];
              } else {
              if (_thirst == 0) then {
                      _thirsttext = parseText format["DEAD</t>"];
      };};};};};};};};};
      
      
      
              _healthidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%3'>%2%1</t>","%",_damage,_colourDamage]);
      
              _foodidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%3'>%2%1</t>","%",_hunger,_colourHunger]);
      
              _thirstidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%3'>%2%1</t>","%",_thirst,_colourThirst]);
      
              ////^^^^^^^^^^^ HAS EXACT VALUES E.G. HUNGER 100% | THIRST 100% | HEALTH 100%
              ////
              //// COMMENT ONE OF THE TWO OUT AS IF YOU DONT, IT WONT WORK ---- REFER TO THE VARIABLES AT THE TOP, THE ONE YOU COMMENTED OUT CORROSPONDS TO THE ONE YOU SHOULD USE NOW!!!!!!!!
              ////
              //// THIS ONE BELOW HAS TEXT E.G. HEALTH: SERIOUSLY INJURED | THIRST: NOT THIRSTY | HUNGER: NOT HUNGRY
      
              _healthidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%2'>%1</t>",_healthtext,_colourDamage]);
      
              _foodidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%2'>%1</t>",_hungertext,_colourHunger]);
      
              _thirstidc ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.7' color='%2'>%1</t>",_thirsttext,_colourThirst]);
      
      
              //DONT COMMENT THE BELLOW OUT
              _cashidc ctrlSetStructuredText (parseText format ["$%1",_cash]);
              _bankidc ctrlSetStructuredText (parseText format ["$%1",_bank]);
              _playeridc ctrlSetStructuredText (parseText format ["%1",_players]);
      
              _cashtitle ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.5'>Cash</t>"]);
              _banktitle ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.5'>Bank</t>"]);
              _playertitle ctrlSetStructuredText (parseText format ["<t font='TahomaB' size='0.5'>Players</t>"]);
      Alles anzeigen
    • HelperLee
      Amateur
      Reaktionen
      12
      Trophäen
      9
      Beiträge
      181
      • 13. April 2017 um 14:43
      • #3

      Und das ist Irgendwo rausgefunden
      Von einer Hilfe die br1zey beantwortet hat.

      ----------------------------------------------------------ZITAT-----------------------------------------------------------------------------

      ja Ersetzt den Inhalt der

      fn_hudUpdate.sqf mit

      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_hudUpdate.sqf
          Author: Daniel Stuart
      
      
      
      
          Description:
          Updates the HUD when it needs to.
      */
      disableSerialization;
      
      
      
      
      if (isNull LIFEdisplay) then {[] call life_fnc_hudSetup;};
      LIFEctrl(2200) progressSetPosition (life_hunger / 100);
      LIFEctrl(2201) progressSetPosition (1 - (damage player));
      LIFEctrl(2202) progressSetPosition (life_thirst / 100);
      
      
      
      
      _health = "Gesund";
      
      
      
      
      if((player getVariable "ACE_medical_pain") > 0) then {
      	_health = "Schmerzen";
      	};
      if(player getVariable "ACE_medical_isBleeding") then {
      	_health = "Blutet";
      	};
      
      
      
      
      
      
      
      LIFEctrl(1201) ctrlsetText _health;
      Alles anzeigen

      und der


      fn_hudSetup.sqf


      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_hudSetup.sqf
          Author: Bryan "Tonic" Boardwine
      
      
      
      
          Description:
          Setups the hud for the player?
      */
      disableSerialization;
      
      
      
      
      2 cutRsc ["playerHUD", "PLAIN"];
      [] call life_fnc_hudUpdate;
      
      
      
      
      [] spawn
      {
      	while{true}do{
          [] call life_fnc_hudUpdate;
      	sleep 5;
      	};
      };
      Alles anzeigen

      ----------------------------------------------------------ZITAT--ENDE---------------------------------------------------------------------

      Hoffe jemand weis wie ich das zusammenschreibe :D

      MFG

      Der Ahnungslose

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Ähnliche Themen

    • BEC spinnt seitdem Root abgeschmiert ist

      • Troublemaker2_0
      • 22. April 2017 um 11:14
      • Hilfeforum
    • "extDB3: Error with Database Connection"

      • SelfTanoa
      • 29. Januar 2017 um 16:46
      • Hilfeforum

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™