Wrack Event per Script starten
-
___ -
8. Mai 2018 um 20:53 -
Geschlossen -
Erledigt
-
-
moeck Hehe, und was genau
Du musst im Prinzip das if-Statement mit _isWater rausnehmen. Könnte dann wie folgt aussehen
Code
Alles anzeigenif (isNull _curObject) exitWith { _fish = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_fish")),3]) select 0; if (!isNil "_fish") then { if (!alive _fish) then { [_fish] call life_fnc_catchFish; }; }; _animal = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_hunting")),3]) select 0; if (!isNil "_animal") then { if (!alive _animal) then { [_animal] call life_fnc_gutAnimal; }; } else { private "_handle"; if (playerSide isEqualTo civilian && !life_action_gathering) then { _whatIsIt = [] call life_fnc_whereAmI; if (life_action_gathering) exitWith {}; //Action is in use, exit to prevent spamming. switch (_whatIsIt) do { case "mine" : { _handle = [] spawn life_fnc_mine }; default { _handle = [] spawn life_fnc_gather }; }; life_action_gathering = true; waitUntil {scriptDone _handle}; life_action_gathering = false; }; }; };
und probieren geht über studieren
-
einfach Zeile 27 - 56 mit dem oben gepostetem Kram ersetzen, wobei ich gerade noch was gesehen hab
nimm mal lieber das
Code
Alles anzeigenif (isNull _curObject) exitWith { _fish = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_fish")),3]) select 0; _animal = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_hunting")),3]) select 0; if ((!isNil "_fish") || (!isNil "_animal")) then { if (!isNil "_fish") then { if (!alive _fish) then { [_fish] call life_fnc_catchFish; }; }; if (!isNil "_animal") then { if (!alive _animal) then { [_animal] call life_fnc_gutAnimal; }; }; } else { private "_handle"; if (playerSide isEqualTo civilian && !life_action_gathering) then { _whatIsIt = [] call life_fnc_whereAmI; if (life_action_gathering) exitWith {}; //Action is in use, exit to prevent spamming. switch (_whatIsIt) do { case "mine" : { _handle = [] spawn life_fnc_mine }; default { _handle = [] spawn life_fnc_gather }; }; life_action_gathering = true; waitUntil {scriptDone _handle}; life_action_gathering = false; }; }; };
-
moeck Funktioniert leider nicht
-
hänge mal den kompletten actionKeyHandler an
-
moeck Bitteschön^^
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_actionKeyHandler.sqf Author: Bryan "Tonic" Boardwine Description: Master action key handler, handles requests for picking up various items and interacting with other players (Cops = Cop Menu for unrestrain,escort,stop escort, arrest (if near cop hq), etc). */ private ["_curObject","_isWater","_CrateModelNames","_crate","_fish","_animal","_whatIsIt","_handle"]; _curObject = cursorObject; if (life_action_inUse) exitWith {}; //Action is in use, exit to prevent spamming. if (life_interrupted) exitWith {life_interrupted = false;}; _isWater = surfaceIsWater (visiblePositionASL player); if (playerSide isEqualTo west && {player getVariable ["isEscorting",false]}) exitWith { [_curObject] call life_fnc_copInteractionMenu; }; if (playerSide isEqualTo civilian && {player getVariable ["isEscorting",false]}) exitWith { [_curObject] call life_fnc_civInteractionMenu; }; if (LIFE_SETTINGS(getNumber,"global_ATM") isEqualTo 1) then{ //Check if the player is near an ATM. if ((call life_fnc_nearATM) && {!dialog}) exitWith { [] call life_fnc_atmMenu; }; }; if (isNull _curObject) exitWith { _fish = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_fish")),3]) select 0; _animal = (nearestObjects[player,(LIFE_SETTINGS(getArray,"animaltypes_hunting")),3]) select 0; if ((!isNil "_fish") || (!isNil "_animal")) then { if (!isNil "_fish") then { if (!alive _fish) then { [_fish] call life_fnc_catchFish; }; }; if (!isNil "_animal") then { if (!alive _animal) then { [_animal] call life_fnc_gutAnimal; }; }; } else { private "_handle"; if (playerSide isEqualTo civilian && !life_action_gathering) then { _whatIsIt = [] call life_fnc_whereAmI; if (life_action_gathering) exitWith {}; //Action is in use, exit to prevent spamming. switch (_whatIsIt) do { case "mine" : { _handle = [] spawn life_fnc_mine }; default { _handle = [] spawn life_fnc_gather }; }; life_action_gathering = true; waitUntil {scriptDone _handle}; life_action_gathering = false; }; }; }; if ((_curObject isKindOf "B_supplyCrate_F" || _curObject isKindOf "Box_IND_Grenades_F") && {player distance _curObject < 3} ) exitWith { if (alive _curObject) then { [_curObject] call life_fnc_containerMenu; }; }; private _vaultHouse = [[["Altis", "Land_Research_house_V1_F"], ["Tanoa", "Land_PillboxBunker_01_big_F"]]] call TON_fnc_terrainSort; private _altisArray = [16019.5,16952.9,0]; private _tanoaArray = [8435.88,1346.1,4.46115]; private _pos = [[["Altis", _altisArray], ["Tanoa", _tanoaArray]]] call TON_fnc_terrainSort; if (_curObject isKindOf "House_F" && {player distance _curObject < 12} || ((nearestObject [_pos,"Land_Airport_01_hangar_F"]) isEqualTo _curObject || (nearestObject [_pos,_vaultHouse]) isEqualTo _curObject)) exitWith { [_curObject] call life_fnc_houseMenu; }; if (dialog) exitWith {}; //Don't bother when a dialog is open. if !(isNull objectParent player) exitWith {}; //He's in a vehicle, cancel! life_action_inUse = true; //Temp fail safe. [] spawn { sleep 60; life_action_inUse = false; }; //Check if it's a dead body. if (_curObject isKindOf "Man" && !(_curObject isKindOf "Animal") && {!alive _curObject} && !(_curObject getVariable ["Revive",false])) exitWith { //Hotfix code by ins0 if ((playerSide isEqualTo west && {(LIFE_SETTINGS(getNumber,"revive_cops") isEqualTo 1)}) || {(playerSide isEqualTo civilian && {(LIFE_SETTINGS(getNumber,"revive_civ") isEqualTo 1)})} || {(playerSide isEqualTo east && {(LIFE_SETTINGS(getNumber,"revive_east") isEqualTo 1)})} || {playerSide isEqualTo independent}) then { if (life_inv_defibrillator > 0) then { [_curObject] call life_fnc_revivePlayer; }; }; }; //If target is a player then check if we can use the cop menu. if(isPlayer _curObject && _curObject isKindOf "Man") then { if((_curObject getVariable ["restrained",false]) && !dialog && playerSide isEqualTo west) then { [_curObject] call life_fnc_copInteractionMenu; }; if((_curObject getVariable ["restrained",false]) && !dialog && playerSide isEqualTo civilian) then { [_curObject] call life_fnc_civInteractionMenu; }; } else { //OK, it wasn't a player so what is it? private ["_isVehicle","_miscItems","_money","_list"]; _list = ["landVehicle","Ship","Air"]; _isVehicle = if (KINDOF_ARRAY(_curObject,_list)) then {true} else {false}; _miscItems = ["Land_BottlePlastic_V1_F","Land_TacticalBacon_F","Land_Can_V3_F","Land_CanisterFuel_F","Land_Suitcase_F"]; //It's a vehicle! open the vehicle interaction key! if (_isVehicle) then { if (!dialog) then { if (player distance _curObject < ((boundingBox _curObject select 1) select 0)+2 && (!(player getVariable ["restrained",false])) && (!(player getVariable ["playerSurrender",false])) && !life_isknocked && !life_istazed) then { [_curObject] call life_fnc_vInteractionMenu; }; }; } else { //OK, it wasn't a vehicle so let's see what else it could be? if ((typeOf _curObject) in _miscItems) then { [_curObject,player,false] remoteExecCall ["TON_fnc_pickupAction",RSERV]; } else { //It wasn't a misc item so is it money? if ((typeOf _curObject) isEqualTo "Land_Money_F" && {!(_curObject getVariable ["inUse",false])}) then { [_curObject,player,true] remoteExecCall ["TON_fnc_pickupAction",RSERV]; }; }; }; };
-
waren da zufällig Fische in der Nähe als Du das probiert hast? Probiers mal damit und hänge anschliessend mal die Client Logs mit an
-
Einmal Clientlog
-
ok also er ist schon mal richtig
, jetzt ist die Frage warum er nicht sammelt. So dann hier bitte nochmal die beiden Dateien ersetzen und wieder logs anhängen. Die fn_gather liegt im Ordner core\actions\
-
moeck Nope, will immer noch nicht. War auch ein Scriptfehler beim connecten zu sehen, war aber zu langsam für nen Screenshot
-
ja fehlt irgendwie eine klammer, leider hat sich mein router verabschiedet und ich schreibe gerade per handy. ich schaue mir das dann nochmal an wenn das inet wieder funzt
-
moeck Okay, kein Problem. Eilt ja nicht
-
so habe wieder inet
hier mal die geänderte gather
-
moeck Sorry für die verpätete Antwort, funktioniert leider immer noch nicht
-
-
Achso tue mir bitte mal den Gefallen und hänge dein Wrackscript an und bitte benutze die Anhangfunktion da sonst die formatierung wieder für die Tonne ist.
-
moeck Kein Problem^^
-
so ich habe mir das nochmal angeschaut und verstehe das eine oder andere nicht
Ich habe jetzt mal zum testen was eingebaut was man später wieder entfernen kann.
-
moeck Ähm... Hehe
Es lag am Marker, hatte vergessen den zu verschieben
Nun kann ich da zwar farmen aber... nur bis 2 Meter unter der Wasseroberfläche.
Kann man noch iwie einstellen dass man nur beim Wrack farmen kann?
-
wie meinst Du das? mit dem 2 Meter unter der Wasseroberfläche? Also mit dem geänderten Script sollte der Marker direkt beim Wrack auftauchen
-