So wird es ja auch beschrieben
SpielerTag System
-
- Altis Life
-
Julian -
20. Mai 2018 um 16:16
-
-
Kann amn da meherer Cop Ränge hinzufügen also nicht nur Polizei sonder Anwärter usw bis Direktor und ob man das dann rangabhängig machenj kann=
-
Bei meinen Spielern werden die Clan TAgs nie angezeigt auser man Tötet sie ? Kann man das so machen kann das wenn jemand spawnt die abfrage komtm?
-
und ändere mal das
Code/*realname Setter*/ private _realName = switch (true) do { case (side player == west): {format ["[Polizei] %1", profileName];}; case (side player == independent): {format ["[Rettungsdienst] %1", profileName];}; default {profileName}; };
in das
Code/*realname Setter*/ private _realName = switch (true) do { case (playerSide isEqualTo west): {format ["[Polizei] %1", profileName];}; case (playerSide isEqualTo independent): {format ["[Rettungsdienst] %1", profileName];}; default {profileName}; };
side player funktioniert da nicht zuverlässig.
-
Jez Funktioniert es gahrnimma bzw es werdne keine tags mehr von den Civs angezeigt
-
Guten Tag, könnte mir jemand helfen, da das Player Tag System nur Funktioniert wenn man leute tötet?
-
Ja du musst in der Init das machen nochmal
Dann dürfte es klappen
Wenn es immernoch nicht geht kannst du auch eine Funktion Schreiben oder direkt die Variable setzen ich meine du überschreibst ja nur die Variable realname und deswege kannst du auch nochmal zur sicherheit im Spawnen die Variable setzten das geht auch ... so überschreibst du diese halt
-
Code
Alles anzeigen/*realname Setter*/ private _realName = switch (true) do { case (playerSide isEqualTo west): { switch (call life_coplevel) do{ case 1: { format ["[Polizei-Anwärter] %1", profileName];}; case 2: { format ["[Polizei-Meister] %1", profileName]; }; case 3: { format ["[Polizei-Obermeister] %1", profileName]; }; case 4: { format ["[Polizei-Hauptmeister] %1", profileName]; }; case 5: { format ["[Polizei-Kommissar] %1", profileName]; }; case 6: { format ["[Polizei-Oberkommissar] %1", profileName]; }; case 7: { format ["[Polizei-Hauptkommissar] %1", profileName]; }; case 8: { format ["[Polizei-Ausbilder] %1", profileName]; }; case 9: { format ["[Polizei-Direktor] %1", profileName]; }; default { format ["[Polizei] %1", profileName]; }; }; }; case (playerSide isEqualTo independent): { switch (call life_mediclevel) do{ case 1: { format ["[Rettungsdienst-1] %1", profileName];}; case 2: { format ["[Rettungsdienst-2] %1", profileName];}; case 3: { format ["[Rettungsdienst-3] %1", profileName];}; case 4: { format ["[Rettungsdienst-4] %1", profileName];}; case 5: { format ["[Rettungsdienst-5] %1", profileName];}; case 6: { format ["[Rettungsdienst-6] %1", profileName];}; case 7: { format ["[Rettungsdienst-7] %1", profileName];}; default { format ["[Rettungsdienst] %1", profileName]; }; }; }; default {profileName}; }; player setVariable ["realname",_realName,true];
Wenn du das in die init im core schreibst müsste auch der Rang dabei stehen wenn du das meintest..
Habe ich nicht getestet dürfte aber klappen
Natürlich musst du jedes mal das neu setzten also ersetzten wir das was vorher das war...
-
Ja du musst in der Init das machen nochmal
Dann dürfte es klappen
Wenn es immernoch nicht geht kannst du auch eine Funktion Schreiben oder direkt die Variable setzen ich meine du überschreibst ja nur die Variable realname und deswege kannst du auch nochmal zur sicherheit im Spawnen die Variable setzten das geht auch ... so überschreibst du diese halt
Okay und wie ? Könntest du mir dabei genauer helfen?
-
Wenn du das in der initGang nicht vergessen hat dürfte alles klappen ...
Da die geladen wird auch wenn nichts vorhanden ist ...
Sonst schau mal in den dialog/functions Ordner und suche da nach der spawnconfirm da kannst du das auch noch rein machen aber ist sinnlos wenn du es wie im Tutorial eingebaut hast
Überprüf nochmal alle Schritte
-
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_initGang.sqf Author: Bryan "Tonic" Boardwine Description: Main initialization for gangs. */ private ["_exitLoop","_group","_wait"]; if !(playerSide isEqualTo civilian) exitWith {}; //What in the hell? [player] join (createGroup civilian); if (count life_gangData isEqualTo 0) exitWith {}; //Dafuq? _wait = round(random(8)); sleep _wait; //Loop through to make sure there is not a group already created with the gang. _exitLoop = false; { _groupName = _x getVariable "gang_name"; if (!isNil "_groupName") then { _groupOwner = _x getVariable ["gang_owner",""]; _groupID = _x getVariable "gang_id"; if (_groupOwner isEqualTo "" || isNil "_groupID") exitWith {}; //Seriously? if ((life_gangData select 0) isEqualTo _groupID && {(life_gangData select 1) isEqualTo _groupOwner}) exitWith {_group = _x; _exitLoop = true;}; }; } forEach allGroups; if (!isNil "_group") then { [player] join _group; if ((life_gangData select 1) isEqualTo getPlayerUID player) then { _group selectLeader player; [player,_group] remoteExecCall ["TON_fnc_clientGangLeader",(units _group)]; }; } else { _group = group player; _group setVariable ["gang_id",(life_gangData select 0),true]; _group setVariable ["gang_owner",(life_gangData select 1),true]; _group setVariable ["gang_name",(life_gangData select 2),true]; _group setVariable ["gang_maxMembers",(life_gangData select 3),true]; _group setVariable ["gang_bank",(life_gangData select 4),true]; _group setVariable ["gang_members",(life_gangData select 5),true]; player setVariable ["realname",format ["[%1] %2",(life_gangData select 2), profileName],true]; };
-
HAbe ich eignetlich eingefügt
-
Kleien zwischen info, jez iste es so bei spawnen und beim clan generieren funktionierts jezt aber beim töten bzw sterben nichtmher!
-
Fehler sehe ich da jetzt nicht ...
-
Kleien zwischen info, jez iste es so bei spawnen und beim clan generieren funktionierts jezt aber beim töten bzw sterben nichtmher!
Ach so okay lad mal deine fn_onPlayerKilled.sqf als codeblock hoch
-
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_onPlayerKilled.sqf Author: Bryan "Tonic" Boardwine Description: When the player dies collect various information about that player and pull up the death dialog / camera functionality. */ params [ ["_unit",objNull,[objNull]], ["_killer",objNull,[objNull]] ]; disableSerialization; if !((vehicle _unit) isEqualTo _unit) then { UnAssignVehicle _unit; _unit action ["getOut", vehicle _unit]; _unit setPosATL [(getPosATL _unit select 0) + 3, (getPosATL _unit select 1) + 1, 0]; }; //Set some vars _unit setVariable ["Revive",true,true]; _unit setVariable ["name",profileName,true]; //Set my name so they can say my name. _unit setVariable ["restrained",false,true]; _unit setVariable ["Escorting",false,true]; _unit setVariable ["transporting",false,true]; _unit setVariable ["playerSurrender",false,true]; _unit setVariable ["steam64id",(getPlayerUID player),true]; //Set the UID. //close the esc dialog if (dialog) then { closeDialog 0; }; //Setup our camera view life_deathCamera = "CAMERA" camCreate (getPosATL _unit); showCinemaBorder false; life_deathCamera cameraEffect ["Internal","Back"]; createDialog "DeathScreen"; life_deathCamera camSetTarget _unit; life_deathCamera camSetRelPos [0,3.5,4.5]; life_deathCamera camSetFOV .5; life_deathCamera camSetFocus [50,0]; life_deathCamera camCommit 0; (findDisplay 7300) displaySetEventHandler ["KeyDown","if ((_this select 1) isEqualTo 1) then {true}"]; //Block the ESC menu //Create a thread for something? _unit spawn { private ["_maxTime","_RespawnBtn","_Timer"]; disableSerialization; _RespawnBtn = ((findDisplay 7300) displayCtrl 7302); _Timer = ((findDisplay 7300) displayCtrl 7301); if (LIFE_SETTINGS(getNumber,"respawn_timer") < 5) then { _maxTime = time + 5; } else { _maxTime = time + LIFE_SETTINGS(getNumber,"respawn_timer"); }; _RespawnBtn ctrlEnable false; waitUntil {_Timer ctrlSetText format [localize "STR_Medic_Respawn",[(_maxTime - time),"MM:SS"] call BIS_fnc_secondsToString]; round(_maxTime - time) <= 0 || isNull _this}; _RespawnBtn ctrlEnable true; _Timer ctrlSetText localize "STR_Medic_Respawn_2"; }; _unit spawn { private ["_requestBtn","_requestTime"]; disableSerialization; _requestBtn = ((findDisplay 7300) displayCtrl 7303); _requestBtn ctrlEnable false; _requestTime = time + 5; waitUntil {round(_requestTime - time) <= 0 || isNull _this}; _requestBtn ctrlEnable true; }; [] spawn life_fnc_deathScreen; //Create a thread to follow with some what precision view of the corpse. [_unit] spawn { private ["_unit"]; _unit = _this select 0; waitUntil {if (speed _unit isEqualTo 0) exitWith {true}; life_deathCamera camSetTarget _unit; life_deathCamera camSetRelPos [0,3.5,4.5]; life_deathCamera camCommit 0;}; }; //Make the killer wanted if (!isNull _killer && {!(_killer isEqualTo _unit)} && {!(side _killer isEqualTo west)} && {alive _killer}) then { if (vehicle _killer isKindOf "LandVehicle") then { if (life_HC_isActive) then { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life]; } else { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["life_fnc_wantedAdd",RSERV]; }; //Get rid of this if you don't want automatic vehicle license removal. if (!local _killer) then { [2] remoteExecCall ["life_fnc_removeLicenses",_killer]; }; } else { if (life_HC_isActive) then { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life]; } else { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["life_fnc_wantedAdd",RSERV]; }; if (!local _killer) then { [3] remoteExecCall ["life_fnc_removeLicenses",_killer]; }; }; }; life_save_gear = [player] call life_fnc_fetchDeadGear; if (LIFE_SETTINGS(getNumber,"drop_weapons_onDeath") isEqualTo 0) then { _unit removeWeapon (primaryWeapon _unit); _unit removeWeapon (handgunWeapon _unit); _unit removeWeapon (secondaryWeapon _unit); }; //Killed by cop stuff... if (side _killer isEqualTo west && !(playerSide isEqualTo west)) then { life_copRecieve = _killer; //Did I rob the federal reserve? if (!life_use_atm && {CASH > 0}) then { [format [localize "STR_Cop_RobberDead",[CASH] call life_fnc_numberText]] remoteExecCall ["life_fnc_broadcast",RCLIENT]; CASH = 0; }; }; if (!isNull _killer && {!(_killer isEqualTo _unit)}) then { life_removeWanted = true; }; [_unit] call life_fnc_dropItems; life_action_inUse = false; life_hunger = 100; life_thirst = 100; life_carryWeight = 0; CASH = 0; life_is_alive = false; [] call life_fnc_hudUpdate; //Get our HUD updated. [player,life_settings_enableSidechannel,playerSide] remoteExecCall ["TON_fnc_manageSC",RSERV]; _victimNameSide = ""; _victimName = _unit getVariable["realname",""]; _killerSide = ""; _killerName = ""; if ( (!isNull _killer) && (_killer != player)) then { _killerName = _killer getVariable["realname",""]; }; if(_killerName == "") then { _TodNachrichtTot = [ "Noob %1 down!", "%1 ist abgekackt!", "%1 ist mausetot!", "Mit %1 ist es jetzt vorbei!"]; _deathmessage = selectRandom _TodNachrichtTot; _victimName = _unit getVariable["realname",""]; _victimNameSide = _victimNameSide + _victimName; NNToTmessage = format [_deathmessage, _victimNameSide]; } else { _TodNachricht = [ "%1 wurde von %2 getötet!", "%1 bekam von %2 einen Einlauf.", "%1 wurde von %2 durchbohrt!", "%1 wurde von %2 gebraten!"]; _killMessage = selectRandom _TodNachricht; _victimNameSide = _victimNameSide + _victimName; _killerSide = _killerSide + _killerName; NNToTmessage = format [_killMessage, _victimNameSide, _killerSide]; }; [0,NNToTmessage] remoteExecCall ["life_fnc_broadcast",-2]; [0] call SOCK_fnc_updatePartial; [3] call SOCK_fnc_updatePartial; if (playerSide isEqualTo civilian) then { [4] call SOCK_fnc_updatePartial; };
-
Code
Alles anzeigen#include "..\..\script_macros.hpp" /* File: fn_onPlayerKilled.sqf Author: Bryan "Tonic" Boardwine Description: When the player dies collect various information about that player and pull up the death dialog / camera functionality. */ params [ ["_unit",objNull,[objNull]], ["_killer",objNull,[objNull]] ]; disableSerialization; if !((vehicle _unit) isEqualTo _unit) then { UnAssignVehicle _unit; _unit action ["getOut", vehicle _unit]; _unit setPosATL [(getPosATL _unit select 0) + 3, (getPosATL _unit select 1) + 1, 0]; }; //Set some vars _unit setVariable ["Revive",true,true]; _unit setVariable ["name",profileName,true]; //Set my name so they can say my name. _unit setVariable ["restrained",false,true]; _unit setVariable ["Escorting",false,true]; _unit setVariable ["transporting",false,true]; _unit setVariable ["playerSurrender",false,true]; _unit setVariable ["steam64id",(getPlayerUID player),true]; //Set the UID. //close the esc dialog if (dialog) then { closeDialog 0; }; //Setup our camera view life_deathCamera = "CAMERA" camCreate (getPosATL _unit); showCinemaBorder false; life_deathCamera cameraEffect ["Internal","Back"]; createDialog "DeathScreen"; life_deathCamera camSetTarget _unit; life_deathCamera camSetRelPos [0,3.5,4.5]; life_deathCamera camSetFOV .5; life_deathCamera camSetFocus [50,0]; life_deathCamera camCommit 0; (findDisplay 7300) displaySetEventHandler ["KeyDown","if ((_this select 1) isEqualTo 1) then {true}"]; //Block the ESC menu //Create a thread for something? _unit spawn { private ["_maxTime","_RespawnBtn","_Timer"]; disableSerialization; _RespawnBtn = ((findDisplay 7300) displayCtrl 7302); _Timer = ((findDisplay 7300) displayCtrl 7301); if (LIFE_SETTINGS(getNumber,"respawn_timer") < 5) then { _maxTime = time + 5; } else { _maxTime = time + LIFE_SETTINGS(getNumber,"respawn_timer"); }; _RespawnBtn ctrlEnable false; waitUntil {_Timer ctrlSetText format [localize "STR_Medic_Respawn",[(_maxTime - time),"MM:SS"] call BIS_fnc_secondsToString]; round(_maxTime - time) <= 0 || isNull _this}; _RespawnBtn ctrlEnable true; _Timer ctrlSetText localize "STR_Medic_Respawn_2"; }; _unit spawn { private ["_requestBtn","_requestTime"]; disableSerialization; _requestBtn = ((findDisplay 7300) displayCtrl 7303); _requestBtn ctrlEnable false; _requestTime = time + 5; waitUntil {round(_requestTime - time) <= 0 || isNull _this}; _requestBtn ctrlEnable true; }; [] spawn life_fnc_deathScreen; //Create a thread to follow with some what precision view of the corpse. [_unit] spawn { private ["_unit"]; _unit = _this select 0; waitUntil {if (speed _unit isEqualTo 0) exitWith {true}; life_deathCamera camSetTarget _unit; life_deathCamera camSetRelPos [0,3.5,4.5]; life_deathCamera camCommit 0;}; }; //Make the killer wanted if (!isNull _killer && {!(_killer isEqualTo _unit)} && {!(side _killer isEqualTo west)} && {alive _killer}) then { if (vehicle _killer isKindOf "LandVehicle") then { if (life_HC_isActive) then { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life]; } else { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187V"] remoteExecCall ["life_fnc_wantedAdd",RSERV]; }; //Get rid of this if you don't want automatic vehicle license removal. if (!local _killer) then { [2] remoteExecCall ["life_fnc_removeLicenses",_killer]; }; } else { if (life_HC_isActive) then { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["HC_fnc_wantedAdd",HC_Life]; } else { [getPlayerUID _killer,_killer getVariable ["realname",name _killer],"187"] remoteExecCall ["life_fnc_wantedAdd",RSERV]; }; if (!local _killer) then { [3] remoteExecCall ["life_fnc_removeLicenses",_killer]; }; }; }; life_save_gear = [player] call life_fnc_fetchDeadGear; if (LIFE_SETTINGS(getNumber,"drop_weapons_onDeath") isEqualTo 0) then { _unit removeWeapon (primaryWeapon _unit); _unit removeWeapon (handgunWeapon _unit); _unit removeWeapon (secondaryWeapon _unit); }; //Killed by cop stuff... if (side _killer isEqualTo west && !(playerSide isEqualTo west)) then { life_copRecieve = _killer; //Did I rob the federal reserve? if (!life_use_atm && {CASH > 0}) then { [format [localize "STR_Cop_RobberDead",[CASH] call life_fnc_numberText]] remoteExecCall ["life_fnc_broadcast",RCLIENT]; CASH = 0; }; }; if (!isNull _killer && {!(_killer isEqualTo _unit)}) then { life_removeWanted = true; }; [_unit] call life_fnc_dropItems; life_action_inUse = false; life_hunger = 100; life_thirst = 100; life_carryWeight = 0; CASH = 0; life_is_alive = false; [] call life_fnc_hudUpdate; //Get our HUD updated. [player,life_settings_enableSidechannel,playerSide] remoteExecCall ["TON_fnc_manageSC",RSERV]; _victimNameSide = ""; _victimName = _unit getVariable["realname",""]; _killerSide = ""; _killerName = ""; if ( (!isNull _killer) && (_killer != player)) then { _killerName = _killer getVariable["realname",""]; }; if(_killerName == "") then { _TodNachrichtTot = [ "Noob %1 down!", "%1 ist abgekackt!", "%1 ist mausetot!", "Mit %1 ist es jetzt vorbei!"]; _deathmessage = selectRandom _TodNachrichtTot; _victimName = _unit getVariable["realname",""]; _victimNameSide = _victimNameSide + _victimName; NNToTmessage = format [_deathmessage, _victimNameSide]; } else { _TodNachricht = [ "%1 wurde von %2 getötet!", "%1 bekam von %2 einen Einlauf.", "%1 wurde von %2 durchbohrt!", "%1 wurde von %2 gebraten!"]; _killMessage = selectRandom _TodNachricht; _victimNameSide = _victimNameSide + _victimName; _killerSide = _killerSide + _killerName; private _NNToTmessage = format [_killMessage, _victimNameSide, _killerSide]; }; [0,_NNToTmessage] remoteExecCall ["life_fnc_broadcast",-2]; [0] call SOCK_fnc_updatePartial; [3] call SOCK_fnc_updatePartial; if (playerSide isEqualTo civilian) then { [4] call SOCK_fnc_updatePartial; };
teste mal so weis nicht ob sich was geändert hat aber ein Versuch ist es wert...
Welche Version nutzt du ??
-
Wenn ich jez aufm Server gehen will crqahst mein arma3 immer instant udn es steht dorten das das script_mrcos ned gefunden wird!
Hier miene Client Logs und meine Server Lo´gs: -
Funktioniert immernoch nicht nur am spawnen funktioniert es :c Währe mal Cool wenn wir über ts3 quatschen könnten das wir des fixen könne. Wenn ja schreib mir über pn,
-
Dann binde die Script Macro doch einfach ein ...
#include
Und der Pfad so wie in anderen Dateien auch ...
-