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
Sa: 17 Januar 2026
  • Anmelden oder registrieren
  • Suche
Alles
  • Alles
  • 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. Mitglieder
    3. Saturin78

    Beiträge von Saturin78

    • Medic (Independent) kann Uniformen nicht anziehen

      • Saturin78
      • 14. März 2016 um 11:28

      Hallo,

      ich habe mir da eine Sanitäter und eine Notarzt Uniform runter geladen. Diese Funktionierten auch beim alten Server (AL 3.1.4.8 SealDrop). Aber nun kann ich dem Medic nur die Uniformen mit den Klassen U_I_xxx anziehen.
      Die Skins gehören aber auf Notarzt "U_C_WorkerCoveralls" und Sanitäter "U_C_Scientist"


      Muß man das irgendwie freischalten, dass man als Independent auch andere Uniformen anziehen kann? Macht sonst ja irgendwie keinen Sinn, dass man Skins nur für die Uniformen bekommt. Verwende nun AL 4.0!


      MfG


      Saturin78

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 11:07

      Super, genau das war es. Ohman wieder mal ein Komma am falschen Platz und nichts geht wie es soll.
      Vielen Dank für die Hilfe, irgendwann sihet man einfach nichtmehr an was es liegt, da ist dann ein weiteres paar Augen Hilfreich.

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 09:10

      Achso :) Danke.

      Das kenne ich aber schon. Ist ja nun eigentlich auch soweit ja alles ersetzt. Habe nurnoch ein generelles Problem, dass sich die Cop Fahrzeuge in die Garage tun kann und wieder abrufen mit Blaulicht, aber mit dem Medic Fahrzeugen geht es wenn ich die kaufe, aber sobald ich diese in die Garage packe und wieder raus hole, geht das Blaulicht etc nimmer.

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 08:50

      Wie meinst du das? Welche Quellen? Sorry stehe auf dem Schlauch.

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 07:38

      Da der Beitrag sonst zu lang ist, hier noch die letzten Dateien.

      die fn_medicLights.sqf

      Spoiler anzeigen


      /*
      File: fn_copLights.sqf
      Author: mindstorm, modified by Adanteh
      Link: http://forums.bistudio.com/showthread.php…s-and-underglow

      Description:
      Adds the light effect to cop vehicles, specifically the offroad.
      */
      Private ["_vehicle","_lightRed","_lightBlue","_lightleft","_lightright","_leftRed"];
      _vehicle = _this select 0;

      if(isNil "_vehicle" OR isNull _vehicle OR !(_vehicle getVariable "lights")) exitWith {};
      _lightRed = [0.1, 0.1, 20];
      _lightBlue = [0.1, 0.1, 20];


      _lightleft = "#lightpoint" createVehicle getpos _vehicle;
      sleep 0.2;
      _lightleft setLightColor _lightBlue;
      _lightleft setLightBrightness 0.2;
      _lightleft setLightAmbient [0.1,0.1,1];


      switch (typeOf _vehicle) do
      {
      case "C_Hatchback_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.6, 2, -0.95]];
      };

      case "C_Hatchback_01_sport_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.6, 2, -0.95]];
      };

      case "B_Heli_Light_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "B_Heli_Transport_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.5, 0.0, 0.96]];
      };

      case "I_Heli_light_03_unarmed_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "I_MRAP_03_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "B_MRAP_01_hmg_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, -1.9, 0.7]];
      };

      case "C_Offroad_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "C_Van_01_box_F":
      {
      _lightleft lightAttachObject [_vehicle, [-1.00,-0.30, 1.400]];
      };

      case "B_MRAP_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, -1.9, 0.7]];
      };

      case "C_SUV_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37,-1.2,0.42]];
      };
      };


      _lightleft setLightAttenuation [0.181, 0, 1000, 130];
      _lightleft setLightIntensity 10;
      _lightleft setLightFlareSize 0.38;
      _lightleft setLightFlareMaxDistance 150;
      _lightleft setLightUseFlare true;


      _lightright = "#lightpoint" createVehicle getpos _vehicle;
      sleep 0.2;
      _lightright setLightColor _lightBlue;
      _lightright setLightBrightness 0.2;
      _lightright setLightAmbient [0.1,0.1,1];


      switch (typeOf _vehicle) do
      {
      case "C_Hatchback_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.6, 2, -0.95]];
      };

      case "C_Hatchback_01_sport_F":
      {
      _lightright lightAttachObject [_vehicle, [0.6, 2, -0.95]];
      };

      case "B_Heli_Light_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "B_Heli_Transport_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.5, 0.0, 0.96]];
      };

      case "I_Heli_light_03_unarmed_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "I_MRAP_03_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "B_MRAP_01_hmg_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, -1.9, 0.7]];
      };

      case "C_Offroad_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "C_Van_01_box_F":
      {
      _lightright lightAttachObject [_vehicle, [1.00,-0.30, 1.400]];
      };

      case "B_MRAP_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, -1.9, 0.7]];
      };

      case "C_SUV_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37,-1.2,0.42]];
      };
      };

      _lightright setLightAttenuation [0.181, 0, 1000, 130];
      _lightright setLightIntensity 10;
      _lightright setLightFlareSize 0.38;
      _lightright setLightFlareMaxDistance 150;
      _lightright setLightUseFlare true;


      //ARE YOU ALL HAPPY?!?!?!?!?!?!?!?!?%#?@WGD?TGD?BN?ZDHBFD?GA
      _lightleft setLightDayLight true;
      _lightright setLightDayLight true;


      _leftRed = true;
      while{ (alive _vehicle)} do
      {
      if(!(_vehicle getVariable "lights")) exitWith {};
      if(_leftRed) then
      {
      _leftRed = false;
      _lightright setLightBrightness 0.0;
      sleep 0.05;
      _lightleft setLightBrightness 6;
      }
      else
      {
      _leftRed = true;
      _lightleft setLightBrightness 0.0;
      sleep 0.05;
      _lightright setLightBrightness 6;
      };
      sleep (_this select 1);
      };
      deleteVehicle _lightleft;
      deleteVehicle _lightright;

      Und als letztes noch die fn_copLights.sqf

      Spoiler anzeigen


      /*
      File: fn_copLights.sqf
      Author: mindstorm, modified by Adanteh
      Link: http://forums.bistudio.com/showthread.php…s-and-underglow

      Description:
      Adds the light effect to cop vehicles, specifically the offroad.
      */
      Private ["_vehicle","_lightRed","_lightBlue","_lightleft","_lightright","_leftRed"];
      _vehicle = _this select 0;

      if(isNil "_vehicle" OR isNull _vehicle OR !(_vehicle getVariable "lights")) exitWith {};
      _lightRed = [20, 0.1, 0.1];
      _lightBlue = [0.1, 0.1, 20];


      _lightleft = "#lightpoint" createVehicle getpos _vehicle;
      sleep 0.2;
      _lightleft setLightColor _lightBlue;
      _lightleft setLightBrightness 0.2;
      _lightleft setLightAmbient [0.1,0.1,1];


      switch (typeOf _vehicle) do
      {
      case "C_Hatchback_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.6, 2, -0.95]];
      };

      case "C_Hatchback_01_sport_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.6, 2, -0.95]];
      };

      case "B_Heli_Light_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "B_Heli_Transport_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.5, 0.0, 0.96]];
      };

      case "I_Heli_light_03_unarmed_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "I_MRAP_03_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "B_MRAP_01_hmg_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, -1.9, 0.7]];
      };

      case "C_Offroad_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, 0.0, 0.56]];
      };

      case "C_Van_01_box_F":
      {
      _lightleft lightAttachObject [_vehicle, [-1.00,-0.30, 1.400]];
      };

      case "B_MRAP_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37, -1.9, 0.7]];
      };

      case "C_SUV_01_F":
      {
      _lightleft lightAttachObject [_vehicle, [-0.37,-1.2,0.42]];
      };
      };


      _lightleft setLightAttenuation [0.181, 0, 1000, 130];
      _lightleft setLightIntensity 10;
      _lightleft setLightFlareSize 0.38;
      _lightleft setLightFlareMaxDistance 150;
      _lightleft setLightUseFlare true;


      _lightright = "#lightpoint" createVehicle getpos _vehicle;
      sleep 0.2;
      _lightright setLightColor _lightBlue;
      _lightright setLightBrightness 0.2;
      _lightright setLightAmbient [0.1,0.1,1];


      switch (typeOf _vehicle) do
      {
      case "C_Hatchback_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.6, 2, -0.95]];
      };

      case "C_Hatchback_01_sport_F":
      {
      _lightright lightAttachObject [_vehicle, [0.6, 2, -0.95]];
      };

      case "B_Heli_Light_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "B_Heli_Transport_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.5, 0.0, 0.96]];
      };

      case "I_Heli_light_03_unarmed_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "I_MRAP_03_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "B_MRAP_01_hmg_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, -1.9, 0.7]];
      };

      case "C_Offroad_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, 0.0, 0.56]];
      };

      case "C_Van_01_box_F":
      {
      _lightright lightAttachObject [_vehicle, [1.00,-0.30, 1.400]];
      };

      case "B_MRAP_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37, -1.9, 0.7]];
      };

      case "C_SUV_01_F":
      {
      _lightright lightAttachObject [_vehicle, [0.37,-1.2,0.42]];
      };
      };

      _lightright setLightAttenuation [0.181, 0, 1000, 130];
      _lightright setLightIntensity 10;
      _lightright setLightFlareSize 0.38;
      _lightright setLightFlareMaxDistance 150;
      _lightright setLightUseFlare true;


      //ARE YOU ALL HAPPY?!?!?!?!?!?!?!?!?%#?@WGD?TGD?BN?ZDHBFD?GA
      _lightleft setLightDayLight true;
      _lightright setLightDayLight true;


      _leftRed = true;
      while{ (alive _vehicle)} do
      {
      if(!(_vehicle getVariable "lights")) exitWith {};
      if(_leftRed) then
      {
      _leftRed = false;
      _lightright setLightBrightness 0.0;
      sleep 0.05;
      _lightleft setLightBrightness 6;
      }
      else
      {
      _leftRed = true;
      _lightleft setLightBrightness 0.0;
      sleep 0.05;
      _lightright setLightBrightness 6;
      };
      sleep (_this select 1);
      };
      deleteVehicle _lightleft;
      deleteVehicle _lightright;

      Vielleicht sieht ja jemand den Fehler.

      Ich habe in der fn_spawnVehicle.sqf die Zeilen 108 bis 115 von:

      Spoiler anzeigen


      if(EQUAL(SEL(_vInfo,1),"cop") && (SEL(_vInfo,2)) in
      ["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"])
      then {
      [[_vehicle,"cop_offroad",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };


      if(EQUAL(SEL(_vInfo,1),"med") &&
      EQUAL(SEL(_vInfo,2)),["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"])
      then {
      [[_vehicle,"med_offroad",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };

      zudem geändert.

      Spoiler anzeigen


      if(EQUAL(SEL(_vInfo,1),"cop") && (SEL(_vInfo,2)) in ["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"]) then {
      [[_vehicle,"cop_offroad",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };


      if(EQUAL(SEL(_vInfo,1),"med") && (SEL(_vInfo,2)),in ["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"]) then {
      [[_vehicle,"med_offroad",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };

      Weil das seltsame ist, dass es bei der Polizei geht, aber bei den Medics nicht.

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 07:34

      Also wenn ich ein Fahrzeug kaufe, hat es nun alles und das Blaulicht geht, aber wenn ich es in die Garage packe geht es nimmer. Verwende Altis Life 4.0.

      Das ist meine fn_spawnVehicle.sqf

      Spoiler anzeigen


      #include "\life_server\script_macros.hpp"
      /*
      File: fn_spawnVehicle.sqf
      Author: Bryan "Tonic" Boardwine


      Description:
      Sends the query request to the database, if an array is returned then it creates
      the vehicle if it's not in use or dead.
      */
      private["_vid","_sp","_pid","_query","_sql","_vehicle","_nearVehicles","_name","_side","_tickTime","_dir","_servIndex"];
      _vid = [_this,0,-1,[0]] call BIS_fnc_param;
      _pid = [_this,1,"",[""]] call BIS_fnc_param;
      _sp = [_this,2,[],[[],""]] call BIS_fnc_param;
      _unit = [_this,3,ObjNull,[ObjNull]] call BIS_fnc_param;
      _price = [_this,4,0,[0]] call BIS_fnc_param;
      _dir = [_this,5,0,[0]] call BIS_fnc_param;
      _unit_return = _unit;
      _name = name _unit;
      _side = side _unit;
      _unit = owner _unit;


      if(EQUAL(_vid,-1) OR EQUAL(_pid,"")) exitWith {};
      if(_vid in serv_sv_use) exitWith {};
      serv_sv_use pushBack _vid;
      _servIndex = serv_sv_use find _vid;


      _query = format["vehicleInfo:%1:%2",_vid,_pid];


      waitUntil{sleep (random 0.3); !DB_Async_Active};
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call DB_fnc_asyncCall;


      if((EQUAL(EXTDB_SETTINGS("MySQL_Query"),1))) then {
      ["diag_log",[
      "------------- Vehicle Query Request -------------",
      format["QUERY: %1",_query],
      format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)],
      format["Result: %1",_queryResult],
      "-------------------------------------------------"
      ]] call TON_fnc_logIt;
      };


      if(EQUAL(typeName _queryResult,typeName "")) exitWith {};


      _vInfo = _queryResult;
      if(isNil "_vInfo") exitWith {serv_sv_use deleteAt _servIndex;};
      if(EQUAL(count _vInfo,0)) exitWith {serv_sv_use deleteAt _servIndex;};


      if(EQUAL(SEL(_vInfo,5),0)) exitWith {
      serv_sv_use deleteAt _servIndex;
      [[1,format[(localize "STR_Garage_SQLError_Destroyed"),_vInfo select 2]],"life_fnc_broadcast",_unit,false,true] call life_fnc_MP;
      };


      if(EQUAL(SEL(_vInfo,6),1)) exitWith {
      serv_sv_use deleteAt _servIndex;
      [[1,format[(localize "STR_Garage_SQLError_Active"),_vInfo select 2]],"life_fnc_broadcast",_unit,false,true] call life_fnc_MP;
      };


      if!(EQUAL(typeName _sp,typeName "")) then {
      _nearVehicles = nearestObjects[_sp,["Car","Air","Ship"],10];
      } else {
      _nearVehicles = [];
      };


      if(count _nearVehicles > 0) exitWith {
      serv_sv_use deleteAt _servIndex;
      [[_price,_unit_return],"life_fnc_garageRefund",_unit,false] call life_fnc_MP;
      [[1,(localize "STR_Garage_SpawnPointError")],"life_fnc_broadcast",_unit,false,true] call life_fnc_MP;
      };


      _query = format["vehicleUpdateActive:1:%1:%2",_pid,_vid];


      waitUntil {!DB_Async_Active};
      [_query,false] spawn DB_fnc_asyncCall;
      if(typeName _sp == "STRING") then {
      _vehicle = createVehicle[(_vInfo select 2),[0,0,999],[],0,"NONE"];
      waitUntil {!isNil "_vehicle" && {!isNull _vehicle}};
      _vehicle allowDamage false;
      _hs = nearestObjects[getMarkerPos _sp,["Land_Hospital_side2_F"],50] select 0;
      _vehicle setPosATL (_hs modelToWorld [-0.4,-4,12.65]);
      sleep 0.6;
      } else {
      _vehicle = createVehicle [(_vInfo select 2),_sp,[],0,"NONE"];
      waitUntil {!isNil "_vehicle" && {!isNull _vehicle}};
      _vehicle allowDamage false;
      _vehicle setPos _sp;
      _vehicle setVectorUp (surfaceNormal _sp);
      _vehicle setDir _dir;
      };
      _vehicle allowDamage true;
      //Send keys over the network.
      [[_vehicle],"life_fnc_addVehicle2Chain",_unit,false] call life_fnc_MP;
      [_pid,_side,_vehicle,1] call TON_fnc_keyManagement;
      _vehicle lock 2;
      //Reskin the vehicle
      [[_vehicle,_vInfo select 8],"life_fnc_colorVehicle",nil,false] call life_fnc_MP;
      _vehicle setVariable["vehicle_info_owners",[[_pid,_name]],true];
      _vehicle setVariable["dbInfo",[(_vInfo select 4),_vInfo select 7]];
      //_vehicle addEventHandler["Killed","_this spawn TON_fnc_vehicleDead"]; //Obsolete function?
      [_vehicle] call life_fnc_clearVehicleAmmo;


      //Sets of animations


      if(EQUAL(SEL(_vInfo,1),"civ") && EQUAL(SEL(_vInfo,2),"B_Heli_Light_01_F") && !(EQUAL(SEL(_vInfo,8),13))) then {
      [[_vehicle,"civ_littlebird",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };


      if(EQUAL(SEL(_vInfo,1),"cop") && (SEL(_vInfo,2)) in ["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"]) then {
      [[_vehicle,"cop_offroad",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };


      if(EQUAL(SEL(_vInfo,1),"med") && EQUAL(SEL(_vInfo,2)),["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"]) then {
      [[_vehicle,"med_offroad",true],"life_fnc_vehicleAnimate",_unit,false] call life_fnc_MP;
      };
      [[1,"Your vehicle is ready!"],"life_fnc_broadcast",_unit,false,true] call life_fnc_MP;
      serv_sv_use deleteAt _servIndex;

      Meine fn_keyHandler.sqf

      Spoiler anzeigen


      #include <macro.h>
      /*
      File: fn_keyHandler.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Main key handler for event 'keyDown'
      */
      private ["_handled","_shift","_alt","_code","_ctrl","_alt","_ctrlKey","_veh","_locked","_interactionKey","_mapKey","_interruptionKeys"];
      _ctrl = SEL(_this,0);
      _code = SEL(_this,1);
      _shift = SEL(_this,2);
      _ctrlKey = SEL(_this,3);
      _alt = SEL(_this,4);
      _speed = speed cursorTarget;
      _handled = false;


      _interactionKey = if((EQUAL(count (actionKeys "User10"),0))) then {219} else {(actionKeys "User10") select 0};
      _mapKey = SEL(actionKeys "ShowMap",0);
      //hint str _code;
      _interruptionKeys = [17,30,31,32]; //A,S,W,D


      //Vault handling...
      if((_code in (actionKeys "GetOver") _code in (actionKeys "salute")) && {(player GVAR ["restrained",false])}) exitWith {
      true;
      };


      if(life_action_inUse) exitWith {
      if(!life_interrupted && _code in _interruptionKeys) then {life_interrupted = true;};
      _handled;
      };


      //Hotfix for Interaction key not being able to be bound on some operation systems.
      if(!(EQUAL(count (actionKeys "User10"),0)) && {(inputAction "User10" > 0)}) exitWith {
      //Interaction key (default is Left Windows, can be mapped via Controls -> Custom -> User Action 10)
      if(!life_action_inUse) then {
      [] spawn {
      private "_handle";
      _handle = [] spawn life_fnc_actionKeyHandler;
      waitUntil {scriptDone _handle};
      life_action_inUse = false;
      };
      };
      true;
      };


      switch (_code) do {
      //Space key for Jumping
      case 57: {
      if(isNil "jumpActionTime") then {jumpActionTime = 0;};
      if(_shift && {!(EQUAL(animationState player,"AovrPercMrunSrasWrflDf"))} && {isTouchingGround player} && {EQUAL(stance player,"STAND")} && {speed player > 2} && {!life_is_arrested} && {SEL((velocity player),2) < 2.5} && {time - jumpActionTime > 1.5}) then {
      jumpActionTime = time; //Update the time.
      [player,true] spawn life_fnc_jumpFnc; //Local execution
      [[player,false],"life_fnc_jumpFnc",nil,FALSE] call life_fnc_MP; //Global execution
      _handled = true;
      };
      };

      //Map Key
      case _mapKey: {
      switch (playerSide) do {
      case west: {if(!visibleMap) then {[] spawn life_fnc_copMarkers;}};
      case independent: {if(!visibleMap) then {[] spawn life_fnc_medicMarkers;}};
      };
      };

      //Holster / recall weapon.
      case 35: {
      if(_shift && !_ctrlKey && !(EQUAL(currentWeapon player,""))) then {
      life_curWep_h = currentWeapon player;
      player action ["SwitchWeapon", player, player, 100];
      player switchCamera cameraView;
      };

      if(!_shift && _ctrlKey && !isNil "life_curWep_h" && {!(EQUAL(life_curWep_h,""))}) then {
      if(life_curWep_h in [RIFLE,LAUNCHER,PISTOL]) then {
      player selectWeapon life_curWep_h;
      };
      };
      };

      //Interaction key (default is Left Windows, can be mapped via Controls -> Custom -> User Action 10)
      case _interactionKey: {
      if(!life_action_inUse) then {
      [] spawn {
      private "_handle";
      _handle = [] spawn life_fnc_actionKeyHandler;
      waitUntil {scriptDone _handle};
      life_action_inUse = false;
      };
      };
      };

      //Restraining or robbing (Shift + R)
      case 19:
      {
      if(_shift) then {_handled = true;};
      if(_shift && playerSide == west && !isNull cursorTarget && cursorTarget isKindOf "Man" && (isPlayer cursorTarget) && (side cursorTarget == civilian) && alive cursorTarget && cursorTarget distance player < 3.5 && !(cursorTarget GVAR "Escorting") && !(cursorTarget GVAR "restrained") && speed cursorTarget < 1) then
      {
      [] call life_fnc_restrainAction;
      };

      //Robbing
      if(_shift && playerSide == civilian && !isNull cursorTarget && cursorTarget isKindOf "Man" && isPlayer cursorTarget && alive cursorTarget && cursorTarget distance player < 4 && speed cursorTarget < 1) then
      {
      if((animationState cursorTarget) != "Incapacitated" && (currentWeapon player == RIFLE OR currentWeapon player == PISTOL) && currentWeapon player != "" && !life_knockout && !(player GVAR["restrained",false]) && !life_istazed && !(player GVAR["surrender",false])) then
      {
      [cursorTarget] spawn life_fnc_knockoutAction;
      };
      _handled = true;
      };
      };

      //Shift + G (surrender)
      case 34:
      {
      if(_shift) then {_handled = true;};


      if (_shift) then
      {
      if (vehicle player == player && !(player GVAR ["restrained", false]) && (animationState player) != "Incapacitated" && !life_istazed) then
      {
      if (player GVAR ["surrender", false]) then
      {
      player SVAR ["surrender", false, true];
      } else
      {
      [] spawn life_fnc_surrender;
      };
      };
      };
      };

      //^ - Spitzhacke
      case 41:
      {
      if((!life_action_inUse) && (vehicle player == player) ) then
      { [] spawn {
      private "_handle";
      _handle = [] spawn life_fnc_pickAxeUse;
      waitUntil {scriptDone _handle};
      };
      };
      };


      //F1 für Ohrstöpsel
      case 59:
      {
      if(_shift) then {
      switch (player getVariable["Earplugs",0]) do {
      case 0: {hintSilent "Der Sound ist nun 90% leiser! "; 1 fadeSound 0.1; player setVariable ["Earplugs", 10]; };
      case 10: {hintSilent "Der Sound ist nun 60%leiser!"; 1 fadeSound 0.4; player setVariable ["Earplugs", 40]; };
      case 40: {hintSilent "Der Sound ist nun 30%leiser!"; 1 fadeSound 0.7; player setVariable ["Earplugs", 70]; };
      case 70: {hintSilent "Der Sound ist nun wieder normal!"; 1 fadeSound 1; player setVariable ["Earplugs", 0]; };
      };
      };
      };

      // Ä Schranken öffnen
      case 40:
      {
      if (!_shift && !_alt && !_ctrlKey && (playerSide in [west,independent,civilian]) && (vehicle player != player)) then {
      [] call life_fnc_copOpener;
      };
      };

      //T Key (Trunk)
      case 20: {
      if(!_alt && !_ctrlKey && !life_is_processing) then {
      if(vehicle player != player && alive vehicle player) then {
      if((vehicle player) in life_vehicles) then {
      [vehicle player] call life_fnc_openInventory;
      };
      } else {
      private "_list";
      _list = ["landVehicle","Air","Ship","House_F"];
      if(KINDOF_ARRAY(cursorTarget,_list) && {player distance cursorTarget < 7} && {vehicle player == player} && {alive cursorTarget}) then {
      if(cursorTarget in life_vehicles OR {!(cursorTarget GVAR ["locked",true])}) then {
      [cursorTarget] call life_fnc_openInventory;
      };
      };
      };
      };
      };

      //L Key?
      case 38: {
      //If cop run checks for turning lights on.
      if(_shift && playerSide in [west,independent]) then {
      if(vehicle player != player && (typeOf vehicle player) in [
      "C_Hatchback_01_F",
      "C_Hatchback_01_sport_F",
      "B_Heli_Light_01_F",
      "B_Heli_Transport_01_F",
      "I_Heli_light_03_unarmed_F",
      "I_MRAP_03_F",
      "B_MRAP_01_hmg_F",
      "C_Van_01_box_F",
      "C_Offroad_01_F",
      "B_MRAP_01_F",
      "C_SUV_01_F"
      ]) then {
      if(!isNil {vehicle player GVAR "lights"}) then {
      if(playerSide == west) then {
      [vehicle player] call life_fnc_sirenLights;
      } else {
      [vehicle player] call life_fnc_medicSirenLights;
      };
      _handled = true;
      };
      };
      };

      if(!_alt && !_ctrlKey) then { [] call life_fnc_radar; };
      };

      //Z Player Menu
      case 21: {
      if(!_alt && !_ctrlKey && !dialog && !life_is_processing) then {
      [] call life_fnc_p_openMenu;
      };
      };

      //F Key
      case 33: {
      if(playerSide in [west,independent] && {vehicle player != player} && {!life_siren_active} && {((driver vehicle player) == player)}) then {
      [] spawn {
      life_siren_active = true;
      sleep 4.7;
      life_siren_active = false;
      };

      _veh = vehicle player;
      if(isNil {_veh GVAR "siren"}) then {_veh SVAR ["siren",false,true];};
      if((_veh GVAR "siren")) then {
      titleText [localize "STR_MISC_SirensOFF","PLAIN"];
      _veh SVAR ["siren",false,true];
      } else {
      titleText [localize "STR_MISC_SirensON","PLAIN"];
      _veh SVAR ["siren",true,true];
      if(playerSide == west) then {
      [[_veh],"life_fnc_copSiren",nil,true] call life_fnc_MP;
      } else {
      //I do not have a custom sound for and I really don't want to go digging for one, when you have a sound uncomment and change medicSiren.sqf in the medical folder.
      [[_veh],"life_fnc_medicSiren",nil,true] call life_fnc_MP;
      };
      };
      };
      };

      //Ö Key
      case 39: {
      if(playerSide in [west] && {vehicle player != player} && {!life_siren_active} && {((driver vehicle player) == player)}) then {
      [] spawn {
      life_siren_active = true;
      sleep 4.7;
      life_siren_active = false;
      };

      _veh = vehicle player;
      if(isNil {_veh GVAR "siren2"}) then {_veh SVAR ["siren2",false,true];};
      if((_veh GVAR "siren2")) then {
      titleText [localize "STR_MISC_SirensOFF2","PLAIN"];
      _veh SVAR ["siren2",false,true];
      } else {
      titleText [localize "STR_MISC_SirensON2","PLAIN"];
      _veh SVAR ["siren2",true,true];
      if(playerSide == west) then {
      [[_veh],"life_fnc_copSiren2",nil,true] call life_fnc_MP;
      } else {
      //I do not have a custom sound for and I really don't want to go digging for one, when you have a sound uncomment and change medicSiren.sqf in the medical folder.
      //[[_veh],"life_fnc_medicSiren",nil,true] call life_fnc_MP;
      };
      };
      };
      };


      //EMP Konsole - K
      case 37:
      {
      if (!_shift && !_alt && !_ctrlKey && (playerSide == west) && (vehicle player != player && (typeOf vehicle player) in ["B_Heli_Light_01_F","I_Heli_light_03_unarmed_F"])) then
      {
      [] call life_fnc_openEmpMenu; [_this] call life_fnc_isEmpOperator;
      };
      };

      //U Key
      case 22:
      {
      if(!_alt && !_ctrlKey) then {
      if(vehicle player == player) then {
      _veh = cursorTarget;
      } else {
      _veh = vehicle player;
      };
      if(_veh isKindOf "House_F" && playerSide == civilian) then {
      if(_veh in life_vehicles && player distance _veh < then {
      _door = [_veh] call life_fnc_nearestDoor;
      if(_door == 0) exitWith {hint "Du bist nicht in der Nähe einer Tür!"};
      _locked = _veh getVariable [format["bis_disabled_Door_%1",_door],0];
      if(_locked == 0) then {
      _veh setVariable[format["bis_disabled_Door_%1",_door],1,true];
      _veh animate [format["door_%1_rot",_door],0];
      systemChat "Du hast das Fahrzeug abgeschlossen.";
      } else {
      _veh setVariable[format["bis_disabled_Door_%1",_door],0,true];
      _veh animate [format["door_%1_rot",_door],1];
      systemChat "Du hast die Tür aufgeschlossen.";
      };
      };
      } else {
      _locked = locked _veh;
      if(_veh in life_vehicles && player distance _veh < then {
      if(_locked == 2) then {
      if(local _veh) then {
      _veh lock 0;
      _veh animateDoor ["door_back_R",1];
      _veh animateDoor ["door_back_L",1];
      _veh animateDoor ['door_R',1];
      _veh animateDoor ['door_L',1];
      _veh animateDoor ['Door_rear',1];
      _veh animateDoor ['Door_LM',1];
      _veh animateDoor ['Door_RM',1];
      _veh animateDoor ['Door_LF',1];
      _veh animateDoor ['Door_RF',1];
      _veh animateDoor ['Door_LB',1];
      _veh animateDoor ['Door_RB',1];
      }else {
      [[_veh,0], "life_fnc_lockVehicle",_veh,false] spawn life_fnc_MP;
      _veh animateDoor ["door_back_R",1];
      _veh animateDoor ["door_back_L",1];
      _veh animateDoor ['door_R',1];
      _veh animateDoor ['door_L',1];
      _veh animateDoor ['Door_rear',1];
      _veh animateDoor ['Door_LM',1];
      _veh animateDoor ['Door_RM',1];
      _veh animateDoor ['Door_LF',1];
      _veh animateDoor ['Door_RF',1];
      _veh animateDoor ['Door_LB',1];
      _veh animateDoor ['Door_RB',1];
      };
      hint composeText [ image "icons\unlock.paa", " Fahrzeug aufgeschlossen" ];
      [[_veh],"life_fnc_UnLockCarSound",nil,true] spawn life_fnc_MP;
      } else {
      if(local _veh) then {
      _veh lock 2;
      _veh animateDoor ["door_back_R",0];
      _veh animateDoor ["door_back_L",0];
      _veh animateDoor ['door_R',0];
      _veh animateDoor ['door_L',0];
      _veh animateDoor ['Door_rear',0];
      _veh animateDoor ['Door_LM',0];
      _veh animateDoor ['Door_RM',0];
      _veh animateDoor ['Door_LF',0];
      _veh animateDoor ['Door_RF',0];
      _veh animateDoor ['Door_LB',0];
      _veh animateDoor ['Door_RB',0];
      } else {
      [[_veh,2], "life_fnc_lockVehicle",_veh,false] spawn life_fnc_MP;
      _veh animateDoor ["door_back_R",0];
      _veh animateDoor ["door_back_L",0];
      _veh animateDoor ['door_R',0];
      _veh animateDoor ['door_L',0];
      _veh animateDoor ['Door_rear',0];
      _veh animateDoor ['Door_LM',0];
      _veh animateDoor ['Door_RM',0];
      _veh animateDoor ['Door_LF',0];
      _veh animateDoor ['Door_RF',0];
      _veh animateDoor ['Door_LB',0];
      _veh animateDoor ['Door_RB',0];
      };
      hint composeText [ image "icons\lock.paa", " Fahrzeug abgeschlossen" ];
      [[_veh],"life_fnc_LockCarSound",nil,true] spawn life_fnc_MP;
      };
      };
      };
      };
      };
      };


      _handled;

      Meine fn_vehicleAnimate.sqf

      Spoiler anzeigen


      /*
      File: fn_vehicleAnimate.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Pass what you want to be animated.
      */
      private["_vehicle","_animate","_state"];
      _vehicle = [_this,0,Objnull,[Objnull]] call BIS_fnc_param;
      if(isnull _vehicle) exitwith {};
      _animate = [_this,1,"",["",[]]] call BIS_fnc_param;
      _preset = [_this,2,false,[false]] call BIS_fnc_param;


      if(!_preset) then
      {
      if(count _animate > 1) then
      {
      {
      _vehicle animate[_x select 0,_x select 1];
      } foreach _animate;
      }
      else
      {
      _vehicle animate[_animate select 0,_animate select 1];
      };
      }
      else
      {
      switch (_animate) do
      {
      case "civ_littlebird":
      {
      waitUntil {!isNil {_vehicle getVariable "Life_VEH_color"}};
      _vehicle animate ["addDoors",1];
      _vehicle animate ["addBenches",1];
      _vehicle animate ["addTread",0];
      _vehicle animate ["AddCivilian_hide",1];
      _vehicle lockCargo [2,true];
      _vehicle lockCargo [3,true];
      _vehicle lockCargo [4,true];
      _vehicle lockCargo [5,true];
      };

      case "service_truck":
      {
      //waitUntil{!isNil {_vehicle getVariable "color"}};
      _vehicle animate ["HideServices", 0];
      _vehicle animate ["HideDoor3", 1];
      };

      case "med_offroad":
      {
      if(typeOf _vehicle == "C_Offroad_01_F") then {
      waitUntil {!isNil {_vehicle getVariable "Life_VEH_color"}};
      };
      _vehicle animate ["HidePolice", 0];
      _vehicle animate ["HideBumper1", 0];
      _vehicle setVariable["lights",false,true];
      };

      case "cop_offroad":
      {
      if(typeOf _vehicle == "C_Offroad_01_F") then {
      waitUntil {!isNil {_vehicle getVariable "Life_VEH_color"}};
      };
      _vehicle animate ["HidePolice", 0];
      _vehicle animate ["HideBumper1", 0];
      _vehicle setVariable["lights",false,true];
      };
      };
      };

      Die fn_sirenLights.sqf

      Spoiler anzeigen


      #include <macro.h>
      /*
      File: fn_sirenLights.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Lets play a game! Can you guess what it does? I have faith in you, if you can't
      then you have failed me and therefor I lose all faith in humanity.. No pressure.
      */
      private["_vehicle"];
      _vehicle = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
      if(isNull _vehicle) exitWith {}; //Bad entry!
      if(!(typeOf _vehicle in ["C_Hatchback_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F","I_Heli_light_03_unarmed_F","I_MRAP_03_F","B_MRAP_01_hmg_F","C_Van_01_box_F","C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F"])) exitWith {}; //Last chance check to prevent something from defying humanity and creating a monster.


      _trueorfalse = _vehicle GVAR ["lights",FALSE];


      if(_trueorfalse) then {
      _vehicle SVAR ["lights",FALSE,TRUE];
      } else {
      _vehicle SVAR ["lights",TRUE,TRUE];
      [[_vehicle,0.22],"life_fnc_copLights",true,false] call life_fnc_MP;
      };

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 07:06

      Sodele, habs nun getestet. Türen sind nun als dran, danke.

      Aber der Blaulichtbalken ist immer weg.

      Und das Blaulicht geht nichtmehr. Habe den auch in der copligths, mediclights und keyhandler geändert.
      In dieser Datei life_server\Functions\Systems\fn_spawnVehicle habe ich den C Offroader nun auch eingefügt. Aber er spawnt nach der Garage immernoch ohne Blaulichtbalken auf dem Dach und ich kann das Blaulicht nimmer einschalten. :(

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 14. März 2016 um 06:30

      Ich nutze eigentlich den B_G_Offroader_01_F.

      Aso das sollte mit dem C_Offroader nicht so sein? Gleich mal testen.

      Danke.

    • Offroader mit Türen kaufen, aus Garage aber ohne Türen

      • Saturin78
      • 13. März 2016 um 21:28

      Hallo,

      ich habe noch ne Frage zu den Fahrzeugen. Ich kann al Medic oder Cop nen Offroader kaufen, dann haben die auch die Türen und den Blaulichtbalken auf dem Dach. Wenn ich die aber in die Garage packe und dann wieder raus hole sind die Blaulichtbalken weg, oder es fehlen die Türen. Habe ich da noch nen Fehler irgendwo drin?

      MfG

      Saturin78

    • Skin Buggy + Medic Air Spawn fehlt? Wo spawnt mein Heli

      • Saturin78
      • 13. März 2016 um 20:12

      Ich glaube ich hatte das gleiche Problem mit dem RTW, als ich den runtergeladen hatte. Weil der falsch rum beschriftet war, genau wie der DHL Skin:-) Du hast den Skin der Fahrerkabine auf dem Koffer und den Koffer Skin auf der Fahrerkabine. :) Einfach die 2 Dateien tauschen.

    • Vehicle Skins werden nicht angezeigt

      • Saturin78
      • 13. März 2016 um 16:08

      Du hast bei cop car shop die Reihenfolge falsch :)

      Du hast es so:

      • class cop_car {
      • vehicles[] = {
      • side = "cop";
      • { "B_Quadbike_01_F", 30000, "", { "life_coplevel", 1 } },
      • { "C_Offroad_01_F", 5000, ""},
      • { "C_SUV_01_F", 20000, "" },
      • { "C_Hatchback_01_F", 9500, ""},
      • { "C_Hatchback_01_sport_F", 40000, ""}
      • };

      Es sollte aber so sein:


      • class cop_car {
      • side = "cop";
        vehicles[] = {
      • { "B_Quadbike_01_F", 30000, "", { "life_coplevel", 1 } },
      • { "C_Offroad_01_F", 5000, ""},
      • { "C_SUV_01_F", 20000, "" },
      • { "C_Hatchback_01_F", 9500, ""},
      • { "C_Hatchback_01_sport_F", 40000, ""}
      • };
    • Vehicle Skins werden nicht angezeigt

      • Saturin78
      • 13. März 2016 um 14:14

      Der eine ist von den Zivilisten Gruppe und der andere von Blufor. Ist halt en unterschied zu welcher Klasse die gehören. Meine bei AL kannst beide nutzen, mußt aber die Skins richitg wählen. Weil du ja beide verwendest mußt auch beide mit Skins versehen genauso beim Van und glaub der Zamak ist auch so. Beim Hummingbird gibt es glaub auch mehrere Klassen.

      Funktionieren tun beide gleich.

    • Vehicle Skins werden nicht angezeigt

      • Saturin78
      • 13. März 2016 um 13:50

      Also wenn ich das richitg sehe, hast du alle Skins für med, cop oder reb drin. Das heißt dass die Auswahl auch nur bei Cop, med oder Reb Car Shops kommt. Außerdem mußt schauen dass du z.B. auch den richitgen Offroader in in den shops hast. es bringt nichts wenn du cden C_Offroader mit nem Skin versiehst und den B_Offroader drin hast. Das kannst nochmal schauen. Du hast z.B. den Skin für reb aud den C_Offroader gelegt und im Shop den B_Offroader drin. ;)

      Ich hänge dir mal meien Datei dran. Aber bei mir sind bis jetzt nur die Autos bearbeitet, die Heliskins hab ich noch vor mir. :-9

      Dateien

      Config_Vehicles.txt 39,78 kB – 260 Downloads
    • Fehler bei GPS Tracker einbau

      • Saturin78
      • 13. März 2016 um 08:18

      Hallo zusammen,

      ich bin nach diesem TUT vorgegangen [Tutorial] GPS Tracker für Fahrzeuge - [Tutorial] Altis Life 3.1.4.8 - Global gamer
      Würde es ja hier posten statt verlinken, aber dann gibt es sicher wieder Ärger.

      Jetzt hatte ich das auf meinem Server mit Altis 3.1.4.8 SealDrop drauf und es hat geklappt. Allerdings will es bei 4.0 nicht wirklich. Angeblich haben es aber andere auch bei 4.3 zum laufen gebracht. Ich vermute dass irgendwelche Variablen sich geändert haben. Aber bin mir nicht sicher. Glaub die _veh ist nun _vehicle. Habe beides getestet, hat nichts gebracht. Es kommt immer der Fehler auf dem Bild. Kaufen kann man den Tracker, aber nicht am Fahrzeug anbringen oder benutzen.

      Das ist meine Datei fn_gpstracker.sqf

      Spoiler anzeigen


      /*
      File: fn_gpsTracker.sqf
      Author: Poseidon

      Description: Attaches a gps tracker to selected vehicle
      */
      private["_unit"];
      _unit = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
      if(isNull _unit) exitWith {};
      if(!(_unit isKindOf "AllVehicles")) exitWith {hint "Du kannst den GPS Tracker hier nicht benutzen."};
      if(player distance _unit > 7) exitWith {hint "Du musst dich näher an das Fahrzeug stellen!"};
      if(!([false,"gpstracker",1] call life_fnc_handleInv)) exitWith {};
      closeDialog 0;


      life_action_inUse = true;
      player playMove "AinvPknlMstpSnonWnonDnon_medic_1";
      sleep 4;
      life_action_inUse = false;
      if(player distance _unit > 7) exitWith {titleText["Du bist nicht in der Nähe eines Fahrzeugs!","PLAIN"];};
      titleText["Du hast einen GPS Tracker an diesem Fahrzeug angebracht.","PLAIN"];


      [_unit] spawn {
      _veh = _this select 0;
      _markerName = format["%1_gpstracker",_veh];
      _marker = createMarkerLocal [_markerName, visiblePosition _veh];
      _marker setMarkerColorLocal "ColorRed";
      _marker setMarkerTypeLocal "Mil_dot";
      _marker setMarkerTextLocal "GPS Tracker "+getText(configFile >> "CfgVehicles" >> typeof _veh >> "displayName");
      _marker setMarkerPosLocal getPos _veh;
      while {true} do {
      if(not alive _veh) exitWith {deleteMarkerLocal _markerName;};
      _marker setMarkerPosLocal getPos _veh;
      sleep 0.5;
      };
      };

      Meine fn_useItem.sqf sieht so aus:

      Spoiler anzeigen


      #include <macro.h>
      /*
      File: fn_useItem.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Main function for item effects and functionality through the player menu.
      */
      private "_item";
      disableSerialization;
      if(EQUAL(lbCurSel 2005,-1)) exitWith {hint localize "STR_ISTR_SelectItemFirst";};
      _item = CONTROL_DATA(2005);


      switch (true) do {
      case (_item in ["waterBottle","coffee","redgull"]): {
      if(([false,_item,1] call life_fnc_handleInv)) then {
      life_thirst = 100;
      if(EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)) then {player setFatigue 0;};
      if(EQUAL(_item,"redgull") && {EQUAL(LIFE_SETTINGS(getNumber,"enable_fatigue"),1)}) then {
      [] spawn {
      life_redgull_effect = time;
      titleText[localize "STR_ISTR_RedGullEffect","PLAIN"];
      player enableFatigue false;
      waitUntil {!alive player OR ((time - life_redgull_effect) > (3 * 60))};
      player enableFatigue true;
      };
      };
      };
      };

      case (EQUAL(_item,"boltcutter")): {
      [cursorTarget] spawn life_fnc_boltcutter;
      closeDialog 0;
      };

      case (EQUAL(_item,"blastingcharge")): {
      player reveal fed_bank;
      (group player) reveal fed_bank;
      [cursorTarget] spawn life_fnc_blastingCharge;
      };

      case (EQUAL(_item,"defusekit")): {
      [cursorTarget] spawn life_fnc_defuseKit;
      };

      case (_item in ["storagesmall","storagebig"]): {
      [_item] call life_fnc_storageBox;
      };

      case (EQUAL(_item,"spikeStrip")): {
      if(!isNull life_spikestrip) exitWith {hint localize "STR_ISTR_SpikesDeployment"};
      if(([false,_item,1] call life_fnc_handleInv)) then {
      [] spawn life_fnc_spikeStrip;
      };
      };

      case (EQUAL(_item,"fuelFull")): {
      if(vehicle player != player) exitWith {hint localize "STR_ISTR_RefuelInVehicle"};
      [] spawn life_fnc_jerryRefuel;
      };

      case (EQUAL(_item,"lockpick")): {
      [] spawn life_fnc_lockpick;
      };

      case (_item in ["apple","rabbit","salema","ornate","mackerel","tuna","mullet","catshark","turtle","turtlesoup","donuts","tbacon","peach"]): {
      if(!(EQUAL(M_CONFIG(getNumber,"VirtualItems",_item,"edible"),-1))) then {
      if([false,_item,1] call life_fnc_handleInv) then {
      _val = M_CONFIG(getNumber,"VirtualItems",_item,"edible");
      _sum = life_hunger + _val;
      switch (true) do {
      case (_val < 0 && _sum < 1): {life_hunger = 5;}; //This adds the ability to set the entry edible to a negative value and decrease the hunger without death
      case (_sum > 100): {life_hunger = 100;};
      default {life_hunger = _sum;};
      };
      };
      };
      };


      case (EQUAL(_item,"pickaxe")): {
      [] spawn life_fnc_pickAxeUse;
      };

      case (EQUAL(_item,"gpstracker")): {
      [cursorTarget] spawn life_fnc_gpsTracker;
      };

      case (EQUAL(_item,"carC4")): {
      [cursorTarget] spawn life_fnc_carC4;
      };

      default {
      hint localize "STR_ISTR_NotUsable";
      };
      };

      [] call life_fnc_p_updateMenu;
      [] call life_fnc_hudUpdate;

      Vielleicht kann mir ja jemand helfen und hoffentlich werde ich nicht gleich gesteinigt, wegen dem Link. Im anderen Forum kann man nichtmal den Namen: NTech oder nativ posten, wird direkt als illegale Worte makiert. Weiß nicht was die für ein Problem haben.

      Bilder

      • 20160313074516_1.jpg
        • 146,05 kB
        • 1.920 × 1.080
        • 235
    • [Tutorial] Native-Gamer Spawnmenü + Hintergrundbild

      • Saturin78
      • 12. März 2016 um 15:53

      Irgendwie ist das ganze aber Auflösungs abhängig. Bei mir bei FullHD passt der Button. Bei einigen Spielern die ne kleinere Auflösung verwenden ist der Butten zu weit unten, so dass der Anklickbare Bereich irgendwo in der Karte ist.

      Habe ich da was falsch gemacht, oder ist das so normal.?

    • Spawn-Punkte verschwinden

      • Saturin78
      • 12. März 2016 um 11:11

      Lösung ist gefunden. Hier die funktionierende Datei fn_spawnPointCfg.sqf:

      Spoiler anzeigen


      #include <macro.h>
      /*
      File: fn_spawnPointCfg.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Master configuration for available spawn points depending on the units side.

      Return:
      [Spawn Marker,Spawn Name,Image Path]
      */
      private["_side","_return"];
      _side = [_this,0,civilian,[civilian]] call BIS_fnc_param;


      //Spawn Marker, Spawn Name, PathToImage
      switch (_side) do
      {
      case west:
      {
      _return = [ ["cop_spawn_1","Kavala HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["cop_spawn_2","Pyrgos HQ","\a3\ui_f\data\map\MapControl\fuelstation_ca.paa"],
      ["cop_spawn_3","Athira HQ","\a3\ui_f\data\map\GroupIcons\badge_rotate_0_gs.paa"],
      ["cop_spawn_4","Air HQ","\a3\ui_f\data\map\Markers\NATO\b_air.paa"],
      ["cop_spawn_5","HW Patrol","\a3\ui_f\data\map\GroupIcons\badge_rotate_0_gs.paa"]];
      };

      case civilian:
      {
      _return = [ ["slum_spawn_1","Slums","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      ];
      if(license_civ_einwohner && playerSide == civilian) then {
      _return = _return + [
      ["civ_spawn_1","Kavala","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_2","Pyrgos","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_3","Athira","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_4","Sofia","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      ];
      };
      if(license_civ_rebel && playerSide == civilian) then {
      _return = _return + [
      ["reb_spawn_1","Rebellen West","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["reb_spawn_2","Rebellen Ost","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["reb_spawn_3","Rebellen Ost","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["reb_spawn_4","Rebellen HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      ];
      };
      //Lizenz-Spawn
      /*if(license_civ_scorpions && playerSide == civilian) then {
      _return = _return + [
      ["don3_spawn_1","Scorpions HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      ];
      };*/
      //Donator-lvl Spawn
      if(FETCH_CONST(life_donator) == 3) then
      {
      _return = _return + [
      ["don3_spawn_1","Scorpions HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      ];
      };

      if(count life_houses > 0) then {
      {
      _pos = call compile format["%1",_x select 0];
      _house = nearestBuilding _pos;
      _houseName = getText(configFile >> "CfgVehicles" >> (typeOf _house) >> "displayName");

      _return pushBack [format["house_%1",_house getVariable "uid"],_houseName,"\a3\ui_f\data\map\MapControl\lighthouse_ca.paa"];
      } foreach life_houses;
      };
      };

      case independent: {
      _return = [ ["medic_spawn_1","Kavala Hospital","\a3\ui_f\data\map\MapControl\hospital_ca.paa"],
      ["medic_spawn_2","Athira Regional","\a3\ui_f\data\map\MapControl\hospital_ca.paa"],
      ["medic_spawn_3","Pygros Hospital","\a3\ui_f\data\map\MapControl\hospital_ca.paa"]];
      };
      };


      _return;

      einmal als Lizenz-abfrage für Scorpions und einmal als donator3 abfrage. geht beides.

      MfG

      Saturin78

    • Spawn-Punkte verschwinden

      • Saturin78
      • 11. März 2016 um 23:56

      Hallo zusammen,

      ich verwende das Altis Life 4.0. Da wollte ich gerne für Clans eigene Spawnpoints machen. Dazu wollte ich eigentlich die Donator-lvl verwenden. aber irgendwie geht das nicht, habe auch nur Infos gefunden, dass man das über nichtkaufbare lizensen machen soll. Dann habe ich das versucht, aber irgendwie verschwinden die Spawn-auswahlmöglichkeiten immer sobald ich eine Änderung an der fn_spawnPointCfg.sqf mache.

      Ich wollte z.B. dass man ohne Personalausweis (license_civ_einwohner) nur in den Slums spawnen kann. Den Personalausweis kann man dann in Kavalla kaufen. Ab da soll man in den Städten spawnen können. Mit der Rebellen Lizens sollte man zusätzlich in den Rebellen Lagern spawnen können. Und die Clans sollten über entweder die donator lvl oder über eine clan lizenz spawnen können. Hier hab ich mal meine fn_spawnPointCfg.sqf für die Lizensen.

      Spoiler anzeigen


      /*
      File: fn_spawnPointCfg.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Master configuration for available spawn points depending on the units side.

      Return:
      [Spawn Marker,Spawn Name,Image Path]
      */
      private["_side","_return"];
      _side = [_this,0,civilian,[civilian]] call BIS_fnc_param;


      //Spawn Marker, Spawn Name, PathToImage
      switch (_side) do
      {
      case west:
      {
      _return = [ ["cop_spawn_1","Kavala HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["cop_spawn_2","Pyrgos HQ","\a3\ui_f\data\map\MapControl\fuelstation_ca.paa"],
      ["cop_spawn_3","Athira HQ","\a3\ui_f\data\map\GroupIcons\badge_rotate_0_gs.paa"],
      ["cop_spawn_4","Air HQ","\a3\ui_f\data\map\Markers\NATO\b_air.paa"],
      ["cop_spawn_5","HW Patrol","\a3\ui_f\data\map\GroupIcons\badge_rotate_0_gs.paa"]];
      };

      case civilian:
      {
      if(!license_civ_einwohner && !license_civ_rebel && !license_civ_scorpions) then {
      _return = ["slum_spawn_1","Slums","\a3\ui_f\data\map\MapControl\watertower_ca.paa"];
      };

      if(license_civ_einwohner && !license_civ_rebel && !license_civ_scorpions) then {
      _return = pushBack [["civ_spawn_1","Kavala","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_2","Pyrgos","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_3","Athira","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_4","Sofia","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]];
      };

      if(license_civ_rebel) then {
      _return = pushBack [["reb_spawn_1","Rebellen West","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["reb_spawn_2","Rebellen Ost","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["reb_spawn_3","Rebellen Ost","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["reb_spawn_4","Rebellen HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]];
      };

      if(license_civ_scorpions) then {_return = pushBack ["don3_spawn_1","Scorpions HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"];};

      if(count life_houses > 0) then {
      {
      _pos = call compile format["%1",_x select 0];
      _house = nearestBuilding _pos;
      _houseName = getText(configFile >> "CfgVehicles" >> (typeOf _house) >> "displayName");

      _return pushBack [format["house_%1",_house getVariable "uid"],_houseName,"\a3\ui_f\data\map\MapControl\lighthouse_ca.paa"];
      } foreach life_houses;
      };
      };

      case independent: {
      _return = [ ["medic_spawn_1","Kavala Hospital","\a3\ui_f\data\map\MapControl\hospital_ca.paa"],
      ["medic_spawn_2","Athira Regional","\a3\ui_f\data\map\MapControl\hospital_ca.paa"],
      ["medic_spawn_3","Pygros Hospital","\a3\ui_f\data\map\MapControl\hospital_ca.paa"]];
      };
      };


      _return;

      Über die donator-lvl wäre mir aber lieber, wenn das ginge. Aber angeblich gibt es die ab Version 4.0 nichtmehr. Obwohl ich darüber die Fahrzeugshops gemacht habe die auch gehen. Also da steig ich nicht ganz durch. Das ist die Datei mit der es ohne Probleme geht zu spawnen, aber halt ohne die ganzen zusätzlichen Punkte.

      Spoiler anzeigen


      /*
      File: fn_spawnPointCfg.sqf
      Author: Bryan "Tonic" Boardwine

      Description:
      Master configuration for available spawn points depending on the units side.

      Return:
      [Spawn Marker,Spawn Name,Image Path]
      */
      private["_side","_return"];
      _side = [_this,0,civilian,[civilian]] call BIS_fnc_param;


      //Spawn Marker, Spawn Name, PathToImage
      switch (_side) do
      {
      case west:
      {
      _return = [
      ["cop_spawn_1","Kavala HQ","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["cop_spawn_2","Pyrgos HQ","\a3\ui_f\data\map\MapControl\fuelstation_ca.paa"],
      ["cop_spawn_3","Athira HQ","\a3\ui_f\data\map\GroupIcons\badge_rotate_0_gs.paa"],
      ["cop_spawn_4","Air HQ","\a3\ui_f\data\map\Markers\NATO\b_air.paa"],
      ["cop_spawn_5","HW Patrol","\a3\ui_f\data\map\GroupIcons\badge_rotate_0_gs.paa"]
      ];
      };

      case civilian:
      {
      _return = [
      ["civ_spawn_1","Kavala","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_2","Pyrgos","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_3","Athira","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["civ_spawn_4","Sofia","\a3\ui_f\data\map\MapControl\watertower_ca.paa"],
      ["don3_spawn_1","Sofia","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      ];

      if(count life_houses > 0) then {
      {
      _pos = call compile format["%1",_x select 0];
      _house = nearestBuilding _pos;
      _houseName = getText(configFile >> "CfgVehicles" >> (typeOf _house) >> "displayName");

      _return pushBack [format["house_%1",_house getVariable "uid"],_houseName,"\a3\ui_f\data\map\MapControl\lighthouse_ca.paa"];
      } foreach life_houses;
      };
      };

      case independent: {
      _return = [
      ["medic_spawn_1","Kavala Hospital","\a3\ui_f\data\map\MapControl\hospital_ca.paa"],
      ["medic_spawn_2","Athira Regional","\a3\ui_f\data\map\MapControl\hospital_ca.paa"],
      ["medic_spawn_3","Pygros Hospital","\a3\ui_f\data\map\MapControl\hospital_ca.paa"]
      ];
      };
      };


      _return;

      Aber ich wollte auch noch cop lvl abhängige Spawn_Punkte einfügen z.B. ab cop lvl 5 ist dann SEK. Normal sollte das doch über diesen Code klappen, oder ist das bei 4.0 auch anders?

      Spoiler anzeigen
      • if(__GETC__(life_copevel) > 0) then {
      • _return = _return + [
      • ["sek_spawn_1","SEK","\a3\ui_f\data\map\MapControl\watertower_ca.paa"]
      • ];
      • };

      Die Spawn-Punkte hab ich extra nochmal kontrolliert, sind auf der Map, habe die eingefügt. Und die Benennung passt auch.

      MfG

      Saturin78

    • Server Admininfo

      • Saturin78
      • 11. März 2016 um 19:20

      coole Sache.

    • Waffen speichern nciht

      • Saturin78
      • 7. März 2016 um 20:57

      Besten Dank,

      da stand false drin. :)

    • Waffen speichern nciht

      • Saturin78
      • 7. März 2016 um 18:52

      Hallo,

      ich habe bei NTech nen Rootserver und dort die standard AltisLife4.0 Version drauf. Nun ist es so dass ich Waffen kaufen kann, diese aber nach jedem aus.-/einloggen oder Serverrestart wieder weg sind. Die werden einfach nicht gespeichert. Woran kann das liegen?

      MfG

      Saturin78

    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-2026©
    Community-Software: WoltLab Suite™