KonradDze
Wiek: 28 Na forum: 2344 dni Posty: 12
Nick w MP: DJ.PL
"NotPaladyn" napisał/a :Skrypt pr?buje ztriggerowa? event kt?ry nie istnieje, daj kod po stronie servera oraz clienta
Kod:
Server Side:
local blip = createBlip(-145.05, 1078.90, 20.49, 46,2,0,0,0,0,0,175)
local m1 = createMarker(-145.05, 1078.90, 20.49-1, 'cylinder', 1.2, 255,79,10) --Miejsce rozpocz?cia pracy
local t = createElement('text')
setElementPosition(t,-145.05, 1078.90, 20.49)
setElementData(t,"name","Kierowca autobusu\n\nZarobek:\nGracz: 15,000PLN do 25,000 PLN\nPremium: 25,000 PLN do 32,000 PLN\nPremium+: 32,000 PLN do 40,000 PLN\n\nWymagania:\nPrawo Jazdy kat. C")
local vehs = {}
local code = "Autobusy"
local zone = createColSphere ( -138.06, 1076.69, 19.74, 5 )
addEventHandler("onMarkerHit", m1, function(el, md)
--if getElementData(el, "player:srp") < 1000 then triggerClientEvent(el, 'onClientAddNotification', el, 'Nie posiadasz wystarczaj?co REP:#bf0101\n1000 REP', 'error') return end
if exports["pystories-ustawienia-praca"]:getVehicleLicense(el,"C") then triggerClientEvent(el, 'onClientAddNotification', el, 'Nie posiadasz zdanego prawa jazdy:#bf0101\nkat. C', 'error') return end
if getPedOccupiedVehicle(el) then return end
if not md or getElementType(el) ~= "player" or getPedOccupiedVehicle(el) then return end
if #getElementsWithinColShape(zone,"vehicle") >= 1 then outputChatBox("Parking zaj?ty czekaj a? wyjedzie!",el,255,255,255) return end
local x,y,z = getElementPosition(el)
local autbus = createVehicle(431, -138.39, 1076.17, 19.49, 0.0, 360.0, 2.6)
setVehicleColor(autbus, 255, 79, 10, 255, 255, 255)
setElementFrozen(el,true)
setElementData(autbus, "vehicle:fuel", 100)
setVehicleHandling(autbus, "maxVelocity", 160.0)
setElementData(autbus,"vehicle:desc","Praca dorywcza:\nKierowca autobusu miejskiego")
setElementData(el,"player:job",code)
setTimer(warpPedIntoVehicle,1000,1,el, autbus)
setTimer(setElementFrozen,1000,1,el, false)
triggerClientEvent(el, "STARTJobBus", resourceRoot, autbus)
vehs[el] = autbus
end)
addEvent("STOPJobBus", true)
addEventHandler("STOPJobBus", resourceRoot, function()
local pojazd = getPedOccupiedVehicle(localPlayer)
if pojazd then
destroyElement(pojazd)
end
end)
addEvent("destroyVeh", true)
addEventHandler("destroyVeh", getRootElement(),
function()
if vehs[source] then
if isElement(vehs[source]) then destroyElement(vehs[source]) end
end
end)
addEvent("onPlayerQuit", true)
addEventHandler ( "onPlayerQuit", getRootElement(), function()
if vehs[source] then
if isElement(vehs[source]) then destroyElement(vehs[source]) end
end
end)]
Client Side:
Kod:
local code = "Autobusy"
local districtsBus = {
{-96.21, 1094.53, 19.22, ""},
{-62.87, 1136.96, 19.18, ""},
{-76.89, 1202.26, 19.22, ""},
{-144.11, 1202.96, 19.20, ""},
{-211.25, 1202.73, 19.22, ""},
{-279.36, 1172.41, 19.22, ""},
{-279.03, 1110.90, 19.19, ""},
{-213.95, 1094.89, 19.22, ""},
{-155.67, 1084.31, 19.34, ""},
}
local jobTarget
local jobMarker
local jobVehicle
local blip
local maxTarget = #districtsBus
function finishJob()
if jobMarker and isElement(jobMarker) then
destroyElement(jobMarker)
destroyElement(blip)
jobMarker = nil
end
if jobTarget and isElement(jobTarget) then
destroyElement(jobTarget)
jobTarget = nil
jobTarget = 0
end
if getElementData(localPlayer,"player:job") == code then
setElementData(localPlayer,"player:job",false)
end
triggerServerEvent("destroyVeh", localPlayer)
end
addEventHandler ( "onClientPlayerWasted", getLocalPlayer(),finishJob)
addEvent("finishJob",true)
addEventHandler("finishJob",root,function(plr)
if plr ~= localPlayer then return end
finishJob()
end)
function busDriver(el, md)
if el ~= localPlayer or not md then return end
if jobTarget > maxTarget and getPedOccupiedVehicle(el) then return end
if jobTarget == maxTarget and not getPedOccupiedVehicle(el) then return end
local veh = getPedOccupiedVehicle(el)
if not (getElementModel(veh) == 431) then return false end
if jobTarget == #districtsBus then
finishJob()
destroyElement(blip)
destroyElement(jobMarker)
playSoundFrontEnd(5)
setElementData(el,"gracz:praca",false)
else
local veh = getPedOccupiedVehicle(el)
showMarker()
setElementData(veh, "komis:veh", true)
setTimer(function()
playSoundFrontEnd(12)
setElementData(veh, "komis:veh", false)
hajs = math.random(15000,25000)
rp = math.random(0,6)
rp2 = math.random(0,2)
kasa = math.random(25000,32000)
kasa2 = math.random(32000,40000)
if getElementData(localPlayer,"player:premium") then
triggerServerEvent("givePlayerMoney", localPlayer, kasa)
setElementData(el,"player:srp", getElementData(el,"player:srp")+rp)
triggerEvent('onClientAddNotification', localPlayer, 'Za dojechanie na przystanek otrzymujesz,\nwynagrodzenie: #00c005'..kasa..' $#FFFFFF oraz #00c005'..rp..' REP', 'success')
elseif getElementData(localPlayer, "player:premiumplus") then
triggerServerEvent("givePlayerMoney", localPlayer, kasa2)
setElementData(el,"player:srp", getElementData(el,"player:srp")+rp)
triggerEvent('onClientAddNotification', localPlayer, 'Za dojechanie na przystanek otrzymujesz,\nwynagrodzenie: #00c005'..kasa2..' $#FFFFFF oraz #00c005'..rp..' REP', 'success')
else
triggerServerEvent("givePlayerMoney", localPlayer, hajs)
setElementData(el,"player:srp", getElementData(el,"player:srp")+rp2)
triggerEvent('onClientAddNotification', localPlayer, 'Za dojechanie na przystanek otrzymujesz,\nwynagrodzenie: #00c005'..hajs..' $#FFFFFF oraz #00c005'..rp2..' REP', 'success')
end
end,4800,1)
end
end
function showMarker()
if jobMarker and isElement(jobMarker) then
local veh=getPedOccupiedVehicle(localPlayer)
if not veh then return end
if getVehicleController(veh) ~= localPlayer then return end
triggerEvent('onClientAddNotification', localPlayer, 'Dojecha?e? na przystanek#ff6600\n'..districtsBus[jobTarget][4]..'#FFFFFF\nodczekaj 5 sekund.', 'info')
setElementFrozen(veh, true)
toggleControl("enter_exit",false)
executeCommandHandler("swiatla_awaryjne")
setElementData(veh, "blokada:reczny", true)
setTimer(function()
setElementFrozen(veh, false)
triggerEvent('onClientAddNotification', localPlayer, 'Pasa?erowie skasowali bilety,\nudaj si? do nast?pnego przystanku#ff6600\n'..districtsBus[jobTarget][4]..'', 'info')
toggleControl("enter_exit",true)
executeCommandHandler("swiatla_awaryjne")
setElementData(veh, "blokada:reczny", false)
end, 5000, 1)
destroyElement(jobMarker)
destroyElement(blip)
jobMarker = nil
end
jobTarget = jobTarget + 1
jobMarker = createMarker(districtsBus[jobTarget][1], districtsBus[jobTarget][2], districtsBus[jobTarget][3], "checkpoint", 3, 0, 90, 255)
blip = createBlipAttachedTo(jobMarker, 41, 1, 0, 122, 255, 255, 0, 275)
if districtsBus[jobTarget+1] then
ile = districtsBus[jobTarget+1]
setMarkerTarget(jobMarker, ile[1], ile[2], ile[3])
end
addEventHandler("onClientMarkerHit", jobMarker, busDriver)
end
addEvent("STARTJobBus", true)
addEventHandler("STARTJobBus", resourceRoot, function(veh)
triggerEvent('onClientAddNotification', localPlayer, 'Pomy?lnie rozpocz?to prac?:#00c005\nKierowca autobusu miejskiego#FFFFFF\nUdaj si? na pierwszy przystanek', 'success')
jobVehicle = veh
jobTarget = 0
showMarker()
end)
addEventHandler("onClientResourceStop", resourceRoot, function()
if jobVehicle and getElementData(localPlayer, "player:job") then
setElementData(localPlayer, "player:job", false)
end
end)
addEventHandler("onClientVehicleStartExit", resourceRoot, function(plr, seat)
if seat == 0 then
if plr == localPlayer then
finishJob()
triggerEvent('onClientAddNotification', localPlayer, 'Pomy?lnie zako?czono prac?:#00c005\nKierowca autobusu miejskiego', 'success')
setElementPosition(localPlayer,-1750.61, 766.77, 24.89)
end
end
end)
addEventHandler("onClientVehicleExit", resourceRoot, function(plr, seat)
if seat == 0 then
if plr == localPlayer then
finishJob()
triggerEvent('onClientAddNotification', localPlayer, 'Pomy?lnie zako?czono prac?:#00c005\nKierowca autobusu miejskiego', 'success')
setElementPosition(localPlayer,-1750.61, 766.77, 24.89)
end
end
end)
[/code]