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. Entwicklung & Scripting
    4. Tools & Softwareentwicklung

    [WIP] Addaction to Script (Knopfdruck)

    • Risk
    • 27. Mai 2018 um 18:23
    • Risk
      Kenner
      Reaktionen
      193
      Trophäen
      11
      Beiträge
      573
      • 27. Mai 2018 um 18:23
      • #1

      Moin Leute!
      Ich gabe gerade ein altes Script ausgekramt und bin es gerade am umschreiben um es funktionsfähig zu machen..

      Ich brauch jetzt Hilfe von euch damit wir es fertig bekommen.

      Das ganze bringt natürlich nur Vorteile.

      Der Größe Vorteil sind natürlich das alle Addactions weg sind und man ganz leicht mit einem Knopfdruck alles sieht was bei einem NPC so abgeht.

      Ich hoffe jemand hat Lust mit mir das ganze auf Vordermann zu bringen. :)

      Spoiler anzeigen
      Code
      #include "..\..\script_macros.hpp"
      /*#######################################################
      #    (c) 2015 [MdF] Feindflug                            #
      #    AddAction to Script OnLoad                            #
      #                                                        #
      #    Info:                                                #
      #    Das ist für Standard Altis life.                    #
      #    Muss für extra Funktionen angepasst                    #
      #    werden.                                                #
      #    Auf dem Trader muss dann:                            #
      #    this setVariable["ShopData",[daten],false];            #
      #                                                        #
      #    daten müssen angepasst werden!!!!                    #
      #    Informationen sind im Video enthalten.                #
      #                                                        #
      #    Autor: [MdF] Feindflug                                #
      #######################################################*/
      waitUntil {!isNull (findDisplay 12000)};
      disableSerialization;
      
      private _Btn_trader_1   = CONTROL(12000,12001);
      private _Btn_trader_2   = CONTROL(12000,12002);
      private _Btn_trader_3   = CONTROL(12000,12003);
      private _Btn_trader_4   = CONTROL(12000,12004);
      private _Btn_trader_5   = CONTROL(12000,12005);
      private _Btn_trader_6   = CONTROL(12000,12006);
      private _Btn_trader_7   = CONTROL(12000,12007);
      private _Btn_trader_8   = CONTROL(12000,12008);
      private _Btn_trader_9   = CONTROL(12000,12009);
      private _btn_trader_10  = CONTROL(12000,12010);
      
      // Buttons sperren
      _btnsArray = [_btn_trader_1,_btn_trader_2,_btn_trader_3,_btn_trader_4,_btn_trader_5,_btn_trader_6,_btn_trader_7,_btn_trader_8,_btn_trader_9,_btn_trader_10];
      {_x ctrlEnable false} forEach(_btnsArray);
      
      // Hole Shopdaten vom Trader
      _traderData = cursorTarget getVariable "ShopData";
      if(isNil "_traderData") exitWith {closeDialog 0;};
      
      // Buttons setzen
      _count = count _traderData;
      
      if(_count > 0) then
      {
          _Data = (_traderData select 0);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_1 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_1 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_1 buttonSetAction _btndata;
          };
      };
      
      if(_count > 1) then
      {
          _Data = (_traderData select 1);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_2 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_2 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_2 buttonSetAction _btndata;
          };
      };
      
      if(_count > 2) then
      {
          _Data = (_traderData select 2);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_3 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_3 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_3 buttonSetAction _btndata;
          };
      };
      
      if(_count > 3) then
      {
          _Data = (_traderData select 3);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_4 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_4 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_4 buttonSetAction _btndata;
          };
      };
      
      if(_count > 4) then
      {
          _Data = (_traderData select 4);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_5 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_5 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_5 buttonSetAction _btndata;
          };
      };
      
      if(_count > 5) then
      {
          _Data = (_traderData select 5);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_6 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_6 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_6 buttonSetAction _btndata;
          };
      };
      
      if(_count > 6) then
      {
          _Data = (_traderData select 6);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_7 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_7 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_7 buttonSetAction _btndata;
          };
      };
      
      if(_count > 7) then
      {
          _Data = (_traderData select 7);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_8 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_8 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_8 buttonSetAction _btndata;
          };
      };
      
      if(_count > 8) then
      {
          _Data = (_traderData select 8);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_9 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_9 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_9 buttonSetAction _btndata;
          };
      };
      
      if(_count > 9) then
      {
          _Data = (_traderData select 9);
          _sides = (_Data select 1);
      
          if(playerSide in _sides) then
          {
              _btn_trader_10 ctrlEnable true;
              _btndata = format["%1 spawn TLG_Client_fnc_AddActionToScript;",(_Data select 2)];
              _btn_trader_10 ctrlSetText format["%1",(_Data select 0)];
              _btn_trader_10 buttonSetAction _btndata;
          };
      };
      Alles anzeigen
      Spoiler anzeigen
      Code
      #include "..\..\script_macros.hpp"
      /*###########################################
      #    (c) 2015 [MdF] Feindflug                #
      #    AddAction to Script CFG                    #
      #                                            #
      #    Info:                                    #
      #    Das ist für Standard Altis life.        #
      #    Muss für extra Funktionen angepasst        #
      #    werden.                                    #
      #                                            #
      #    Autor: [MdF] Feindflug                    #
      ###########################################*/
      
      params[
          "_wahl"
      ];
      // Schliesst das Trader Action Menü
      closeDialog 0;
      
      switch(_wahl) do
      {
          // Garagen "Hole Vehicle aus der DB"
          /*    Funktion: _null = [0,"Car","car_g_3"] spawn life_fnc_AddActionToScript;  */
          case 0:
          {
              //_garage = spawnpunkt
              //_vehArt = der typ(Ship,Car,Air)
              params[
                  "",
                  "_garage",
                  "_vehArt"
              ];
              if(!isNil "_garage" && !isNil "_vehArt") then
              {
                  [getPlayerUID player,playerSide,_vehArt,player] remoteExec ["TON_fnc_getVehicles",2];
                  life_garage_type = _vehArt;
                  createDialog "Life_impound_menu";
                  disableSerialization;
                  ctrlSetText[2802,"Parkende Fahrzeuge..."];
                  life_garage_sp = _garage;
              };
          };
      
          // In die Garage
          /*    Funktion: _null = [1] spawn life_fnc_AddActionToScript;  */
          case 1: {
              if(!life_garage_store) then {
                  0 spawn life_fnc_storeVehicle;
              };
          };
      
          // Process Action
          /*    Funktion: _null = [2,"diamond","diamond",life_inv_diamondUncut] spawn life_fnc_AddActionToScript;  */
          case 2:
          {
              params[
                  "",
                  "_vendorName",
                  "_processType",
                  "_processItem"
              ];
              if(!isNil "_vendorName" && !isNil "_processType" && !isNil "_processItem") then
              {
                  if(_processItem > 0) then
                  {
                      if(!life_is_processing) then
                      {
                          [_vendorName,_processType] spawn life_fnc_processAction
                      } else {
                          hint "Du bist schon am Vearbeiten."
                      };
                  } else {
                      hint "Du hast nicht genug dabei zum Verarbeiten!"
                  };
              };
          };
      
          // Lizenzen
          /*    Funktion: _null = [3,"driver",license_civ_driver] spawn life_fnc_AddActionToScript;  */
          case 3:
          {
              params[
                  "",
                  "_lizenzBuyName",
                  "_hatLizenz"
              ];
              if(!isNil "_lizenzBuyName" && !isNil "_hatLizenz") then
              {
                  if(_hatLizenz) then
                  {
                      hint "Du hast die Lizenz schon!"
                  } else {
                      [_lizenzBuyName] spawn life_fnc_buyLicense;
                  };
              };
          };
      
          // DP Mission Annehmen
          /*    Funktion: _null = [4,this] spawn life_fnc_AddActionToScript;  */
          case 4:
          {
              params[
                  "",
                  "_dpStartName"
              ];
              if(!isNil "_dpStartName" && isNil "life_dp_point") then
              {
                  if(!life_delivery_in_progress) then
                  {
                      [_dpStartName] spawn life_fnc_getDPMission
                  } else {
                      hint "Du hast gerade schon eine Packetmission angenommen!"
                  };
              };
          };
      
          // DP Mission abgeben
          /*    Funktion: _null = [5,this] spawn life_fnc_AddActionToScript;  */
          case 5:
          {
              params[
                  "",
                  "_dpName"
              ];
              life_dp_point = _dpName;
      
              if(!isNil "_dpName" && !isNil "life_dp_point") then
              {
                  if(life_delivery_in_progress && !isNil "life_dp_point") then
                  {
                      [_dpName] spawn life_fnc_dpFinish
                  } else {
                      hint "Du hast gerade keine Packetmission angenommen!"
                  };
              };
          };
      
          // Alle anderen Shops
          /*    Funktion: _null = [6,"genstore",life_fnc_weaponShopMenu] spawn life_fnc_AddActionToScript;  */
          case 6:
          {
              params[
                  "",
                  "_npcName",
                  "_shopName",
                  "_scriptName"
              ];
              if(!isNil "_shopName" && !isNil "_scriptName" && !isNil "_npcName") then
              {
                  [_npcName,_shopName] spawn _scriptName
              };
          };
      
          // Vehicleshops
          /*    Funktion: _null = [7,["cop_car",west,"cop_car_2","cop","APD - Athira District"]] spawn life_fnc_AddActionToScript;  */
          case 7:
          {
              params [
                  "",
                  ["_shop","",[""]],
                  ["_sideCheck",sideUnknown,[civilian]],
                  ["_spawnPoints","",["",[]]],
                  ["_shopFlag","",[""]],
                  ["_shopTitle","",[""]],
                  ["_disableBuy",false,[true]]
              ];
              if(!isNil "_shop" && !isNil "_sideCheck" && !isNil "_spawnPoints" && !isNil "_shopFlag" && !isNil "_shopTitle" && !isNil "_disableBuy") then
              {
                  [_shop,_sideCheck,_spawnPoints,_shopFlag,_shopTitle,_disableBuy] spawn life_fnc_vehicleShopMenu
              };
          };
      
          // Helicopter Service
          /*    Funktion: _null = [8] spawn life_fnc_AddActionToScript;  */
          case 8: {
              [] spawn life_fnc_serviceChopper;
          };
      
          // Heal Spieler
          /*    Funktion: _null = [9] spawn life_fnc_AddActionToScript;  */
          case 9: {
              [] spawn life_fnc_healHospital;
          };
      
          // Pay Bail
          /*    Funktion: _null = [10] spawn life_fnc_AddActionToScript;  */
          case 10:
          {
              if(isNil "life_canpay_bail" && life_is_arrested) then
              {
                  [player] spawn life_fnc_postBail;
              }else{
                  hint "Derzeit kannst du nicht frei gekauft werden.";
              };
          };
      
          // Bankautomat
          /*    Funktion: _null = [11] spawn life_fnc_AddActionToScript;  */
          case 11: {
              0 spawn TLG_Client_fnc_bankingMenu;
          };
      
          // Gang Hideout einnehmen
          /*  Funktion: _null = [12,this] spawn life_fnc_AddActionToScript;    */
          case 12:
          {
              params[
                  "",
                  "_flag"
              ];
              if(!isNil "_flag") then {[_flag] spawn life_fnc_captureHideout};
          };
      };
      Alles anzeigen

      mfg Risk

      https://www.twitch.tv/theriskarma

    • Risk
      Kenner
      Reaktionen
      193
      Trophäen
      11
      Beiträge
      573
      • 29. Mai 2018 um 15:59
      • #2

      Vehicleshop funktioniert jetzt und auch der Waffenshop.

      Derzeit Buggy:

      Garage, Lizenz, Kleidung und z-Items

      mfg Risk

      https://www.twitch.tv/theriskarma

    • Risk
      Kenner
      Reaktionen
      193
      Trophäen
      11
      Beiträge
      573
      • 30. Mai 2018 um 17:35
      • #3

      Einparken funktioniert jetzt auch.

      Wäre schön wenn jemand mir helfen könnte :P

      Finde bei dem Rest den Fehler nicht.

      mfg Risk

      https://www.twitch.tv/theriskarma

    • Julian
      Nerd
      Reaktionen
      76
      Trophäen
      9
      Beiträge
      820
      • 30. Mai 2018 um 17:59
      • #4

      Wenn du mir ne Erklärung dazu gibst :) Schaue ich mal ob ich was finde aber ich denke eher nicht xD ... Aber ich kanns versuchen :D

      Mit freundlichen Grüßen,

      Julian


      Bitte erst Denken und dann Fragen


      Hier lesen: das Heilige Buch der Arma3 Scripter

    • Risk
      Kenner
      Reaktionen
      193
      Trophäen
      11
      Beiträge
      573
      • 31. Mai 2018 um 22:08
      • #5

      Sind jetzt so weit das alle Sachen funktionieren.

      Speedo war so freundlich und hat mir heute bei allem noch geholfen :)

      Nur der Kleidungsshop ist der einzige der nicht geht.

      Fehler:

      Code
      22:06:17 Error in expression <[6,clothing_1,"bruce",{
          private _fnc_scriptNameParent>
      22:06:17   Error position: <"bruce",{
          private _fnc_scriptNameParent>
      22:06:17   Error Allgemeiner Fehler in Ausdruck

      Aufruf:

      this setVariable [""ShopData"",[ [""Kleidung"",[civilian],[6,this,""bruce"",life_fnc_clothingMenu]] ], false ];

      Als Beispiel jetzt der Fischmarkt, dieser funktioniert.

      this setVariable [""ShopData"",[ [""Fischmarkt"",[civilian],[6,this,""fishmarket"",life_fnc_virt_menu]] ], false ];

      Hoffe jemand hat ne Ahnung woran es liegt :D

      mfg Risk

      https://www.twitch.tv/theriskarma

    • nox 12. Mai 2025 um 13:06

      Hat das Thema aus dem Forum Tools und Entwicklung nach Tools & Softwareentwicklung verschoben.

    Registrieren oder Einloggen

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

    Registrieren

    Ähnliche Themen

    • Dialoge

      • ESLotherwise
      • 25. Oktober 2017 um 22:47
      • 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™