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: 21 Mai 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

    Spieler Inventar verdoppelt nach revive

    • SelfTanoa
    • 17. März 2017 um 11:01
    • Geschlossen
    • Erledigt
    • SelfTanoa
      Schüler
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      87
      • 17. März 2017 um 11:01
      • #1

      moin habe das problem das nach einem revive das spieler inventar verdoppelt wird bzw das inventar des revivten spielers danach nochmal auf dem boden liegt

      kennt das wer

    • Shinji
      Profi
      Reaktionen
      576
      Trophäen
      10
      Beiträge
      778
      • 17. März 2017 um 11:46
      • #2

      onPlayerKilled.sqf

      Code
      _handle = [_unit] spawn life_fnc_dropItems;
      waitUntil {scriptDone _handle};

      Wichtige Funktion. Die dropt die Items und setzt die Variablen im Namespace auf 0.

      Mal reinschauen ob alles klappt, nötigenfalls in die RPT`s schauen ob was fehlt oder sogar beide Scripts hier posten.

      Software Entwickler -
      Präzises Rätselraten, basierend auf unzuverlässigen Daten und fragwürdigem Wissen der Auftraggeber.

    • SelfTanoa
      Schüler
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      87
      • 18. März 2017 um 19:13
      • #3

      verste ich das richtig?

      du möchtest das ich [_unit] call life_fnc_dropItems;

      in

      1. _handle = [_unit] spawn life_fnc_dropItems;
      2. waitUntil {scriptDone _handle};

      änder

    • PoweredByte
      Amateur
      Reaktionen
      36
      Trophäen
      11
      Beiträge
      261
      • 18. März 2017 um 19:16
      • #4

      einfach

      waitUntil {scriptDone _handle};

      unter

      _handle = [_unit] spawn life_fnc_dropItems;

      einfügen :) .

    • SelfTanoa
      Schüler
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      87
      • 18. März 2017 um 19:21
      • #5

      es gibt aber nur [_unit] spawn life_fnc_dropItems;

      also doch in

      1. _handle = [_unit] spawn life_fnc_dropItems;
      2. waitUntil {scriptDone _handle};

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 18. März 2017 um 20:02
      • #6

      onplayerkilled.sqf

      Zeile 126 müsste es so standard stehen

      Code
      _handle = [_unit] spawn life_fnc_dropItems;
      waitUntil {scriptDone _handle};

      Was für eine Version hast du oder wenn du es gar nicht raffst schick deine "onplayerkilled" rein

    • SelfTanoa
      Schüler
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      87
      • 18. März 2017 um 20:50
      • #7

      also in 5.0 sry falls ich das nicht sagte sieht es so aus

      Spoiler anzeigen
      Code
      #include "..\..\script_macros.hpp"
      /*
          File: fn_onPlayerKilled.sqf
          Author: Bryan "Tonic" Boardwine
          Description:
          When the player dies collect various information about that player
          and pull up the death dialog / camera functionality.
      */
      params [
          ["_unit",objNull,[objNull]],
          ["_killer",objNull,[objNull]]
      ];
      disableSerialization;
      
      if  !((vehicle _unit) isEqualTo _unit) then {
          UnAssignVehicle _unit;
          _unit action ["getOut", vehicle _unit];
          _unit setPosATL [(getPosATL _unit select 0) + 3, (getPosATL _unit select 1) + 1, 0];
      };
      
      //Set some vars
      _unit setVariable ["Revive",true,true];
      _unit setVariable ["name",profileName,true]; //Set my name so they can say my name.
      _unit setVariable ["restrained",false,true];
      _unit setVariable ["Escorting",false,true];
      _unit setVariable ["transporting",false,true];
      _unit setVariable ["playerSurrender",false,true];
      _unit setVariable ["steam64id",(getPlayerUID player),true]; //Set the UID.
      
      //Setup our camera view
      life_deathCamera  = "CAMERA" camCreate (getPosATL _unit);
      showCinemaBorder true;
      life_deathCamera cameraEffect ["Internal","Back"];
      createDialog "DeathScreen";
      life_deathCamera camSetTarget _unit;
      life_deathCamera camSetRelPos [0,3.5,4.5];
      life_deathCamera camSetFOV .5;
      life_deathCamera camSetFocus [50,0];
      life_deathCamera camCommit 0;
      
      (findDisplay 7300) displaySetEventHandler ["KeyDown","if ((_this select 1) isEqualTo 1) then {true}"]; //Block the ESC menu
      
      //Create a thread for something?
      _unit spawn {
          private ["_maxTime","_RespawnBtn","_Timer"];
          disableSerialization;
          _RespawnBtn = ((findDisplay 7300) displayCtrl 7302);
          _Timer = ((findDisplay 7300) displayCtrl 7301);
      
              if (LIFE_SETTINGS(getNumber,"respawn_timer") < 5) then {
                  _maxTime = time + 5;
              } else {
                  _maxTime = time + LIFE_SETTINGS(getNumber,"respawn_timer");
              };
          _RespawnBtn ctrlEnable false;
          waitUntil {_Timer ctrlSetText format [localize "STR_Medic_Respawn",[(_maxTime - time),"MM:SS"] call BIS_fnc_secondsToString];
          round(_maxTime - time) <= 0 || isNull _this};
          _RespawnBtn ctrlEnable true;
          _Timer ctrlSetText localize "STR_Medic_Respawn_2";
      };
      
      _unit spawn {
          private ["_requestBtn","_requestTime"];
          disableSerialization;
          _requestBtn = ((findDisplay 7300) displayCtrl 7303);
          _requestBtn ctrlEnable false;
          _requestTime = time + 5;
          waitUntil {round(_requestTime - time) <= 0 || isNull _this};
          _requestBtn ctrlEnable true;
      };
      
      [] spawn life_fnc_deathScreen;
      
      //Create a thread to follow with some what precision view of the corpse.
      [_unit] spawn {
          private ["_unit"];
          _unit = _this select 0;
          waitUntil {if (speed _unit isEqualTo 0) exitWith {true}; life_deathCamera camSetTarget _unit; life_deathCamera camSetRelPos [0,3.5,4.5]; life_deathCamera camCommit 0;};
      };
      
      //Make the killer wanted
      if (!isNull _killer && {!(_killer isEqualTo _unit)} && {!(side _killer isEqualTo west)} && {alive _killer}) then {
          if (vehicle _killer isKindOf "LandVehicle") then {
      
              if (life_HC_isActive) then {
                  [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life];
              } else {
                  [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["life_fnc_wantedAdd",RSERV];
              };
      
              //Get rid of this if you don't want automatic vehicle license removal.
              if (!local _killer) then {
                  [2] remoteExecCall ["life_fnc_removeLicenses",_killer];
              };
          } else {
      
              if (life_HC_isActive) then {
                  [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life];
              } else {
                  [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["life_fnc_wantedAdd",RSERV];
              };
      
              if (!local _killer) then {
                  [3] remoteExecCall ["life_fnc_removeLicenses",_killer];
              };
          };
      };
      
      life_save_gear = [player] call life_fnc_fetchDeadGear;
      
      if (LIFE_SETTINGS(getNumber,"drop_weapons_onDeath") isEqualTo 0) then {
          _unit removeWeapon (primaryWeapon _unit);
          _unit removeWeapon (handgunWeapon _unit);
          _unit removeWeapon (secondaryWeapon _unit);
      };
      
      //Killed by cop stuff...
      if (side _killer isEqualTo west && !(playerSide isEqualTo west)) then {
          life_copRecieve = _killer;
          //Did I rob the federal reserve?
          if (!life_use_atm && {CASH > 0}) then {
              [format [localize "STR_Cop_RobberDead",[CASH] call life_fnc_numberText]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
              CASH = 0;
          };
      };
      
      if (!isNull _killer && {!(_killer isEqualTo _unit)}) then {
          life_removeWanted = true;
      };
      
      [_unit] call life_fnc_dropItems;
      
      life_action_inUse = false;
      life_hunger = 100;
      life_thirst = 100;
      life_carryWeight = 0;
      CASH = 0;
      life_is_alive = false;
      
      [] call life_fnc_hudUpdate; //Get our HUD updated.
      [player,life_settings_enableSidechannel,playerSide] remoteExecCall ["TON_fnc_manageSC",RSERV];
      
      [0] call SOCK_fnc_updatePartial;
      [3] call SOCK_fnc_updatePartial;
      if (playerSide isEqualTo civilian) then {
          [4] call SOCK_fnc_updatePartial;
      };
      Alles anzeigen

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 18. März 2017 um 20:53
      • #8

      Probier es jetzt mal

      Code
      #include "..\..\script_macros.hpp"
      /*
       File: fn_onPlayerKilled.sqf
       Author: Bryan "Tonic" Boardwine
       Description:
       When the player dies collect various information about that player
       and pull up the death dialog / camera functionality.
      */
      params [
       ["_unit",objNull,[objNull]],
       ["_killer",objNull,[objNull]]
      ];
      disableSerialization;
      
      if !((vehicle _unit) isEqualTo _unit) then {
       UnAssignVehicle _unit;
       _unit action ["getOut", vehicle _unit];
       _unit setPosATL [(getPosATL _unit select 0) + 3, (getPosATL _unit select 1) + 1, 0];
      };
      
      //Set some vars
      _unit setVariable ["Revive",true,true];
      _unit setVariable ["name",profileName,true]; //Set my name so they can say my name.
      _unit setVariable ["restrained",false,true];
      _unit setVariable ["Escorting",false,true];
      _unit setVariable ["transporting",false,true];
      _unit setVariable ["playerSurrender",false,true];
      _unit setVariable ["steam64id",(getPlayerUID player),true]; //Set the UID.
      
      //Setup our camera view
      life_deathCamera = "CAMERA" camCreate (getPosATL _unit);
      showCinemaBorder true;
      life_deathCamera cameraEffect ["Internal","Back"];
      createDialog "DeathScreen";
      life_deathCamera camSetTarget _unit;
      life_deathCamera camSetRelPos [0,3.5,4.5];
      life_deathCamera camSetFOV .5;
      life_deathCamera camSetFocus [50,0];
      life_deathCamera camCommit 0;
      
      (findDisplay 7300) displaySetEventHandler ["KeyDown","if ((_this select 1) isEqualTo 1) then {true}"]; //Block the ESC menu
      
      //Create a thread for something?
      _unit spawn {
       private ["_maxTime","_RespawnBtn","_Timer"];
       disableSerialization;
       _RespawnBtn = ((findDisplay 7300) displayCtrl 7302);
       _Timer = ((findDisplay 7300) displayCtrl 7301);
      
       if (LIFE_SETTINGS(getNumber,"respawn_timer") < 5) then {
       _maxTime = time + 5;
       } else {
       _maxTime = time + LIFE_SETTINGS(getNumber,"respawn_timer");
       };
       _RespawnBtn ctrlEnable false;
       waitUntil {_Timer ctrlSetText format [localize "STR_Medic_Respawn",[(_maxTime - time),"MM:SS"] call BIS_fnc_secondsToString];
       round(_maxTime - time) <= 0 || isNull _this};
       _RespawnBtn ctrlEnable true;
       _Timer ctrlSetText localize "STR_Medic_Respawn_2";
      };
      
      _unit spawn {
       private ["_requestBtn","_requestTime"];
       disableSerialization;
       _requestBtn = ((findDisplay 7300) displayCtrl 7303);
       _requestBtn ctrlEnable false;
       _requestTime = time + 5;
       waitUntil {round(_requestTime - time) <= 0 || isNull _this};
       _requestBtn ctrlEnable true;
      };
      
      [] spawn life_fnc_deathScreen;
      
      //Create a thread to follow with some what precision view of the corpse.
      [_unit] spawn {
       private ["_unit"];
       _unit = _this select 0;
       waitUntil {if (speed _unit isEqualTo 0) exitWith {true}; life_deathCamera camSetTarget _unit; life_deathCamera camSetRelPos [0,3.5,4.5]; life_deathCamera camCommit 0;};
      };
      
      //Make the killer wanted
      if (!isNull _killer && {!(_killer isEqualTo _unit)} && {!(side _killer isEqualTo west)} && {alive _killer}) then {
       if (vehicle _killer isKindOf "LandVehicle") then {
      
       if (life_HC_isActive) then {
       [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life];
       } else {
       [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["life_fnc_wantedAdd",RSERV];
       };
      
       //Get rid of this if you don't want automatic vehicle license removal.
       if (!local _killer) then {
       [2] remoteExecCall ["life_fnc_removeLicenses",_killer];
       };
       } else {
      
       if (life_HC_isActive) then {
       [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life];
       } else {
       [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["life_fnc_wantedAdd",RSERV];
       };
      
       if (!local _killer) then {
       [3] remoteExecCall ["life_fnc_removeLicenses",_killer];
       };
       };
      };
      
      life_save_gear = [player] call life_fnc_fetchDeadGear;
      
      if (LIFE_SETTINGS(getNumber,"drop_weapons_onDeath") isEqualTo 0) then {
       _unit removeWeapon (primaryWeapon _unit);
       _unit removeWeapon (handgunWeapon _unit);
       _unit removeWeapon (secondaryWeapon _unit);
      };
      
      //Killed by cop stuff...
      if (side _killer isEqualTo west && !(playerSide isEqualTo west)) then {
       life_copRecieve = _killer;
       //Did I rob the federal reserve?
       if (!life_use_atm && {CASH > 0}) then {
       [format [localize "STR_Cop_RobberDead",[CASH] call life_fnc_numberText]] remoteExecCall ["life_fnc_broadcast",RCLIENT];
       CASH = 0;
       };
      };
      
      if (!isNull _killer && {!(_killer isEqualTo _unit)}) then {
       life_removeWanted = true;
      };
      
      _handle = [_unit] spawn life_fnc_dropItems;
      waitUntil {scriptDone _handle};
      
      life_action_inUse = false;
      life_hunger = 100;
      life_thirst = 100;
      life_carryWeight = 0;
      CASH = 0;
      life_is_alive = false;
      
      [] call life_fnc_hudUpdate; //Get our HUD updated.
      [player,life_settings_enableSidechannel,playerSide] remoteExecCall ["TON_fnc_manageSC",RSERV];
      
      [0] call SOCK_fnc_updatePartial;
      [3] call SOCK_fnc_updatePartial;
      if (playerSide isEqualTo civilian) then {
       [4] call SOCK_fnc_updatePartial;
      };
      Alles anzeigen
    • SelfTanoa
      Schüler
      Reaktionen
      2
      Trophäen
      9
      Beiträge
      87
      • 18. März 2017 um 22:13
      • #9

      klappt leider nicht inventar nach wie vor verdoppelt

    Registrieren oder Einloggen

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

    Registrieren

    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™