Hallo,
ich habe da ein Problem mit onElementClicked..
Und zwar folgendes:
Wenn ein Polizist einen bestimmten Ped anklickt soll ein Fenster geöffnet werden.
Dies funktioniert auch einwandfrei.
Nur wenn der Spieler bei diesem Fenster auf "duty" klickt passiert nichts.
Script:
Das mit dem anklicken:
Spoiler anzeigen
Lua
function clickped( theButton, theState, thePlayer )
if theButton == "left" and theState == "down" then
if getElementType(source) == "ped" then
if source == dutyped then
if getElementData(thePlayer, "fraktion") == "Polizei" then
triggerClientEvent(thePlayer, "openduty", thePlayer)
end
end
end
end
end
addEventHandler( "onElementClicked", getRootElement(), clickped )
Alles anzeigen
Hier soll vom GUI aus getriggert werden:
Spoiler anzeigen
Lua
function buttonduty ()
if source == dutybutton3 then
showCursor(false)
guiSetVisible(duty, false)
elseif source == dutybutton1 then
triggerServerEvent("setDutyPlayer", localPlayer, localPlayer)
showCursor(false)
guiSetVisible(duty, false)
end
end
addEventHandler("onClientGUIClick", getRootElement(), buttonduty)
Alles anzeigen
Und die duty-Funktion:
Spoiler anzeigen
Lua
function dutyplayer (source)
local acc = getPlayerAccount(source)
if acc then
if getElementData(source, "duty") == 1 then
local rank = getAccountData(acc, "keks.fraktionrang")
if rank == "1" then
setElementModel(source, 280)
setAccountData(acc, "keks.skin", getAccountData(acc, "keks.skin"))
setElementData(source, "duty", 1)
elseif rank == "2" then
setElementModel(source, 281)
setAccountData(acc, "keks.skin", getAccountData(acc, "keks.skin"))
setElementData(source, "duty", 1)
elseif rank == "3" then
setElementModel(source, 282)
setAccountData(acc, "keks.skin", getAccountData(acc, "keks.skin"))
setElementData(source, "duty", 1)
elseif rank == "4" then
setElementModel(source, 283)
setAccountData(acc, "keks.skin", getAccountData(acc, "keks.skin"))
setElementData(source, "duty", 1)
elseif rank == "5" then
setElementModel(source, 288)
setAccountData(acc, "keks.skin", getAccountData(acc, "keks.skin"))
setElementData(source, "duty", 1)
end
else
setElementModel(source, getAccountData(acc, "keks.skin"))
setElementData(source, "duty", 0)
end
end
end
addEvent("setDutyPlayer", true)
addEventHandler("setDutyPlayer", getRootElement(), dutyplayer)
Alles anzeigen
Ich selber vermute den Fehler beim triggern odern anklicken..
Ich habe schon einiges probiert, bloß nichts funktionierte.
Müsste sonst einen Marker vors Ped setzen und halt onMarkerHit benutzen - dass hatte ich aber nicht wirklich vor