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
Mi: 02 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. Tutorials & Releases

    [Tutorial] [Altis Life 5.0] V- und I-Items nach dem Tod in einer Lootbox

      • Altis Life
    • Alice Kingsleigh
    • 23. Juni 2018 um 03:05
    • Alice Kingsleigh
      Profi
      Reaktionen
      329
      Trophäen
      8
      Beiträge
      1.141
      • 23. Juni 2018 um 03:05
      • #1

      Die Credits für dieses Script gehen an moeck. Ich habe lediglich meinen Testserver zur Verfügung gestellt, mit ihm rumprobiert und schreibe das alles für euch auf.


      Version: Altis Life 5.0

      Schwierigkeitsgrad: 2 (eventuell 1 aber ein bisschen Verständnis wäre nicht verkehrt)

      Was es tut:

      Bei Tod des Spielers werden alle V-, I-Items, ausgenommen Kleidung, und das Geld in eine graue Kiste gelegt. Jeder kann über I (aufs I-Inventar) und T (auf die V Items und Geld) zugreifen. Nach 3 Minuten (kann umgestellt werden) verscheindet die Kiste. Wird der Spieler wiederbelebt behält er seine Kleidung, alles andere findet er dann in der Kiste wieder.

      Legen wir los!


      Schritt 1:

      Im Pfad /core/functions/fn_dropItem.sqf ersetzt ihr den gesamten Inhalt hiermit:

      Code
      #include "..\..\script_macros.hpp"
      /*
       File: fn_dropItems.sqf
       Author: moeck
       Description:
       Called on death, Player drops any 'virtual' items and items. They are stored in a plastic case.
          
      */
      params [
       ["_unit",objNull,[objNull]]
      ];
      private _restricted_items = LIFE_SETTINGS(getArray,"drop_restricted_vitems");
      private _pos = _unit modelToWorld[0,3,0];
      _pos = [(_pos select 0),(_pos select 1),0];
      private _obj = "Land_PlasticCase_01_small_F" createVehicle _pos; //Solltet ihr ein anderes Objekt wollen, den Classname in allen für diese Funktion benötigten Scripts ändern.
      clearWeaponCargoGlobal _obj;
      clearItemCargoGlobal _obj;
      clearMagazineCargoGlobal _obj;
      clearBackpackCargoGlobal _obj;
      _name = format ["%1's Lootbox",name _unit];
      _obj setVariable ["Name",_name,true]; // %1 bewirkt die Anzeige des Namens des verstorbenen Spielers an, so dass ihr das "'s Lootbox" ändern könnt falls gewünscht.
      private _trunk =[];
      private _weight = 0;
      {
          private _value = 0;
          private _iweight = 0;
          private _itemName= "";
          private _item = "";
          if (_x isEqualType "") then {_item = _x;} else {_item = configName _x};
          if (_item isEqualTo "life_cash") then {
              _value = CASH;
              _itemName = "CASH";
              _item = "money";
          } else {
              _value = ITEM_VALUE(_item);
              _iweight = (([_item] call life_fnc_itemWeight) * _value);
              _itemName = ITEM_VARNAME(_item);
          };
          _weight = _weight + _iweight;
          if (_value > 0 && !(_item in _restricted_items)) then {
              _trunk pushBack [_item,_value];
          };
          missionNamespace setVariable [_itemName,0];
      } forEach (("true" configClasses (missionConfigFile >> "VirtualItems")) + ["life_cash"]);
      _obj setVariable["Trunk",[_trunk,_weight],true];
      if (LIFE_SETTINGS(getNumber,"drop_iitems_onDeath") isEqualTo 1) then {
          if (!(uniform _unit isEqualTo "")) then {
              {_obj addItemCargoGlobal [_x, 1];_unit removeItem _x} forEach (uniformItems _unit);
          };
          if (!(backpack _unit isEqualTo "")) then {
              {_obj addItemCargoGlobal [_x, 1];_unit removeItem _x} forEach (backpackItems _unit);
          };
          if (!(vest _unit isEqualTo "")) then {
              {_obj addItemCargoGlobal [_x, 1];_unit removeItem _x} forEach (vestItems _unit);
          };
          if (count (primaryWeaponItems _unit) > 0) then {
              {_obj addItemCargoGlobal [_x, 1];_unit removeItem _x} forEach (primaryWeaponItems _unit);
          };
          if (count (handgunItems _unit) > 0) then {
              {_obj addItemCargoGlobal [_x, 1];_unit removeItem _x} forEach (handGunItems _unit);
          };
          if !(primaryWeapon _unit isEqualTo "") then {_obj addItemCargoGlobal [(primaryWeapon _unit), 1]};
          if !(handgunWeapon _unit isEqualTo "") then {_obj addItemCargoGlobal [(handgunWeapon _unit), 1]};
          removeAllWeapons _unit;
          {player removeMagazine _x;} forEach (magazines _unit);
      };
      [_obj] spawn {
          params ["_obj"];
          _timer = LIFE_SETTINGS(getNumber,"lootbox_timer");
          uisleep (_timer*60);
          deleteVehicle _obj
      };
      Alles anzeigen

      Schritt 2:

      core/functions/fn_fetchDeadGear.sqf nach (Zeile 14)

      Code
      private _dropWeapons = LIFE_SETTINGS(getNumber,"drop_weapons_onDeath");

      das einfügen

      Code
      private _dropItems = LIFE_SETTINGS(getNumber,"drop_iitems_onDeath");

      und die Zeilen 38 - 64 (die hier)

      Code
      if !(primaryWeapon _unit isEqualTo "") then {_primitems = primaryWeaponItems _unit;};
      if !(handgunWeapon _unit isEqualTo "") then {_handgunItems = handgunItems _unit;};
      
      if !(_uniform isEqualTo "") then {{_uitems pushBack _x; true} count (uniformItems _unit);};
      if !(_vest isEqualTo "") then {{_vitems pushBack _x; true} count (vestItems _unit);};
      if !(_backpack isEqualTo "") then {{_bitems pushBack _x; true} count (backPackItems _unit);};
      
      if !(primaryWeapon _unit isEqualTo "") then {
          _unit selectWeapon (primaryWeapon _unit);
          if !(currentMagazine _unit isEqualTo "") then {
              _magazines pushBack currentMagazine _unit;
          };
      };
      
      if !(secondaryWeapon _unit isEqualTo "") then {
          _unit selectWeapon (secondaryWeapon _unit);
          if !(currentMagazine _unit isEqualTo "") then {
              _magazines pushBack currentMagazine _unit;
          };
      };
      
      if !(handgunWeapon _unit isEqualTo "") then {
          _unit selectWeapon (handgunWeapon _unit);
          if !(currentMagazine _unit isEqualTo "") then {
              _magazines pushBack currentMagazine _unit;
          };
      };
      Alles anzeigen

      hiermit ersetzen:

      Code
      if (_dropItems isEqualTo 0) then {
          if !(primaryWeapon _unit isEqualTo "") then {_primitems = primaryWeaponItems _unit;};
          if !(handgunWeapon _unit isEqualTo "") then {_handgunItems = handgunItems _unit;};
      
          if !(_uniform isEqualTo "") then {{_uitems pushBack _x; true} count (uniformItems _unit);};
          if !(_vest isEqualTo "") then {{_vitems pushBack _x; true} count (vestItems _unit);};
          if !(_backpack isEqualTo "") then {{_bitems pushBack _x; true} count (backPackItems _unit);};
      
          if !(primaryWeapon _unit isEqualTo "") then {
              _unit selectWeapon (primaryWeapon _unit);
              if !(currentMagazine _unit isEqualTo "") then {
                  _magazines pushBack currentMagazine _unit;
              };
          };
      
          if !(secondaryWeapon _unit isEqualTo "") then {
              _unit selectWeapon (secondaryWeapon _unit);
              if !(currentMagazine _unit isEqualTo "") then {
                  _magazines pushBack currentMagazine _unit;
              };
          };
      
          if !(handgunWeapon _unit isEqualTo "") then {
              _unit selectWeapon (handgunWeapon _unit);
              if !(currentMagazine _unit isEqualTo "") then {
                  _magazines pushBack currentMagazine _unit;
              };
          };
      };
      Alles anzeigen

      Schritt 3:

      In /core/functions/fn_keyHandler.sqf sucht ihr den case 20, also den T Key und erweitert

      Code
      _list = ((ASLtoATL (getPosASL player)) nearEntities [["Box_IND_Grenades_F","B_supplyCrate_F"], 2.5]) select 0;

      mit ,"Land_PlasticCase_01_small_F, damit es am Ende so aussieht:

      Code
       _list = ((ASLtoATL (getPosASL player)) nearEntities [["Box_IND_Grenades_F","B_supplyCrate_F","Land_PlasticCase_01_small_F"], 2.5]) select 0;


      Schritt 4:

      In der /core/vehicle/fn_openInventory.sqf erweitert ihr die Zeile (bei mir Zeile 12)

      Code
      if (isNull _vehicle || !(_vehicle isKindOf "Car" || _vehicle isKindOf "Air" || _vehicle isKindOf "Ship" || _vehicle isKindOf "Box_IND_Grenades_F" || _vehicle isKindOf "B_supplyCrate_F")) exitWith {}; //Either a null or invalid vehicle type.

      mit || _vehicle isKindOf "Land_PlasticCase_01_small_F",, so dass sie so aussieht:

      Code
      if (isNull _vehicle || !(_vehicle isKindOf "Car" || _vehicle isKindOf "Air" || _vehicle isKindOf "Ship" || _vehicle isKindOf "Box_IND_Grenades_F" || _vehicle isKindOf "B_supplyCrate_F" || _vehicle isKindOf "Land_PlasticCase_01_small_F")) exitWith {}; //Either a null or invalid vehicle type.


      Sucht (Zeile 22)

      Code
      ctrlSetText[3501,format [(localize "STR_MISC_VehStorage")+ " - %1",getText(configFile >> "CfgVehicles" >> (typeOf _vehicle) >> "displayName")]];

      und ersetzt sie mit:

      Code
      if (_vehicle isKindOf "Land_PlasticCase_01_small_F") then {
          ctrlSetText[3501,format [(localize "STR_MISC_VehStorage")+ " - %1",(_vehicle getVariable ["BoxName",""])]];
      } else {
          ctrlSetText[3501,format [(localize "STR_MISC_VehStorage")+ " - %1",getText(configFile >> "CfgVehicles" >> (typeOf _vehicle) >> "displayName    ")]];
      };

      damit es dann so aussieht:

      Code
      if (_vehicle isKindOf "Box_IND_Grenades_F" || _vehicle isKindOf "B_supplyCrate_F") then {
          ctrlSetText[3501,format [(localize "STR_MISC_HouseStorage")+ " - %1",getText(configFile >> "CfgVehicles" >> (typeOf _vehicle) >> "displayName")]];
      } else {
      if (_vehicle isKindOf "Land_PlasticCase_01_small_F") then {
          ctrlSetText[3501,format [(localize "STR_MISC_VehStorage")+ " - %1",(_vehicle getVariable ["BoxName",""])]];
      } else {
          ctrlSetText[3501,format [(localize "STR_MISC_VehStorage")+ " - %1",getText(configFile >> "CfgVehicles" >> (typeOf _vehicle) >> "displayName")]];
          };
      };

      am Ende der Datei (bei mir Zeile 55) sucht ihr noch

      Code
      if ((_this isKindOf "Car") || (_this isKindOf "Air") || (_this isKindOf "Ship")) then {

      erweiter sie mit || (_this isKindOf "Land_PlasticCase_01_small_F", damit sie so aussieht:

      Code
      if ((_this isKindOf "Car") || (_this isKindOf "Air") || (_this isKindOf "Ship") || (_this isKindOf "Land_PlasticCase_01_small_F")) then {

      Schritt 5:

      In /core/vehicle/fn_vehInventory müsst ihr die Zeile 46

      Code
      _tInv lbAdd format ["[%1] - %2",_val,localize _name];

      hierzu ändern

      Code
      _tInv lbAdd format ["[%1] - %2",[_val] call life_fnc_numberText,localize _name];

      Schritt 6:

      Im Pfad /config/Config_Vehicles nach der class B_supplyCrate_F einfügen

      Code
      class Land_PlasticCase_01_small_F {
          vItemSpace = 300;
          conditions = "";
          price = -1;
          textures[] = {};
      };

      Schritt 7:

      Jetzt müssen wir für das Geld noch ein vItem anlegen, damit es auch in die Lootbox geht. Dazu in /config/Config_vItems.hpp nach der class storagebig ein Gelditem anlegen

      Code
      class money {
          variable = "money";
          displayName = "STR_Item_Money";
          weight = 0;
          buyPrice = -1;
          sellPrice = -1;
          illegal = false;
          edible = -1;
          icon = "icons\ico_money.paa";
      };


      Schritt 8:

      in config/Config_Master.hpp nach drop_weapons_onDeath tragt ihr folgende Sachen ein:

      Code
      drop_restricted_vitems[]={"apple","peach","tbacon","donuts"}; // V-Items die bei Tod NICHT in die Box gelegt werden sollen und somit gelöscht werden.
      lootbox_timer = 3; // //Zeit, bis die Kiste weg ist. Kann durch ändern der 3 (= 3 Minuten) geändert werden.
      drop_iitems_onDeath = true; // true = I-Items (Waffen etc.) werden in die Box gelegt, false = I-Items werden nicht in die Box gelegt.

      Schritt 9:

      In der /stringtable.xml nun noch den Namen hinterlegen, am besten im <Package name="Life_Items">

      Code
      <Key ID="STR_Item_Money">
          <Original>Geld</Original>
      </Key>

      Geld ist hier übrigens nicht die schönste Wahl, € oder $ oder was auch immer ihr habt ist da besser.


      Erweiterung:

      Wenn ihr das "TakeAll" Script nutzt ersetzt bitte eure fn_vehTakeAllItem.sqf hiermit. Aber eben nur wenn ihr es wirklich bei euch drin habt, sonst geht nachher noch alles schief :)

      Code
      #include "..\..\script_macros.hpp"
      #define ctrlSelData(ctrl) (lbData[##ctrl,(lbCurSel ##ctrl)])
      /*
          File: fn_vehTakeAllItem.sqf
          Author: Killerknight
          
          Description:
          Take all (max items) from selected and add it to the players inventory
      */
      private["_ctrl","_num","_index","_data","_old","_value","_weight","_diff"];
      
      if(!DarfEinzahlen) exitWith {[localize "STR_NOTF_Trunk_Store_Stop",true,"fast","orange","Error"]spawn Life_fnc_msg;};
      if(DarfEinzahlen) then {
          DarfEinzahlen = false;
          [] spawn {
              sleep 1;
              DarfEinzahlen = true;
          };
      };
      
      disableSerialization;
      _num = 0;
      if(isNull Life_trunk_vehicle OR !alive Life_trunk_vehicle) exitWith {[localize "STR_MISC_VehDoesntExist",true,"fast","orange","Error"]spawn Life_fnc_msg;};
      if(!alive player) exitwith {closeDialog 0;};
      
      if((lbCurSel 3502) == -1) exitWith {[localize "STR_Global_NoSelection",true,"fast","orange","Error"]spawn Life_fnc_msg;};
      _ctrl = ctrlSelData(3502);
      _config = configName (missionConfigFile >> "VirtualItems" >> _ctrl);
      
      if (_ctrl isEqualTo "money") then {
          _num = ((((Life_trunk_vehicle getVariable "Trunk") select 0) select (lbCurSel 3502)) select 1);
      } else {
          _num2 = getNumber(missionConfigFile >> "VirtualItems" >> _config  >> "weight");
          _num1 = (floor (((Life_maxWeight) - (Life_carryWeight)) / _num2));
          _num = if (_num1 <= ((((Life_trunk_vehicle getVariable "Trunk") select 0) select (lbCurSel 3502)) select 1)) then {_num1}else{((((Life_trunk_vehicle getVariable "Trunk") select 0) select (lbCurSel 3502)) select 1)};
      };
      if(_num < 1) exitWith {["Du hast kein Platz dafür.",true,"fast","orange","Error"]spawn Life_fnc_msg;};
      
      _index = [_ctrl,((Life_trunk_vehicle getVariable "Trunk") select 0)] call TON_fnc_index;
      _data = (Life_trunk_vehicle getVariable "Trunk") select 0;
      _old = Life_trunk_vehicle getVariable "Trunk";
      if(_index == -1) exitWith {};
      _value = _data select _index select 1;
      if(_num > _value) exitWith {[localize "STR_MISC_NotEnough",true,"fast","orange","Error"]spawn Life_fnc_msg;};
      _num = [_ctrl,_num,Life_carryWeight,Life_maxWeight] call Life_fnc_calWeightDiff;
      if(_num isEqualTo 0) exitWith {[localize "STR_NOTF_InvFull",true,"fast","orange","Error"]spawn Life_fnc_msg;};
      _weight = ([_ctrl] call Life_fnc_itemWeight) * _num;
      if(_ctrl isEqualTo "money") then {
          if !(_num isEqualType 0) then {_num = parseNumber (_num);diag_log format ["parsenumber: %1",_num]; };
          if(_num isEqualTo _value) then {
              _data set[_index,-1];
              _data = _data - [-1];
          } else {
              _data set[_index,[_ctrl,(_value - _num)]];
          };
          CASH = CASH + _num;
          [0] call SOCK_fnc_updatePartial;
          Life_trunk_vehicle setVariable["Trunk",[_data,(_old select 1) - _weight],true];
          [Life_trunk_vehicle] call Life_fnc_vehInventory;
          
      } else {
          if([true,_ctrl,_num] call Life_fnc_handleInv) then {
              if(_num isEqualTo _value) then {
                  _data set[_index,-1];
                  _data = _data - [-1];
              } else {
                  _data set[_index,[_ctrl,(_value - _num)]];
              };
              Life_trunk_vehicle setVariable["Trunk",[_data,(_old select 1) - _weight],true];
              [Life_trunk_vehicle] call Life_fnc_vehInventory;
          } else {
              [localize "STR_NOTF_InvFull",true,"fast","orange","Error"]spawn Life_fnc_msg;
          };
      };
      Alles anzeigen

      Wenn ihr nun alles richtig gemacht habt so funktioniert dann auch alles bei euch :) Sollte es doch nicht so sein gerne hier nach Hilfe fragen.

      Wer im übrigen eine Standart Altis Life 5.0 hat kann sogar alle Dateien aus dem Anhang einfach in seine Mission ersetzen. Für alle anderen sind sie aber zum Abgleich auch sehr gut zu nutzen.

      Dateien

      TUT - Lootboxen.rar 21,68 kB – 397 Downloads

      6 Mal editiert, zuletzt von Alice Kingsleigh (9. Juli 2018 um 03:55)

    • Risk
      Kenner
      Reaktionen
      193
      Trophäen
      11
      Beiträge
      573
      • 23. Juni 2018 um 08:36
      • #2

      da wart ihr schneller :D hatte auch eins fertig aufm Rechner:D

      mfg Risk

      https://www.twitch.tv/theriskarma

    • AvirexDE
      Meister
      Reaktionen
      784
      Beiträge
      1.917
      Dateien
      1
      Bilder
      39
      • 23. Juni 2018 um 09:36
      • #3

      Was passiert wenn man in einem Fahrzeug getötet wird ?

      ●●●▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄●●●

      ▀ Freundliche Grüße ▀

      giphy.gif

      ●●●▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄●●●

    • Julian
      Nerd
      Reaktionen
      76
      Trophäen
      9
      Beiträge
      820
      • 23. Juni 2018 um 10:55
      • #4
      Zitat von Avirex

      Was passiert wenn man in einem Fahrzeug getötet wird ?

      Wäre mal interessant zu wissen weil wenn ich jemanden mit der sportlimo überrolle und auf einmal in meinem Gesicht ne kiste spawnt und ich blowe wäre ungünstig...

      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
      • 23. Juni 2018 um 10:56
      • #5

      Du könntest einfach abfragen ob er in einem Fahrzeug am hocken ist. Wenn true dann einfach auf die x oder y Koordinate bisschen was drauf hauen damit es nicht direkt bei dem spieler spawnt.

      mfg Risk

      https://www.twitch.tv/theriskarma

    • Risk
      Kenner
      Reaktionen
      193
      Trophäen
      11
      Beiträge
      573
      • 23. Juni 2018 um 11:12
      • #6
      Code
      //Box spawnen
      if((vehicle player != player))then {
          private _xPos select 0;
          private _yPos select 0;
          private _zPos select 0;
          _xPos = _xPos + 2;
          private _Box = "Land_MetalCase_01_small_F" createVehicle [_xPos,_yPos,_zPos];
      } else {
          private _Box = "Land_MetalCase_01_small_F" createVehicle _Pos;
      };

      Hab mal was hingesaut. Ka obs geht einfach mal testen :D

      mfg Risk

      https://www.twitch.tv/theriskarma

    • Alice Kingsleigh
      Profi
      Reaktionen
      329
      Trophäen
      8
      Beiträge
      1.141
      • 23. Juni 2018 um 16:11
      • #7

      Das haben wir nicht probiert, aber die Kiste spawnt ein Stück vor einem. Und lieber Risk um niemanden zu verwirren solltest du evtl. noch drauf hinweisen, dass in deinem Beispiel eine andere Kiste verwendet wird, die entsprechend angepasst werden muss :) Ich werde mal testen ob es im Auto spawnt und das Auto kaputt macht oder sowas, falls ja werd ich den Codeschnipsel von Risk mal einbauen und das austesten und euch die überarbeitete Version reinhauen.

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 23. Juni 2018 um 18:32
      • #8

      in version 5 wird man aus dem fahrzeug geworfen wenn man stirbt nur so am rande

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    • Julian
      Nerd
      Reaktionen
      76
      Trophäen
      9
      Beiträge
      820
      • 23. Juni 2018 um 19:13
      • #9
      Zitat von moeck

      in version 5 wird man aus dem fahrzeug geworfen wenn man stirbt nur so am rande

      Kann man die Kiste so einbauen das man da durch fahren kann .??

      Mit freundlichen Grüßen,

      Julian


      Bitte erst Denken und dann Fragen


      Hier lesen: das Heilige Buch der Arma3 Scripter

    • Jonas2K
      Anfänger
      Reaktionen
      4
      Trophäen
      8
      Beiträge
      90
      • 23. Juni 2018 um 19:37
      • #10

      ich glaube nicht. Das würde nur mit

      _this enableSimulation false;

      gehen und damit würde sich dann kein Script ausführen lassen

    • Marius1773
      Profi
      Reaktionen
      369
      Trophäen
      9
      Beiträge
      962
      • 23. Juni 2018 um 20:07
      • #11

      https://community.bistudio.com/wiki/disableCollisionWith

      Windows Server :love:

      Das Heilige Buch der Arma 3 Scripter, die Arma 3 Scripter Bibel: https://community.bistudio.com/wiki/Category:Scripting_Commands

    • AvirexDE
      Meister
      Reaktionen
      784
      Beiträge
      1.917
      Dateien
      1
      Bilder
      39
      • 23. Juni 2018 um 21:07
      • #12

      Mhm ich habe das grade mal ausprobiert. An sich eine gute Idee.

      Nur mir gefällt nicht das mit dem Geld. Kann man das nicht auch als I-Inventar Item speichern, sobald man es ins Inventar zieht bekommt man das Geld ?

      ●●●▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄●●●

      ▀ Freundliche Grüße ▀

      giphy.gif

      ●●●▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄●●●

    • Julian
      Nerd
      Reaktionen
      76
      Trophäen
      9
      Beiträge
      820
      • 23. Juni 2018 um 21:17
      • #13
      Zitat von Avirex

      Mhm ich habe das grade mal ausprobiert. An sich eine gute Idee.

      Nur mir gefällt nicht das mit dem Geld. Kann man das nicht auch als I-Inventar Item speichern, sobald man es ins Inventar zieht bekommt man das Geld ?

      Kann man auf Items variablen Legen ? wenn ja müsste es ja klappen

      Wenn es ein Geld Item gibt was auch so aussieht wie Geld :O

      Wenn ja Abfragen ob es im Inventar ist dann daraus löschen und Geld hinzufügen

      Mit freundlichen Grüßen,

      Julian


      Bitte erst Denken und dann Fragen


      Hier lesen: das Heilige Buch der Arma3 Scripter

    • Alice Kingsleigh
      Profi
      Reaktionen
      329
      Trophäen
      8
      Beiträge
      1.141
      • 23. Juni 2018 um 21:30
      • #14

      Schau mal in die original fn_dropItem.sqf. Da wird das Ding ja zum I-Inventar um es dann optisch zu spawnen auf den Boden wenn ich jetzt nicht ganz falsch liege.

      Genau sagen kann ich es aber nicht Avirex, haben es jetzt gemacht wie im Kaufscript.

    • Alice Kingsleigh
      Profi
      Reaktionen
      329
      Trophäen
      8
      Beiträge
      1.141
      • 23. Juni 2018 um 23:59
      • #15

      UPDATE
      Okay ein sehr kleines Miniupdate :D Hatte beim Anlegen des V-Items bei displayName = "STR_Item_Money"; das Semikolon vergessen ;) Hat trotzdem funktioniert, die Logs haben aber gemeckert :) Ist im Tutorial korrigiert.

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 24. Juni 2018 um 12:05
      • #16

      AvirexDE was hindert Dich das zu ändern? Es gibt ein I-Item das aussieht wie Geld ^^ (Land_Money_F) und klar kann man das dann auch in die Kiste legen und als Variable den Betrag drauflegen. Wie Alice Kingsleigh schon geschrieben hat haben wir uns an dem orientiert was wir im Video von Armaservices gesehen haben.

      Da es sich hier um ein Tutorial und kein gekauftes Script handelt kann man das nach seinen Wünschen abändern, solange man weiß was man tut :evil:8o

      Gruß,

      moeck

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    • TheFireRunner Felix
      Fortgeschrittener
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      333
      Dateien
      3
      Bilder
      9
      • 24. Juni 2018 um 17:09
      • #17

      Bei dem Kofferraum der Kiste sind keine Z-Items :huh:

      ( ̄o ̄) . z Z

    • moeck
      Erleuchteter
      Reaktionen
      632
      Trophäen
      9
      Beiträge
      3.160
      Bilder
      9
      • 24. Juni 2018 um 17:14
      • #18

      Moin,

      füge mal bitte in Zeile 44 das folgende ein und schicke dann mal das clientlog

      Code
      diag_log str(_trunk);

      Gruß,

      moeck

      Signatur? Was ist eine Signatur? Kann man das essen?

      Bitte beachten: Ich gebe keinen Support über private Nachrichten!


      Ganz wichtig: [Leitfaden] Wie frage Ich richtig um Hilfe?

      Nicht zu vergessen [Tutorial/Selbst-Test] Sollte ich einen Life Server eröffnen ?

    • anonop
      Schüler
      Reaktionen
      18
      Trophäen
      9
      Beiträge
      106
      • 24. Juni 2018 um 19:32
      • #19

      Bei mir ist ebenfalls kein Z inventar drin ...

    • TheFireRunner Felix
      Fortgeschrittener
      Reaktionen
      27
      Trophäen
      9
      Beiträge
      333
      Dateien
      3
      Bilder
      9
      • 24. Juni 2018 um 19:43
      • #20
      Zitat von moeck

      füge mal bitte in Zeile 44 das folgende ein und schicke dann mal das clientlog

      In welche Datei? :D

      ( ̄o ̄) . z Z

      Einmal editiert, zuletzt von TheFireRunner Felix (24. Juni 2018 um 19:56)

    Registrieren oder Einloggen

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

    Registrieren

    Benutzer online in diesem Thema

    • 2 Besucher

    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™