- Logdateien zur Fehleranalyse
- Ja, ich habe Logdateien meines Servers hochgeladen
Hey,
ich habe mir ein Repair Job skript geschrieben. Mit diesem sollen User nach dem sie sich bei der Straßenmeisterei eine Ausrüstung geliehen haben, zerstörte Mapobjekte im Umkreis von 5m reparieren können, und dafür Geld bekommen
Leider funktioniert seit dem Einfügen dieses Skriptes keine Altis Life Hotkeys mehr (die aus der keyhandler).
Ich habe folgende Dateien erstellt / Einträge gemacht:
//Objekte reparieren (STRG + R)
case 19: {
if (_ctrlKey) then {
if(player getVariable "amc_duty_stat" OR player getVariable "repairjob") then {
[] spawn ylrpg_fnc_roadrepair;
} else if (!(player getVariable "amc_duty_stat") AND !(player getVariable "repairjob")) then {
["Du musst dir erst an der Straßenmeisterei eine Ausrüstung organisieren", "fast", "warning", "Straßenmeisterei"] call ylrpg_fnc_notification_system;
_handled = true;
};
};
#include "..\..\..\script_macros.hpp"
/*
Author: Dennis
Server: YourLife RPG
Description: Terrain Repair Job, 5m Umkreis
*/
_objects = nearestTerrainObjects [player, [], 5, false];
_objCount = 1;//{_object} count;
{
_x setDamage 0;
if(_x getVariable ['hidden_adm',false]) then {
[11,player,1,_x] remoteExecCall ['ton_fnc_rem_proxy',2];
};
} forEach _objects;
if(player getVariable "amc_duty_stat") then {
// Rechne die Vergütung aus (AMC)
_ammount = _objCount * 50;
BANK = BANK + _ammount;
[1] call SOCK_fnc_updatePartial;
// Informiere den AMCler
[
format[
"Du hast %1 Objekte im Umkreis von 5m erfolgreich reparieren können. Dafür hat dein Chef dir %2$ zusätzlich zu deinem Gehalt überwiesen! Das Geld wurde auf dein Bankkonto überwiesen.",
[_objCount] call life_fnc_numberText,
[_ammount] call life_fnc_numberText
],
"fast",
"info",
"Spielerinformation"
] call ylrpg_fnc_notification_system;
} else {
// Rechne die Vergütung aus (Zivilist)
_ammount = _objCount * 10;
BANK = BANK + _ammount;
[1] call SOCK_fnc_updatePartial;
// Informiere den Spieler
[
format[
"Du hast %1 Objekte im Umkreis von 5m erfolgreich reparieren können. Dafür hat dich der Bürgermeister mit %2$ belohnt! Das Geld wurde auf dein Bankkonto überwiesen.",
[_objCount] call life_fnc_numberText,
[_ammount] call life_fnc_numberText
],
"fast",
"info",
"Spielerinformation"
] call ylrpg_fnc_notification_system;
};
Alles anzeigen
#include "../../../script_macros.hpp"
/*
Author: Dennis
Server: YourLife RPG
Description: Getting the Repair Job
*/
if(player getVariable "repairjob") then {
player setVariable ["repairjob", false, true];
BANK = BANK + 1000;
[1] call SOCK_fnc_updatePartial;
["Du hast deine Ausrüstung der Straßenmeisterei zurück gegeben. Dein Pfand wurde dir zurück gezahlt", "fast", "info", "Straßenmeisterei"] call ylrpg_fnc_notification_system;
} else {
player setVariable ["repairjob", true, true];
BANK = BANK - 1000;
[1] call SOCK_fnc_updatePartial;
["Du hast dir von der Straßenmeisterei eine Ausrüstung geliehen. Dir wurden 1.000$ Pfand vom Konto abgezogen. Wenn du die Ausrüstung vor der Sonnenwende zurück bringst, bekomsmt du das Pfand zurück!", "fast", "info", "Straßenmeisterei"] call ylrpg_fnc_notification_system;
}
Alles anzeigen
Die fn_getrepairjob.sqf wird über eine Init in einem Infostand (Addaction) aufgerufen. Dieser Teil funktioniert auch, und die variable wird auch ordnungsgemäß gesetzt.
Im Anhang sind die Server- und Clientlogs
Mir ist bekannt das hier ein Fehler mit einem Admin Duty system angezeigt wird. Dieser wurde bereits behoben - ich war nur noch nicht auf dem Server für neue Logs.
An sich ist es aber ausgeschlossen, das dieses System für den Fehler mit dem KeyHandler verantwortlich ist, da dies über 24 Stunden nach dem Auftreten des Fehlers überhaupt erst entstanden ist.