- Logdateien zur Fehleranalyse
- Ja, ich habe Logdateien meines Servers hochgeladen
Hallo,
Ich habe jetzt seit ca 2 Stunden probiert ein Ausweis script einzubinden, was auch super geklappt hat.
Nur leider habe ich das Problem, (was ich auch schon vorher hatte) dass bei den Cops alles angezeigt wird über dem Namen Rang, icon und Name aber bei den Medics nur Icon, Name und ANY überm Kopf steht aber ich verstehe nicht warum...
Habe schon einiges versucht leider alles ohne Erfolg und hoffe daher, dass mir jemand helfen kann.
Das ist meine fn_playertags.sqf in der habe ich schon einiges versucht allerdings alles ohne erflog.
Code
#include "..\..\script_macros.hpp"
/*
File: fn_playerTags.sqf
Author: Bryan "Tonic" Boardwine
Description:
Adds the tags above other players heads when close and have visible range.
*/
if (!life_settings_tagson) exitWith {};
private["_ui", "_units", "_masks"];
#define iconID 78000
#define scale 0.8
if (visibleMap || {!alive player} || {dialog}) exitWith {
500 cutText["", "PLAIN"];
};
_ui = uiNamespace getVariable["Life_HUD_nameTags", displayNull];
if (isNull _ui) then {
500 cutRsc["Life_HUD_nameTags", "PLAIN"];
_ui = uiNamespace getVariable["Life_HUD_nameTags", displayNull];
};
{ life_known_Players pushBackUnique _x; } forEach (units(group player));
_units = nearestObjects[(visiblePosition player),["Land_Pallet_MilBoxes_F","Land_Sink_F"],50];
{ if((player distance _x < 50) && {_x in life_known_Players}) then {_units pushBack _x};} foreach playableUnits;
_units = _units - [player];
_masks = LIFE_SETTINGS(getArray, "clothing_masks"); {
private "_text";
_idc = _ui displayCtrl(iconID + _forEachIndex);
if (!(lineIntersects[eyePos player, eyePos _x, player, _x]) && alive _x && {!isNil {_x getVariable "realname"}}) then {
_pos =
switch (typeOf _x) do {
case "Land_Pallet_MilBoxes_F":{
[visiblePosition _x select 0, visiblePosition _x select 1, (getPosATL _x select 2) + 1.5]
};
case "Land_Sink_F":{
[visiblePosition _x select 0, visiblePosition _x select 1, (getPosATL _x select 2) + 2]
};
default {
[visiblePosition _x select 0, visiblePosition _x select 1, ((_x modelToWorld(_x selectionPosition "head")) select 2) + .5]
};
};
_sPos = worldToScreen _pos;
_distance = _pos distance player;
if (!((headgear _x) in _masks || (goggles _x) in _masks || (uniform _x) in _masks)) then {
if (count _sPos > 1 && {
_distance < 15
}) then {
_text =
switch (true) do {
case (_x in (units group player) && playerSide == civilian):{
format["<t color='#00FF00'>%1</t>", (_x getVariable["realname", name _x])];
};
case (!isNil {
(_x getVariable "rank")
} && side _x == west):{
format["<img image='%1' size='1'></img> <t size='1.2' color='#318CE7'>%3<br/></t>%2",
switch ((_x getVariable "rank")) do {
case 2:{
"icons\cop\pma.paa"
};
case 3:{
"icons\cop\pm.paa"
};
case 4:{
"icons\cop\pom.paa"
};
case 5:{
"icons\cop\phm.paa"
};
case 6:{
"icons\cop\pka.paa"
};
case 7:{
"icons\cop\pk.paa"
};
case 8:{
"icons\cop\pok.paa"
};
case 9:{
"icons\cop\phk.paa"
};
case 10:{
"icons\cop\ehk.paa"
};
case 11:{
"icons\cop\mdw.paa"
};
case 12:{
"icons\cop\pt.paa"
};
case 13:{
"icons\cop\pa.paa"
};
case 14:{
"icons\cop\pal.paa"
};
case 15:{
"icons\cop\pr.paa"
};
case 16:{
"icons\cop\psd.paa"
};
case 17:{
"icons\cop\pd.paa"
};
default {
"icons\cop\prakti.paa"
};
},
_x getVariable["realname", name _x],
switch ((_x getVariable "rank")) do {
default {
"Polizeipraktikant"
};
case 2:{
"Polizeimeister Anwärter"
};
case 3:{
"Polizeimeister"
};
case 4:{
"Polizeiobermeister"
};
case 5:{
"Polizeihauptmeister"
};
case 6:{
"Polizeikommissar Anwärter"
};
case 7:{
"Polizeikommissar"
};
case 8:{
"Polizeioberkommissar"
};
case 9:{
"Polizeihauptkommissar"
};
case 10:{
"Erster Hauptkommissar"
};
case 11:{
"MDW"
};
case 12:{
"Polizei Trainer"
};
case 13:{
"Polizei Ausbilder"
};
case 14:{
"Polizei Ausbildungsleitung"
};
case 15:{
"Polizeirat"
};
case 16:{
"Stv. Polizeidirektor"
};
case 17:{
"Polizeidirektor"
};
}
]
};
case (side _x == independent):{
format["<t color='#FF0000'><img image='a3\ui_f\data\map\MapControl\hospital_ca.paa' size='1'></img> <t size='1.2' color='#FF0000'>%2<br/></t>%1",
_x getVariable["realname", name _x],
switch ((_x getVariable "medrank")) do {
case 2:{
"Ersthelfer"
};
case 3:{
"Rettungshelfer"
};
case 4:{
"Rettungsanitäter"
};
case 5:{
"Notfallsanitäter"
};
case 6:{
"ARS"
};
case 7:{
"Lehrrettungsassistent"
};
case 8:{
"ÄrztlicherLeiter"
};
case 9:{
"ÄrztlicherLeiter"
};
case 10:{
"ÄrztlicherLeiter"
};
case 11:{
"ÄrztlicherLeiter"
};
case 12:{
"ÄrztlicherLeiter"
};
case 13:{
"ÄrztlicherLeiter"
};
default {
"ÄrztlicherLeiter"
};
}
]
};
default {
if (!isNil {
(group _x) getVariable "gang_name"
}) then {
format["%1<br/><t size='0.8' color='#B6B6B6'>%2</t>", _x getVariable["realname", name _x], (group _x) getVariable["gang_name", ""]];
} else {
_x getVariable["realname", name _x];
};
};
};
_idc ctrlSetStructuredText parseText _text;
_idc ctrlSetPosition[_sPos select 0, _sPos select 1, 0.4, 0.65];
_idc ctrlSetScale scale;
_idc ctrlSetFade 0;
_idc ctrlCommit 0;
_idc ctrlShow true;
} else {
_idc ctrlShow false;
};
} else {
_idc ctrlShow false;
};
} else {
_idc ctrlShow false;
};
}
forEach _units;
Alles anzeigen
im Anhang auch noch Server und Client Logs
Vielen dank für die Hilfe
Mit freundlichen Grüßen
Johannes K.