Einen wunderschönen guten Abend Community,
wie die Überschrift verraten lässt habe ich ein Problem mit meinem onDutyPD-Script.
Ich stehe im Marker, bin in der richtigen Fraktion und wenn ich /duty eingebe passierte einfach nichts. Laut Debugscript wäre kein Fehelr vorhanden.
Deshalb habe ich mir einen outPutChatbox erstellt, wie man im Script auch erkennen kann. Dieser kommt jedes mal.
Nun gehe ich davon aus, dass es an einem simplen Logikfehler hängt, allerdings suche ich diesen nun seit 30 Minuten und entdecke keinen Fehler.
Das Script
Spoiler anzeigen
----------------------------------------------------------|
---------| (C)2014 Copyright by Satler & Adrian |---------|
----------------------------------------------------------|
DutyMarkerPD = createMarker(299.48422,191.3292,1005.99,"cylinder",2,255,0,0, 50)
setElementInterior(DutyMarkerPD, 3)
DutySkinsPD = {[281]=true, [282]=true, [283]=true, [284]=true, [285]=true, [286]=true, [288]=true}
-- DUTY --
policeTable = {}
policeTable[1] = {skin= 280, weapon1 = 41, weapon2 = 23, weapon3 = 25, clip1 = 20, clip2 = 77, clip3 = 50 } -- Rang 1
policeTable[2] = {skin= 281, weapon1 = 23, weapon2 = 24, weapon3 = 27, clip1 = 77, clip2 = 500, clip3 = 450} -- Rang 2
policeTable[3] = {skin= 282, weapon1 = 23, weapon2 = 24, weapon3 = 29, clip1 = 77, clip2 = 500, clip3 = 400} -- Rang 3
policeTable[4] = {skin= 288, weapon1 = 23, weapon2 = 24, weapon3 = 31, clip1 = 77, clip2 = 500, clip3 = 450} -- Rang 4
policeTable[5] = {skin= 283, weapon1 = 23, weapon2 = 29, weapon3 = 31, clip1 = 77, clip2 = 450, clip3 = 450} -- Rang 5
function DutyPD (theCop, command)
if getElementData(theCop, "Fraktion") == 1 then
if getElementData(theCop,"Duty") == 0 then
if isElementWithinMarker(theCop, DutyMarkerPD) then
if getElementData(theCop, "Rank") == 1 then
setElementData(theCop,"Duty",1)
setPedArmor (theCop, 100)
takeAllWeapons (theCop)
setElementModel(theCop, policeTable[1].skin)
giveWeapon(theCop, policeTable[1].weapon1, policeTable[1].clip1)
giveWeapon(theCop, policeTable[1].weapon2, policeTable[1].clip2)
giveWeapon(theCop, policeTable[1].weapon3, policeTable[1].clip3)
elseif getElementData(theCop, "Rank") == 2 then
setElementData(theCop,"Duty",1)
setPedArmor (theCop, 100)
takeAllWeapons (theCop)
setElementModel(theCop, policeTable[2].skin)
giveWeapon(theCop, policeTable[2].weapon1, policeTable[2].clip1)
giveWeapon(theCop, policeTable[2].weapon2, policeTable[2].clip2)
giveWeapon(theCop, policeTable[2].weapon3, policeTable[2].clip3)
elseif getElementData(theCop, "Rank") == 3 then
setElementData(theCop,"Duty",1)
setPedArmor (theCop, 100)
takeAllWeapons (theCop)
setElementModel(theCop, policeTable[3].skin)
giveWeapon(theCop, policeTable[3].weapon1, policeTable[3].clip1)
giveWeapon(theCop, policeTable[3].weapon2, policeTable[3].clip2)
giveWeapon(theCop, policeTable[3].weapon3, policeTable[3].clip3)
elseif getElementData(theCop, "Rank") == 4 then
setElementData(theCop,"Duty",1)
setPedArmor (theCop, 100)
takeAllWeapons (theCop)
setElementModel(theCop, policeTable[4].skin)
giveWeapon(theCop, policeTable[4].weapon1, policeTable[4].clip1)
giveWeapon(theCop, policeTable[4].weapon2, policeTable[4].clip2)
giveWeapon(theCop, policeTable[4].weapon3, policeTable[4].clip3)
elseif getElementData(theCop, "Rank") == 5 then
setElementData(theCop,"Duty",1)
setPedArmor (theCop, 100)
takeAllWeapons (theCop)
setElementModel(theCop, policeTable[5].skin)
giveWeapon(theCop, policeTable[5].weapon1, policeTable[5].clip1)
giveWeapon(theCop, policeTable[5].weapon2, policeTable[5].clip2)
giveWeapon(theCop, policeTable[5].weapon3, policeTable[5].clip3)
end
outputChatBox("Du bist nun im Dienst!", theCop, 255, 255, 0)
outputChatBox("Drücke 'Z' zum tazern.", theCop, 255, 255, 255)
bindKey (theCop, "z", "down", tazer)
else
outputChatBox("Du kannst dich hier nicht umziehen!", theCop, 255, 0, 0)
end
elseif getElementData(theCop,"Duty") == 1 then
local skin = getElementData(theCop, "Skin")
if isElementWithinMarker( theCop, DutyMarkerPD) then
takeAllWeapons(theCop)
setElementModel(theCop, skin)
setPedArmor (theCop, 0)
setElementData(theCop,"Duty",0)
outputChatBox("Schönen Feierabend!", theCop, 255, 255, 0)
outputChatBox("Der Tazer ist nicht länger auf 'Z' festgelegt.", theCop, 255, 255, 255)
unbindKey(theCop, "z", "down", tazer)
else
outputChatBox("Du kannst dich hier nicht umziehen!", theCop, 255, 0, 0)
end
else
outputChatBox("Scriptfehler! Bitte an einen Administrator wenden!", theCop, 255, 0, 0)
end
else
outputChatBox("Du bist kein Beamter!", theCop, 255, 0, 0)
end
end
addCommandHandler("duty", DutyPD)
Alles anzeigen
Ich wäre sehr erfreut, wenn mir jemand von euch auf die Sprünge helfen kann. Sicher ist es, wie oben bereits erwähnt, ein total simpler und auffälliger Fehler.. *X(*
//EDIT: Sorry das mein Code hier so viele Leerzeilen enthält, kann ich mir gerade auch nicht erklären..