stevensalvaro Posted January 22, 2016 Share Posted January 22, 2016 Hello , I Have some problem when i try to addEvent on my script , It's say event not added serverside. Client THIS_RESOURCE = getThisResource(); ROOT_ELEMENT = getRootElement(); GUI = { button1 = false }; OnResourceStart = function(resource) if resource == THIS_RESOURCE then GUI.button1 = guiCreateStaticImage( 20, 200, 64, 64, "hud.png", false ) guiSetVisible(GUI.button1, false); end return; end OnResourceStop = function(resource) if resource == THIS_RESOURCE then if GUI.button1 ~= false then destroyElement(GUI.button1); end end return; end OnVehicleEnter = function(player, seat, jacked) -- source = vehicle_element if GUI.button1 ~= false then guiSetVisible(GUI.button1, true); end return; end OnVehicleExit = function(player, seat, jacked) -- source = vehicle_element if GUI.button ~= false then guiSetVisible(GUI.button1, false); end return; end OnGUIClick = function(button1, state, x, y) -- source = gui if state then if source == GUI.button1 and guiGetVisible(GUI.button1) == true then outputChatBox("You've clicked me!"); end end return; end addEventHandler("onClientResourceStart", ROOT_ELEMENT, OnResourceStart ); addEventHandler("onClientResourceStop", ROOT_ELEMENT, OnResourceStop ); addEventHandler("onClientVehicleEnter", ROOT_ELEMENT, OnVehicleEnter ); addEventHandler("onClientVehicleExit", ROOT_ELEMENT, OnVehicleExit ); addEventHandler("onClientGUIClick", ROOT_ELEMENT, OnGUIClick ); Server function toggleEngine(source, key, keystate) local veh = getPedOccupiedVehicle(source) local inVehicle = getElementData(source, "realinvehicle") if veh and inVehicle == 1 then local seat = getPedOccupiedVehicleSeat(source) if (seat == 0) then local model = getElementModel(veh) if not (enginelessVehicle[model]) then local engine = getElementData(veh, "engine") local vehID = getElementData(veh, "dbid") local vehKey = exports['global']:hasItem(source, 3, vehID) if engine == 0 then local vjob = tonumber(getElementData(veh, "job")) local job = getElementData(source, "job") local owner = getElementData(veh, "owner") local faction = tonumber(getElementData(veh, "faction")) local playerFaction = tonumber(getElementData(source, "faction")) if (vehKey) or (owner < 0) and (faction == -1) or (playerFaction == faction) and (faction ~= -1) or ((getElementData(source, "adminduty") or 0) == 1) then local fuel = getElementData(veh, "fuel") local broke = getElementData(veh, "enginebroke") if broke == 1 then outputChatBox("The engine is broken.", source) end blowVehicle(veh) elseif fuel >= 1 then toggleControl(source, 'brake_reverse', true) setVehicleEngineState(veh, true) exports['anticheat-system']:changeProtectedElementDataEx(veh, "engine", 1, false) elseif fuel < 1 then outputChatBox("This vehicle has no fuel.", source) end else outputChatBox("These metal boxes with wheels require keys to work.", source, 255, 0, 0) end else toggleControl(source, 'brake_reverse', false) setVehicleEngineState(veh, false) end end end end end So when i click the button , i call this function , but it's never happend Link to comment
stevensalvaro Posted January 22, 2016 Author Share Posted January 22, 2016 [solved] Client THIS_RESOURCE = getThisResource(); ROOT_ELEMENT = getRootElement(); GUI = { button1 = false }; OnResourceStart = function(resource) if resource == THIS_RESOURCE then GUI.button1 = guiCreateStaticImage( 20, 200, 64, 64, "hud.png", false ) guiSetVisible(GUI.button1, false); end return; end OnResourceStop = function(resource) if resource == THIS_RESOURCE then if GUI.button1 ~= false then destroyElement(GUI.button1); end end return; end OnVehicleEnter = function(player, seat, jacked) -- source = vehicle_element if GUI.button1 ~= false then guiSetVisible(GUI.button1, true); end return; end OnVehicleExit = function(player, seat, jacked) -- source = vehicle_element if GUI.button ~= false then guiSetVisible(GUI.button1, false); end return; end OnGUIClick = function(button1, state, x, y) -- source = gui if state then if source == GUI.button1 and guiGetVisible(GUI.button1) == true then triggerServerEvent("toggleEngine", localPlayer, localPlayer) end end return; end addEventHandler("onClientResourceStart", ROOT_ELEMENT, OnResourceStart ); addEventHandler("onClientResourceStop", ROOT_ELEMENT, OnResourceStop ); addEventHandler("onClientVehicleEnter", ROOT_ELEMENT, OnVehicleEnter ); addEventHandler("onClientVehicleExit", ROOT_ELEMENT, OnVehicleExit ); addEventHandler("onClientGUIClick", ROOT_ELEMENT, OnGUIClick ); Server function toggleEngine(source, key, keystate) local veh = getPedOccupiedVehicle(source) local inVehicle = getElementData(source, "realinvehicle") if veh and inVehicle == 1 then local seat = getPedOccupiedVehicleSeat(source) if (seat == 0) then local model = getElementModel(veh) if not (enginelessVehicle[model]) then local engine = getElementData(veh, "engine") local vehID = getElementData(veh, "dbid") local vehKey = exports['global']:hasItem(source, 3, vehID) if engine == 0 then local vjob = tonumber(getElementData(veh, "job")) local job = getElementData(source, "job") local owner = getElementData(veh, "owner") local faction = tonumber(getElementData(veh, "faction")) local playerFaction = tonumber(getElementData(source, "faction")) -- Anthony's fix - MAXIME FIXED ANTHONY'S MESS if (vehKey) or (owner < 0) and (faction == -1) or (playerFaction == faction) and (faction ~= -1) or ((getElementData(source, "duty_admin") or 0) == 1) then local fuel = getElementData(veh, "fuel") local broke = getElementData(veh, "enginebroke") if broke == 1 then triggerEvent('sendAme', source, "attempts to start the engine but fails.") outputChatBox("The engine is broken.", source) elseif exports.global:hasItem(veh, 74) then while exports.global:hasItem(veh, 74) do exports.global:takeItem(veh, 74) end blowVehicle(veh) elseif fuel > 0 then toggleControl(source, 'brake_reverse', true) setVehicleEngineState(veh, true) exports.anticheat:changeProtectedElementDataEx(veh, "engine", 1, false) exports.anticheat:changeProtectedElementDataEx(veh, "vehicle:radio", tonumber(getElementData(veh, "vehicle:radio:old")), true) exports.anticheat:changeProtectedElementDataEx(veh, "lastused", exports.datetime:now(), true) mysql:query_free("UPDATE vehicles SET lastUsed=NOW() WHERE id="..vehID) exports['vehicle-manager']:addVehicleLogs(vehID, "Started engine", source) exports.logs:dbLog("SYSTEM", 31, { veh, source } , "STARTED ENGINE") elseif fuel <= 0 then triggerEvent('sendAme', source, "attempts to turn the engine on and fails.") outputChatBox("This vehicle has no fuel.", source) end else outputChatBox("You require a key to start this vehicle.", source, 255, 0, 0) end else toggleControl(source, 'brake_reverse', false) setVehicleEngineState(veh, false) exports.anticheat:changeProtectedElementDataEx(veh, "engine", 0, false) exports.anticheat:changeProtectedElementDataEx(veh, "vehicle:radio", 0, true) end end end end end addEvent("toggleEngine", true) addEventHandler("toggleEngine", root, toggleEngine) addCommandHandler("engine", toggleEngine) -- s:mrgreen: --> Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now