Hallo Leute,
also ich nutze die 4.4 R3 und wir haben das Problem, dass sich Eskortieren meistens nicht abbrechen lässt.
Wenn ein Cop einen Civ festgenommen hat und dann entsprechend Eskortiert, ist entweder der Button ausgegraut oder er ist zwar aktiv, hat aber keine Funktion.
Ein zweiter Cop hingegen kann meistens (jedoch auch nicht immer) dieses Eskortieren abbrechen.
In den Logs lässt sich zu den Zeitpunkten leider nichts finden, die fn_stopEscorting.sqf ist unverändert hier der Inhalt:
#include "..\..\script_macros.hpp"
/*
File: fn_stopEscorting.sqf
Author: Bryan "Tonic" Boardwine
Description:
Detaches player(_unit) from the Escorter(player) and sets them back down.
*/
private["_unit"];
_unit = player getVariable ["escortingPlayer",objNull];
if (isNull _unit) then {_unit = cursorTarget;}; //Emergency fallback.
if (isNull _unit) exitWith {}; //Target not found even after using cursorTarget.
if (!(_unit getVariable ["Escorting",false])) exitWith {}; //He's not being Escorted.
if (side _unit != civilian) exitWith {}; //Not a civ
detach _unit;
_unit setVariable ["Escorting",false,true];
player setVariable ["currentlyEscorting",nil];
player setVariable ["isEscorting",false];
Alles anzeigen
Hier die fn_escortAction.sqf
#include "..\..\script_macros.hpp"
/*
File: fn_escortAction.sqf
Author: Bryan "Tonic" Boardwine
Description: Attaches the desired person(_unit) to the player(player) and "escorts them".
*/
private ["_unit"];
_unit = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;
if (!isNull(player getVariable ["escortingPlayer",ObjNull])) exitWith {};
if (isNil "_unit" || isNull _unit || !isPlayer _unit) exitWith {};
if (!(side _unit in [civilian,independent])) exitWith {};
if (player distance _unit > 3) exitWith {};
_unit attachTo [player,[0.1,1.1,0]];
player setVariable ["escortingPlayer",_unit];
player setVariable ["isEscorting",true];
_unit setVariable ["transporting",false,true];
_unit setVariable ["Escorting",true,true];
player reveal _unit;
[_unit] spawn {
_unit = _this select 0;
waitUntil {(!(_unit getVariable ["Escorting",false]))};
player setVariable ["escortingPlayer",nil];
player setVariable ["isEscorting",false];
};
Alles anzeigen
Und natürlich der Ausschnitt aus der fn_copInteractionMenu.sqf
//Set Escort Button
if (player getVariable["isEscorting",false]) then {
_Btn4 ctrlSetText localize "STR_pInAct_StopEscort";
_Btn4 buttonSetAction "[] call life_fnc_stopEscorting; closeDialog 0;";
} else {
_Btn4 ctrlSetText localize "STR_pInAct_Escort";
_Btn4 buttonSetAction "[life_pInact_curTarget] call life_fnc_escortAction; closeDialog 0;";
};
Seht Ihr einen Fehler? Kennt Ihr vielleicht bereits das Problem?
Über Hilfe würde ich mich natürlich freuen, vielleicht sehe ich den Wald vor lauter Bäumen nicht.. chainsaw