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
Do: 28 August 2025
  • 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. John_Parker

    Beiträge von John_Parker

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 22:49

      Keiner, eine idee woran der fehler hier liegen könnte ?
      @blackfisch @Shinji @nox @Motombo

      Evntl kann sich das von euch mal jemand anschauen, weil eine Datei steht in der RPT nicht drin.. also in was für einer Datei der Fehler sein soll...

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 21:54

      Hab eben nachgeschaut,
      der fehler ist glaube ich in der "life_server\FSM\cleanup.fsm"

      Code
      /*%FSM<COMPILE "D:\Bohemia Interactive\Tools\FSM Editor Personal Edition\scriptedFSM.cfg, Server-Side Cleanup">*/
      /*%FSM<HEAD>*/
      /*
      item0[] = {"init",0,250,-65.004578,-391.651611,24.995417,-341.651672,0.000000,"init"};
      item1[] = {"true",8,218,-62.976639,-315.185364,27.023363,-265.185364,0.000000,"true"};
      item2[] = {"Share__Work_load",2,250,-64.183350,-224.681931,25.816656,-174.681931,0.000000,"Share " \n "Work-load"};
      item3[] = {"true",8,218,-54.709698,75.189262,35.290302,125.189262,0.000000,"true"};
      item4[] = {"Time_Check",4,218,-219.425827,-133.310532,-129.425964,-83.310455,0.000000,"Time Check"};
      item5[] = {"Delete_Dead_Cars",2,4346,-220.186951,-29.248400,-130.187195,20.751413,0.000000,"Delete" \n "Dead" \n "Cars"};
      item6[] = {"",7,210,-312.538239,95.295059,-304.538239,103.295059,0.000000,""};
      item7[] = {"",7,210,-311.750000,-203.033707,-303.750000,-195.033707,0.000000,""};
      link0[] = {0,1};
      link1[] = {1,2};
      link2[] = {2,4};
      link3[] = {3,6};
      link4[] = {4,5};
      link5[] = {5,3};
      link6[] = {6,7};
      link7[] = {7,2};
      globals[] = {0.000000,0,0,0,0,640,480,1,46,6316128,1,-629.444153,611.207214,293.309357,-434.050568,1243,885,1};
      window[] = {2,-1,-1,-1,-1,985,225,1868,225,3,1261};
      *//*%FSM</HEAD>*/
      class FSM
      {
       fsmName = "Server-Side Cleanup";
       class States
       {
       /*%FSM<STATE "init">*/
       class init
       {
       name = "init";
       init = /*%FSM<STATEINIT""">*/"private[""_impound"",""_cars"",""_objs"",""_totCars"",""_thread""];" \n
       "_impound = time;" \n
       "_cars = time;" \n
       "_objs = time;"/*%FSM</STATEINIT""">*/;
       precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
       class Links
       {
       /*%FSM<LINK "true">*/
       class true
       {
       priority = 0.000000;
       to="Share__Work_load";
       precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
       condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/;
       action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
       };
       /*%FSM</LINK>*/
       };
       };
       /*%FSM</STATE>*/
       /*%FSM<STATE "Share__Work_load">*/
       class Share__Work_load
       {
       name = "Share__Work_load";
       init = /*%FSM<STATEINIT""">*/""/*%FSM</STATEINIT""">*/;
       precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
       class Links
       {
       /*%FSM<LINK "Time_Check">*/
       class Time_Check
       {
       priority = 0.000000;
       to="Delete_Dead_Cars";
       precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
       condition=/*%FSM<CONDITION""">*/"((time - _cars) > (3 * 60))"/*%FSM</CONDITION""">*/;
       action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
       };
       /*%FSM</LINK>*/
       };
       };
       /*%FSM</STATE>*/
       /*%FSM<STATE "Delete_Dead_Cars">*/
       class Delete_Dead_Cars
       {
       name = "Delete_Dead_Cars";
       init = /*%FSM<STATEINIT""">*/"{" \n
       " if(!alive _x) then {" \n
       " _dbInfo = _x getVariable[""dbInfo"",[]];" \n
       " if(count _dbInfo > 0) then {" \n
       " _uid = _dbInfo select 0;" \n
       " _plate = _dbInfo select 1;" \n
       " _insureSystem = _dbInfo select 2;" \n
       " diag_log "" destroy vehicule !"";" \n
       " diag_log format[""insureSystem = %1 "", _insureSystem];" \n
       " if(_insureSystem == 1) then " \n
       " { " \n
       " diag_log "" Versichert !"";" \n
       " diag_log format[""insureSystem = %1 "", _insureSystem];" \n
       " _query_0 = format[""UPDATE vehicles SET alive='1', insure='0', active='0' WHERE pid='%1' AND plate='%2'"",_uid,_plate]; " \n
       " _query_0 spawn " \n
       " {" \n
       " waitUntil {!DB_Async_Active};" \n
       " _thread_0 = [_this,1] spawn DB_fnc_asyncCall;" \n
       " };" \n
       " } " \n
       " else " \n
       " { " \n
       " diag_log "" Nicht Versichert !"";" \n
       " diag_log format[""insureSystem = %1 "", _insureSystem];" \n
       " _query = format[""UPDATE vehicles SET alive='0' WHERE pid='%1' AND plate='%2'"",_uid,_plate]; " \n
       " _query spawn " \n
       " {" \n
       " waitUntil {!DB_Async_Active};" \n
       " _thread = [_this,1] spawn DB_fnc_asyncCall;" \n
       " }; " \n
       " }; " \n
       " };" \n
       " if(!isNil ""_x"" && {!isNull _x}) then {" \n
       " deleteVehicle _x;" \n
       " };" \n
       " };" \n
       "} foreach allMissionObjects ""LandVehicle"";" \n
       "" \n
       "{" \n
       " if(!alive _x) then {" \n
       " _dbInfo = _x getVariable[""dbInfo"",[]];" \n
       " if(count _dbInfo > 0) then {" \n
       " _uid = _dbInfo select 0;" \n
       " _plate = _dbInfo select 1;" \n
       " _insureSystem = _dbInfo select 2;" \n
       " diag_log "" destroy vehicule !"";" \n
       " diag_log format[""insureSystem = %1 "", _insureSystem];" \n
       " if(_insureSystem == 1) then " \n
       " { " \n
       " diag_log "" Versichert !"";" \n
       " diag_log format[""insureSystem = %1 "", _insureSystem];" \n
       " _query_0 = format[""UPDATE vehicles SET alive='1', insure='0', active='0' WHERE pid='%1' AND plate='%2'"",_uid,_plate]; " \n
       " _query_0 spawn " \n
       " {" \n
       " waitUntil {!DB_Async_Active};" \n
       " _thread_0 = [_this,1] spawn DB_fnc_asyncCall;" \n
       " };" \n
       " } " \n
       " else " \n
       " { " \n
       " diag_log "" Nicht Versichert !"";" \n
       " diag_log format[""insureSystem = %1 "", _insureSystem];" \n
       " _query = format[""UPDATE vehicles SET alive='0' WHERE pid='%1' AND plate='%2'"",_uid,_plate]; " \n
       " _query spawn " \n
       " {" \n
       " waitUntil {!DB_Async_Active};" \n
       " _thread = [_this,1] spawn DB_fnc_asyncCall;" \n
       " }; " \n
       " }; " \n
       " };" \n
       " if(!isNil ""_x"" && {!isNull _x}) then {" \n
       " deleteVehicle _x;" \n
       " };" \n
       " };" \n
       "} foreach allMissionObjects ""Air"";" \n
       "" \n
       "_cars = time;" \n
       "" \n
       "//Group cleanup." \n
       "{" \n
       " if(count units _x == 0 && local _x) then {" \n
       " deleteGroup _x;" \n
       " };" \n
       "} foreach allGroups;"/*%FSM</STATEINIT""">*/;
       precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
       class Links
       {
       /*%FSM<LINK "true">*/
       class true
       {
       priority = 0.000000;
       to="Share__Work_load";
       precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
       condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/;
       action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
       };
       /*%FSM</LINK>*/
       };
       };
       /*%FSM</STATE>*/
       };
       initState="init";
       finalStates[] =
       {
       };
      };
      /*%FSM</COMPILE>*/
      Alles anzeigen
    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 21:39

      @blackfisch

      Jetzt spamt er mir das hier in die RPT:

      Code
      20:46:07 "insureSystem = [[],0] "
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error position: <== 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error Generic error in expression
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error position: <== 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error Generic error in expression
      20:46:07 " destroy vehicule !"
      20:46:07 "insureSystem = [[],0] "
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error position: <== 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error Generic error in expression
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error position: <== 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error Generic error in expression
      20:46:07 " destroy vehicule !"
      20:46:07 "insureSystem = [[],0] "
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error position: <== 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error Generic error in expression
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error position: <== 1) then 
      { 
      diag_log " Versichert !";>
      20:46:07   Error Generic error in expression
      20:46:07 " destroy vehicule !"
      20:46:07 "insureSystem = [[],0] "
      20:46:07 Error in expression < %1 ", _insureSystem];
      if(_insureSystem == 1) then 
      {
      Alles anzeigen

      habe eben geschaut, aber finde den fehler wieder nicht...
      Ich Verzweifel xD

      MfG
      Wäre nice, wenn mir dabei nochmals jemand helfen könnte

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 20:58
      Zitat von blackfisch

      Klasse Matthias :D Back to the roots... hats geklappt?

      Jop hat geklappt Super !
      Danke dir @blackfisch
      MfG

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 20:28
      Zitat von Saturin78

      Kann es sein dass das <== falsch ist, sollte das nicht entweder == oder <= heißen?

      Wie meinst du das es steht doch == da :D ?

      Code
      };
      if(EQUAL(SEL(_vInfo,9)) == 1) then {
      [1,"Ihr Fahrzeug ist bereit und Versichert!"] remoteExecCall ["life_fnc_broadcast",_unit];
      }
      else {
      [1,"Ihr Fahrzeug ist bereit!"] remoteExecCall ["life_fnc_broadcast",_unit];
      };
    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 20:13
      Zitat von blackfisch

      Zeile 137:
      EQUAAL schreibt man nur mit einem A ;)


      Bringt mir immer noch diesen Fehler:

      Code
      19:49:33 Error in expression <life_fnc_vehicleAnimate",_unit];
      };
      if( == 1) then {
      [1,"Ihr Fahrzeug ist bereit>
      19:49:33   Error position: <== 1) then {
      [1,"Ihr Fahrzeug ist bereit>
      19:49:33   Error Invalid number in expression
      19:49:33 File life_server\Functions\Systems\fn_spawnVehicle.sqf, line 137
      19:49:33 Error in expression <life_fnc_vehicleAnimate",_unit];
      };
      if( == 1) then {
      [1,"Ihr Fahrzeug ist bereit>
      19:49:33   Error position: <== 1) then {
      [1,"Ihr Fahrzeug ist bereit>
      19:49:33   Error Invalid number in expression
      19:49:33 File life_server\Functions\Systems\fn_spawnVehicle.sqf, line 137
      Alles anzeigen


      Habe es nun so drin stehen:

      Code
      #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["SELECT id, side, classname, type, pid, alive, active, plate, color, inventory, gear, fuel, insure FROM vehicles WHERE id='%1' AND pid='%2'",_vid,_pid];
      
      
      
      
      
      
      
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call DB_fnc_asyncCall;
      
      
      
      
      if(EXTDB_SETTING(getNumber,"DebugMode") == 1) then {
      	diag_log "------------- Client Query Request -------------";
      	diag_log format["QUERY: %1",_query];
      	diag_log format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
      	diag_log format["Result: %1",_queryResult];
      	diag_log "------------------------------------------------";
      };
      
      
      
      
      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]] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,6),1)) exitWith {
      	serv_sv_use deleteAt _servIndex;
      	[1,format[(localize "STR_Garage_SQLError_Active"),_vInfo select 2]] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      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] remoteExecCall ["life_fnc_garageRefund",_unit];
      	[1,(localize "STR_Garage_SpawnPointError")] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      _query = format["UPDATE vehicles SET active='1' WHERE pid='%1' AND id='%2'",_pid,_vid];
      
      
      
      
      _trunk = [_vInfo select 9] call DB_fnc_mresToArray;
      _gear = [_vInfo select 10] call DB_fnc_mresToArray;
      
      
      
      
      [_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 setFuel (_vInfo select 11);
      _vehicle allowDamage true;
      //Send keys over the network.
      [_vehicle] remoteExecCall ["life_fnc_addVehicle2Chain",_unit];
      [_pid,_side,_vehicle,1] call TON_fnc_keyManagement;
      _vehicle lock 2;
      //Reskin the vehicle
      [_vehicle,_vInfo select 8] remoteExecCall ["life_fnc_colorVehicle",_unit];
      _vehicle setVariable["vehicle_info_owners",[[_pid,_name]],true];
      _vehicle setVariable["dbInfo",[(_vInfo select 4),_vInfo select 7,_vInfo select 9]];
      _vehicle setVariable["Trunk",_trunk,true];
      _vehicle disableTIEquipment true; //No Thermals.. They're cheap but addictive.
      
      
      
      
      [_vehicle] call life_fnc_clearVehicleAmmo;
      
      
      
      
      if (count _gear > 0) then {
      	_items = _gear select 0;
      	_mags = _gear select 1;
      	_weapons = _gear select 2;
      	_backpacks = _gear select 3;
      
      
      
      
      	for "_i" from 0 to ((count (_items select 0)) - 1) do {
      		_vehicle addItemCargoGlobal [((_items select 0) select _i), ((_items select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_mags select 0)) - 1) do {
      		_vehicle addMagazineCargoGlobal [((_mags select 0) select _i), ((_mags select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_weapons select 0)) - 1) do {
      		_vehicle addWeaponCargoGlobal [((_weapons select 0) select _i), ((_weapons select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_backpacks select 0)) - 1) do {
      		_vehicle addBackpackCargoGlobal [((_backpacks select 0) select _i), ((_backpacks select 1) select _i)];
      	};
      };
      
      
      
      
      //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] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,1),"cop") && (SEL(_vInfo,2)) in ["C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F"]) then {
      	[_vehicle,"cop_offroad",true] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,1),"med") && EQUAL(SEL(_vInfo,2),"C_Offroad_01_F")) then {
      	[_vehicle,"med_offroad",true] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      if(EQUAL(SEL(_vInfo,9)) == 1) then {
      [1,"Ihr Fahrzeug ist bereit und Versichert!"] remoteExecCall ["life_fnc_broadcast",_unit];
      }
      else {
      [1,"Ihr Fahrzeug ist bereit!"] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      serv_sv_use deleteAt _servIndex;
      Alles anzeigen
    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 19:39

      jetzt bekomme ich wieder diesen fehler in der RPT:

      Code
      19:07:33 Error in expression <fnc_vehicleAnimate",_unit];
      };
      if(EQUAAL() == 1) then {
      [1,"Ihr Fahrzeug ist ber>
      19:07:33   Error position: <() == 1) then {
      [1,"Ihr Fahrzeug ist ber>
      19:07:33   Error Missing )
      19:07:33 File life_server\Functions\Systems\fn_spawnVehicle.sqf, line 137
      19:07:33 Error in expression <fnc_vehicleAnimate",_unit];
      };
      if(EQUAAL() == 1) then {
      [1,"Ihr Fahrzeug ist ber>
      19:07:33   Error position: <() == 1) then {
      [1,"Ihr Fahrzeug ist ber>
      19:07:33   Error Missing )
      19:07:33 File life_server\Functions\Systems\fn_spawnVehicle.sqf, line 137
      Alles anzeigen


      Hab es so abgeändert wie du mir geschrieben hast @Shinji

      Code
      #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["SELECT id, side, classname, type, pid, alive, active, plate, color, inventory, gear, fuel, insure FROM vehicles WHERE id='%1' AND pid='%2'",_vid,_pid];
      
      
      
      
      
      
      
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call DB_fnc_asyncCall;
      
      
      
      
      if(EXTDB_SETTING(getNumber,"DebugMode") == 1) then {
      	diag_log "------------- Client Query Request -------------";
      	diag_log format["QUERY: %1",_query];
      	diag_log format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
      	diag_log format["Result: %1",_queryResult];
      	diag_log "------------------------------------------------";
      };
      
      
      
      
      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]] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,6),1)) exitWith {
      	serv_sv_use deleteAt _servIndex;
      	[1,format[(localize "STR_Garage_SQLError_Active"),_vInfo select 2]] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      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] remoteExecCall ["life_fnc_garageRefund",_unit];
      	[1,(localize "STR_Garage_SpawnPointError")] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      _query = format["UPDATE vehicles SET active='1' WHERE pid='%1' AND id='%2'",_pid,_vid];
      
      
      
      
      _trunk = [_vInfo select 9] call DB_fnc_mresToArray;
      _gear = [_vInfo select 10] call DB_fnc_mresToArray;
      
      
      
      
      [_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 setFuel (_vInfo select 11);
      _vehicle allowDamage true;
      //Send keys over the network.
      [_vehicle] remoteExecCall ["life_fnc_addVehicle2Chain",_unit];
      [_pid,_side,_vehicle,1] call TON_fnc_keyManagement;
      _vehicle lock 2;
      //Reskin the vehicle
      [_vehicle,_vInfo select 8] remoteExecCall ["life_fnc_colorVehicle",_unit];
      _vehicle setVariable["vehicle_info_owners",[[_pid,_name]],true];
      _vehicle setVariable["dbInfo",[(_vInfo select 4),_vInfo select 7,_vInfo select 9]];
      _vehicle setVariable["Trunk",_trunk,true];
      _vehicle disableTIEquipment true; //No Thermals.. They're cheap but addictive.
      
      
      
      
      [_vehicle] call life_fnc_clearVehicleAmmo;
      
      
      
      
      if (count _gear > 0) then {
      	_items = _gear select 0;
      	_mags = _gear select 1;
      	_weapons = _gear select 2;
      	_backpacks = _gear select 3;
      
      
      
      
      	for "_i" from 0 to ((count (_items select 0)) - 1) do {
      		_vehicle addItemCargoGlobal [((_items select 0) select _i), ((_items select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_mags select 0)) - 1) do {
      		_vehicle addMagazineCargoGlobal [((_mags select 0) select _i), ((_mags select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_weapons select 0)) - 1) do {
      		_vehicle addWeaponCargoGlobal [((_weapons select 0) select _i), ((_weapons select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_backpacks select 0)) - 1) do {
      		_vehicle addBackpackCargoGlobal [((_backpacks select 0) select _i), ((_backpacks select 1) select _i)];
      	};
      };
      
      
      
      
      //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] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,1),"cop") && (SEL(_vInfo,2)) in ["C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F"]) then {
      	[_vehicle,"cop_offroad",true] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,1),"med") && EQUAL(SEL(_vInfo,2),"C_Offroad_01_F")) then {
      	[_vehicle,"med_offroad",true] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      if(EQUAAL(SEL(_vInfo select 9)) == 1) then {
      [1,"Ihr Fahrzeug ist bereit und Versichert!"] remoteExecCall ["life_fnc_broadcast",_unit];
      }
      else {
      [1,"Ihr Fahrzeug ist bereit!"] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      serv_sv_use deleteAt _servIndex;
      Alles anzeigen
    • [Tutorial] - GPS Tracker für Fahrzeuge

      • John_Parker
      • 4. Juli 2016 um 19:07

      Nur schade ist das der GPS Tracker nicht am Fahrzeug gespeichert bleibt. Sobald man das Fahrzeug einparkt & ausparkt muss man sich wieder einen neuen GPS Tracker Kaufen.

      MfG

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 18:34
      Zitat von Shinji

      Lesen und schauen

      Code
      if(EQUAAL(SEL(_vInfo select 9) == 1) then { <<< da fehlt eine klammer  wie im RPT log steht

      O.o
      Hab ich übersehen
      So sollte es Richtig sein:

      Code
      if(EQUAAL(SEL(_vInfo select 9) == 1)) then {
    • [Tutorial] - GPS Tracker für Fahrzeuge

      • John_Parker
      • 4. Juli 2016 um 18:30

      Funktioniert auch für 4.3 Version :)

    • [TUTORIAL] Vehicle Shop mit Vorschau | Altis Life 3.1.4.8

      • John_Parker
      • 4. Juli 2016 um 18:29
      Zitat von Viruz

      habs für [lexicon]Tanoa[/lexicon] fertig gemacht :D

      Zeigt es bei dir auch die "Fahrzeug Skins" an ?

      MfG

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 18:26

      Habe das hier gefunden in der RPT Log:

      Code
      18:05:54 Error in expression <fnc_vehicleAnimate",_unit];
      };
      if(EQUAAL( == 1) then {
      [1,"Ihr Fahrzeug ist bere>
      18:05:54   Error position: <( == 1) then {
      [1,"Ihr Fahrzeug ist bere>
      18:05:54   Error Missing )
      18:05:54 File life_server\Functions\Systems\fn_spawnVehicle.sqf, line 137
      18:05:54 Error in expression <fnc_vehicleAnimate",_unit];
      };
      if(EQUAAL( == 1) then {
      [1,"Ihr Fahrzeug ist bere>
      18:05:54   Error position: <( == 1) then {
      [1,"Ihr Fahrzeug ist bere>
      18:05:54   Error Missing )
      18:05:54 File life_server\Functions\Systems\fn_spawnVehicle.sqf, line 137
      Alles anzeigen


      Nur weiß ich nicht was ich dort genau abändern soll.

      Das ist die Datei:

      Code
      #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["SELECT id, side, classname, type, pid, alive, active, plate, color, inventory, gear, fuel, insure FROM vehicles WHERE id='%1' AND pid='%2'",_vid,_pid];
      
      
      
      
      
      
      
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call DB_fnc_asyncCall;
      
      
      
      
      if(EXTDB_SETTING(getNumber,"DebugMode") == 1) then {
      	diag_log "------------- Client Query Request -------------";
      	diag_log format["QUERY: %1",_query];
      	diag_log format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
      	diag_log format["Result: %1",_queryResult];
      	diag_log "------------------------------------------------";
      };
      
      
      
      
      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]] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,6),1)) exitWith {
      	serv_sv_use deleteAt _servIndex;
      	[1,format[(localize "STR_Garage_SQLError_Active"),_vInfo select 2]] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      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] remoteExecCall ["life_fnc_garageRefund",_unit];
      	[1,(localize "STR_Garage_SpawnPointError")] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      
      
      
      
      _query = format["UPDATE vehicles SET active='1' WHERE pid='%1' AND id='%2'",_pid,_vid];
      
      
      
      
      _trunk = [_vInfo select 9] call DB_fnc_mresToArray;
      _gear = [_vInfo select 10] call DB_fnc_mresToArray;
      
      
      
      
      [_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 setFuel (_vInfo select 11);
      _vehicle allowDamage true;
      //Send keys over the network.
      [_vehicle] remoteExecCall ["life_fnc_addVehicle2Chain",_unit];
      [_pid,_side,_vehicle,1] call TON_fnc_keyManagement;
      _vehicle lock 2;
      //Reskin the vehicle
      [_vehicle,_vInfo select 8] remoteExecCall ["life_fnc_colorVehicle",_unit];
      _vehicle setVariable["vehicle_info_owners",[[_pid,_name]],true];
      _vehicle setVariable["dbInfo",[(_vInfo select 4),_vInfo select 7,_vInfo select 9]];
      _vehicle setVariable["Trunk",_trunk,true];
      _vehicle disableTIEquipment true; //No Thermals.. They're cheap but addictive.
      
      
      
      
      [_vehicle] call life_fnc_clearVehicleAmmo;
      
      
      
      
      if (count _gear > 0) then {
      	_items = _gear select 0;
      	_mags = _gear select 1;
      	_weapons = _gear select 2;
      	_backpacks = _gear select 3;
      
      
      
      
      	for "_i" from 0 to ((count (_items select 0)) - 1) do {
      		_vehicle addItemCargoGlobal [((_items select 0) select _i), ((_items select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_mags select 0)) - 1) do {
      		_vehicle addMagazineCargoGlobal [((_mags select 0) select _i), ((_mags select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_weapons select 0)) - 1) do {
      		_vehicle addWeaponCargoGlobal [((_weapons select 0) select _i), ((_weapons select 1) select _i)];
      	};
      	for "_i" from 0 to ((count (_backpacks select 0)) - 1) do {
      		_vehicle addBackpackCargoGlobal [((_backpacks select 0) select _i), ((_backpacks select 1) select _i)];
      	};
      };
      
      
      
      
      //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] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,1),"cop") && (SEL(_vInfo,2)) in ["C_Offroad_01_F","B_MRAP_01_F","C_SUV_01_F","C_Hatchback_01_sport_F","B_Heli_Light_01_F","B_Heli_Transport_01_F"]) then {
      	[_vehicle,"cop_offroad",true] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      
      
      
      
      if(EQUAL(SEL(_vInfo,1),"med") && EQUAL(SEL(_vInfo,2),"C_Offroad_01_F")) then {
      	[_vehicle,"med_offroad",true] remoteExecCall ["life_fnc_vehicleAnimate",_unit];
      };
      if(EQUAAL(SEL(_vInfo select 9) == 1) then {
      [1,"Ihr Fahrzeug ist bereit und Versichert!"] remoteExecCall ["life_fnc_broadcast",_unit];
      }
      else {
      [1,"Ihr Fahrzeug ist bereit!"] remoteExecCall ["life_fnc_broadcast",_unit];
      };
      serv_sv_use deleteAt _servIndex;
      Alles anzeigen


      Wäre Super wenn mir jemand weiterhelfen würde.

      MfG

    • Versicherungen für Fahrzeuge (Autos, LKW, Helikopter und Flugzeuge)

      • John_Parker
      • 4. Juli 2016 um 00:54

      Ich habe das Versicherungs System eingebaut es Funktioniert auch alles bis auf das Ausparken! Und zwar wenn ich mein Fahrzeug in der Garage Versichere und ich es danach ausparken will Spawnt das Fahrzeug nicht mehr aus der Garage.

      Es steht oben Rechts nur "Fahrzeug wird bereitgestellt, bitte warten..."

      Aber es Spawnt nicht.

      Wäre nett wenn mir jemand weiterhelfen würde, ich habe jetzt 3 Stunden an dem Ding geschaut aber nichts gefunden woran es liegen könnte.

      Wie gesagt in der Datenbank wird "insure" auch auf "1" gesetzt wenn ich es Versichert habe, aber ingame will das Fahrzeug nicht mehr Spawnen... Komisch.. wäre echt nett wenn mir jemand weiterhelfen könnte, bin am Verzweifeln...

      Ich Benutze die Version 4.3

      MfG

    • [Tutorial] Cop Lizenzen entnehmen 3.1.4.8

      • John_Parker
      • 2. Juli 2016 um 18:10

      Benutze die 4.3 Version.
      Würde das bei der 4.3 Version auch funktionieren. Wenn nicht was müsste ich genau abändern :D
      Wäre super wenn mir da jemand weiterhelfen könnte.

      MfG

    • [Tutorial] 2 Items zum Prozessen

      • John_Parker
      • 30. Juni 2016 um 04:46
      Zitat von chris89

      Altis 4.0

      Das ist aber für die Version "3.1.4.8".

    • [Tutorial] Warners Barrier's

      • John_Parker
      • 25. Juni 2016 um 22:40
      Zitat von Exodoos

      Das würde aber in 3.1.4.8 auch funktionieren oder nicht?

      steht doch drüber für alle versionen. Also denke ich funktioniert es auch für die Version 3.1.4.8
      MfG

    • [Tutorial 4.4R4+] Verwahrungsstelle nach Impounden

      • John_Parker
      • 25. Juni 2016 um 17:17
      Zitat von STG_SilentF0x

      Hab das Script eingebaut und es ging nichts mehr! Konnte nicht mal auf den Server.

      Was hast du für eine Version? 4.4, 3.1.4.8, 4.0 etc wäre mal nice zu wissen.

    • [Tutorial 4.4R4+] Verwahrungsstelle nach Impounden

      • John_Parker
      • 25. Juni 2016 um 05:25

      Sag mal ist es schwer dort noch hinzuzufügen, das wenn das Fahrzeug kaputt ist das man es dort auch abhollen/rauskaufen muss ?
      Und wenn ja, was müsste ich dort abändern genau.

      Würde mich freuen wenn da jemand was dazu schreiben könnte.

    • [Tutorial 4.4R4+] Verwahrungsstelle nach Impounden

      • John_Parker
      • 25. Juni 2016 um 00:31

      In:
      Neue Datei in \core\shops\ Namens "fn_impoundedmenu.sqf"
      Spoiler fehlt der Code :)

    • Neue Farming Routen

      • John_Parker
      • 24. Juni 2016 um 20:21

      Tutorial ( Neue Farming Routen 4.4 Hinzufügen)
      Tutorial by Shinji


      ____________________________________________________________________________________


      Ein Item erstellen bzw. 2 stück


      Code
      class gummiu {
       variable = "gummiu";
       displayName = "STR_Item_Rock"; << ich hoffe da weißt wie es geht :)
       weight = 3;
       buyPrice = -1;
       sellPrice = 25;
       illegal = false;
       edible = -1;
       icon = "";
       };
       class gummip {
       variable = "gummip";
       displayName = "STR_Item_CementBag"; << ebenfalls bitte Strngtable schauen :)
       weight = 2;
       buyPrice = -1;
       sellPrice = 590;
       illegal = false;
       edible = -1;
       icon = "";
       };
      Alles anzeigen


      Eine lizenz erstellen, um das später zu processen


      Code
      class gummiprocess {
       variable = "gummiprocess";
       displayName = "STR_License_Cement"; << wie immer schön Strings machen
       price = 6500;
       illegal = false;
       side = "civ";
       };


      Einmal in die gather.sqf wechseln -> sollte unter core\actions\ zu finden zu sein

      dort finden wir folgendes vor:

      Code
      _resourceZones = ["apple_1","apple_2","apple_3","apple_4","peaches_1","peaches_2","peaches_3","peaches_4","heroin_1","cocaine_1","weed_1"];
      Code
      switch(true) do {
           case (_zone in ["apple_1","apple_2","apple_3","apple_4"]): {_gather = ["apple",3];};
           case (_zone in ["peaches_1","peaches_2","peaches_3","peaches_4"]): {_gather = ["peach",3];};
           case (_zone in ["heroin_1"]): {_gather = ["heroin_unprocessed",1];};
           case (_zone in ["cocaine_1"]): {_gather = ["cocaine_unprocessed",1];};
           case (_zone in ["weed_1"]): {_gather = ["cannabis",1];};
           default {""};
          };


      Da tragen wir einfach eine neue Zone ein unter der case (_zone in["weed1"....
      Nicht vergessen auch in der "_resourceZones" Eintragen!

      Code
      case (_zone in ["gummi"]): {_gather = ["gummiu",1];};
          erklärung:
          _zone gummi -> Marker Name der auf der Karte zu sehen is
          _gather gummiu 1 -> du bekommst 1 unprocessed gummi dort

      Allein damit könnte man schon farmen gehen, zwar nicht verkaufen, aber hey Farmen
      [/b]

      Tragen wir also das Item mal noch in einen Shop ein -> Config_vItem.hpp


      Code
      class market {
       name = "STR_Shops_Market";
       side = "civ";
       license = "";
       level[] = { "", "", -1, "" };
       items[] = { "waterBottle", "rabbit", "apple", "redgull", "tbacon", "lockpick", "pickaxe", "fuelFull", "peach", "boltcutter", "storagesmall", "storagebig", "rabbit_raw", "hen_raw", "rooster_raw", "sheep_raw", "goat_raw" };
       };
      und fügen hinter "goat_raw" einfach noch ein Komma "gummip" ein 
       class market {
       name = "STR_Shops_Market";
       side = "civ";
       license = "";
       level[] = { "", "", -1, "" };
       items[] = { "waterBottle", "rabbit", "apple", "redgull", "tbacon", "lockpick", "pickaxe", "fuelFull", "peach", "boltcutter", "storagesmall", "storagebig", "rabbit_raw", "hen_raw", "rooster_raw", "sheep_raw", "goat_raw", "gummip" };
       };
      Alles anzeigen



      Nun könnte man das processed item verkaufen. Fehlt das Processen... core\actions\processAction.sqf
      wir finden:

      Code
      _itemInfo = switch (_type) do {
       case "oil": {["oil_unprocessed","oil_processed",1200,(localize "STR_Process_Oil")];};
       case "diamond": {["diamond_uncut","diamond_cut",1350,(localize "STR_Process_Diamond")];};
       case "heroin": {["heroin_unprocessed","heroin_processed",1750,(localize "STR_Process_Heroin")];};
       case "copper": {["copper_unrefined","copper_refined",750,(localize "STR_Process_Copper")];};
       case "iron": {["iron_unrefined","iron_refined",1120,(localize "STR_Process_Iron")];};
       case "sand": {["sand","glass",650,(localize "STR_Process_Sand")];};
       case "salt": {["salt_unrefined","salt_refined",450,(localize "STR_Process_Salt")];};
       case "cocaine": {["cocaine_unprocessed","cocaine_processed",1500,(localize "STR_Process_Cocaine")];};
       case "marijuana": {["cannabis","marijuana",500,(localize "STR_Process_Marijuana")];};
       case "cement": {["rock","cement",350,(localize "STR_Process_Cement")];};
       default {[];};
      };
      Alles anzeigen

      und fügen wieder unter dem letzten eintrag aber ÜBER default -> also unter -> case "cement" ...


      Code
      case "gummi": {["gummiu","gummip",90,(localize "STR_Process_Cement")];}; << wieder darauf achten das die Stringtable passt.
      Erklärung:
      case gummi -> ist die Action die vom NPC auf der KArte komme.
      gummiu , gummip , 90 -> von unprocessed gummi zu processed ohne lizenz kostet es 90$ pro item

      Nun sollte nur noch der Marker fehlen der "gummi" genannt wird.
      Dann noch der Processtyp ->

      In der init eines NPC`s


      Code
      this enableSimulation false; this allowDamage false; 
           this addAction[localize "STR_MAR_Process_Rock",life_fnc_processAction,"gummi",0,false,false,"",' life_inv_gummiu > 0 && !life_is_processing']; 
           this addAction[format["%1 ($%2)",localize (getText(missionConfigFile >> "Licenses" >> "gummiprocess" >> "displayName")), [(getNumber(missionConfigFile >> "Licenses" >> "gummiprocess" >> "price"))] call life_fnc_numberText],life_fnc_buyLicense,"gummiprocess",0,false,false,"",' !license_civ_gummiprocess && playerSide == civilian '];

      Okay das sollte es gewesen sein!
      Viel Spaß mit dem Farming Routen & natürlich beim Farmen!
      Ein Großes Dankeschön geht nochmals an @Shinji für sein Tutorial!

      MfG John_Parker

    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™