- Offizieller Beitrag
Peace,
ich habe eben mal flott ein Universelles Job/Aktion System für einen Kollegen gescriptet, dabei ist das bei herum gekommen.
I want to share that Shit with you
Lua
--
-- Created by n0pe
--
local Vehicle = {} --> Vehicle Tabelle wird erstellt, um dem Spieler ein Fahrzeug zuzuweisen.
local reward = 1500 --> Dein "Reward" auf deutsch "Belohnung" für den erfolgreichen abschluss des "Jobs"
local jobName = "Drogentruck" --> Hier trägst du deinen Job Namen ein.
local startCommand = "startJob" --> Hier der Command und das ganze ding zu starten
local startMarkerX = 0 --> X Koordinate des StartMarkers
local startMarkerY = 0 --> Y Koordinate des StartMarkers
local startMarkerZ = 0 --> Z Koordinate des StartMarkers
local ID = 411 --> Fahrzeug ID
local vehicleSpawnX = 0 --> X Koordinate für den Spawn des Fahrzeugs
local vehicleSpawnY = 20 --> Y Koordinate für den Spawn des Fahrzeugs
local vehicleSpawnZ = 5 --> Z Koordinate für den Spawn des Fahrzeugs
local vehicleSpawnRot = 0 --> Z Koordinate für die Rotation des Fahrzeugs
local vehicleAbgabeX = 0 --> X Koordinate für den Abgabe Marker/Blip
local vehicleAbgabeY = 0 --> Y Koordinate für den Abgabe Marker/Blip
local vehicleAbgabeZ = 0 --> Z Koordinate für den Abgabe Marker/Blip
local allowedFactions = { --> Hier eine Tabelle mit allen Fraktionen! true steht für Erlaunis um den Job zu starten, false für KEINE Erlaunis
[1] = false,
[2] = false,
[3] = false,
[4] = false,
[5] = false,
[6] = false,
[7] = false,
[8] = false,
[9] = false,
[10] = false,
[11] = false,
[12] = false,
[13] = false,
}
--//
--|| NICHT ANFASSEN!
--\\
local startMarker = createMarker(startMarkerX, startMarkerY, startMarkerZ, "cylinder", 1, 255, 255, 0)
addEventHandler("onMarkerHit", startMarker, function(elem, dim)
if getElementType(elem) == "player" and not isPedInVehicle(elem) and dim then
if allowedFactions[vioGetElementData(elem, "fraktion")] then
outputChatBox("Tippe /"..startCommand.." um den "..jobName.." zu starten!", elem, 255, 255 ,0)
end
end
end)
local function startJob(player)
if allowedFactions[vioGetElementData(player, "fraktion")] then
if isElementWithinMarker(player, startMarker) then
Vehicle[player] = createVehicle(ID, vehicleSpawnX, vehicleSpawnY, vehicleSpawnZ, 0, 0, vehicleSpawnRot)
outputChatBox(jobName .. " wurde gestartet!", root, 120, 0, 0)
warpPedIntoVehicle(player, Vehicle[player])
local abgabeMarker = createMarker(vehicleAbgabeX, vehicleAbgabeY, vehicleAbgabeZ)
local abgabeBlip = createBlip(vehicleAbgabeX, vehicleAbgabeY, vehicleAbgabeZ)
addEventHandler("onVehicleExplode", Vehicle[player], function()
if isElement(abgabeMarker) then destroyElement(abgabeMarker) end
if isElement(abgabeBlip) then destroyElement(abgabeBlip) end
if isElement(source) then destroyElement(source) end
outputChatBox(jobName .. " wurde erfolgreich zerschlagen!", root, 120, 0, 0)
end)
addEventHandler("onMarkerHit", abgabeMarker, function(elem, dim)
if getElementType(elem) == "vehicle" and getElementModel(elem) == ID and dim then
local driver = getVehicleOccupant(elem)
vioSetElementData(driver, "money", vioGetElementData(driver, "money") + reward)
if isElement(abgabeMarker) then destroyElement(abgabeMarker) end
if isElement(abgabeBlip) then destroyElement(abgabeBlip) end
if isElement(elem) then destroyElement(elem) end
outputChatBox(jobName.. " wurde erfolgreich abgegeben!", root, 0, 120, 0)
end
end)
end
end
end
addCommandHandler(startCommand, startJob)
Alles anzeigen
Wenn irgendetwas nicht funktioniert, einfach melden
Have fun