-
Azt akarom, hogy 3 alapkocsi lespawnoljon, és ha felrobbannak respawnoljanak. Az a baj, hogy amikor fellépek a szerverre már egymás hegyén hátán van rengeteg autó.
Kód:
function Alapkocsi()
local alapkocsi1 = createVehicle(411, 61.015625 , -57.197265625 , 0.609375)
toggleVehicleRespawn(alapkocsi1, true)
local alapkocsi2 = createVehicle(411, 64.0302734375 , -63.6484375 + 10 , 0.609375)
toggleVehicleRespawn(alapkocsi2, true)
local alapkocsi3 = createVehicle(411, 68.33203125 , -69.7998046875 + 10, 0.609375)
toggleVehicleRespawn(alapkocsi3, true)
end
addEventHandler(\"onResourceStart\", getRootElement(), Alapkocsi)
-
Szia!
Nem teszteltem a kódod, de szerintem az lesz a baj, hogy az onResourceStart eventnél root van megadva, azaz ha 15 másik modot újraindítasz/elindítasz, a kocsispawnolást mindig meg fogja hívni. A getRootElementet cseréld ki erre: getResourceRootElement(getThisResource()) (ebben az esetben csak ennek a scriptnek az indulására hívódik meg az Alapkocsi funkciód).
-
Még egy problémám van. Azt írja : [2017-12-26 18:08:53] SCRIPT ERROR: scriptek/server.lua:27: \'then\' expected near \',\'
[2017-12-26 18:08:53] ERROR: Loading script failed: scriptek/server.lua:27: \'then\' expected near \',\'
[2017-12-26 18:08:53] ERROR: More than one default resource specified!
addEventHandler(\"onResourceStart\", getResourceRootElement(getThisResource()),
function()
createPickup(134.8515625, 1930.1376953125, 19.217227935791, 1239)
createPickup(135.3369140625, 1954.451171875, 19.424501419067, 1239)
end
)
addCommandHandler(\"kapu\",
function(player, command)
if getElementPosition(player) == 134.8515625, 1930.1376953125, 19.217227935791 then
setElementPosition(player, 135.3369140625, 1954.451171875, 19.424501419067)
elseif getElementPosition(player) == 135.3369140625, 1954.451171875, 19.424501419067 then
setElementPosition(player, 134.8515625, 1930.1376953125, 19.217227935791)
else
outputChatBox(\"Nem vagy a kapunál!\", player)
end
end
)
-
getElementPosition(player) == 134.8515625, 1930.1376953125, 19.217227935791
Ezzel lesz a baja, így szerintem nem lehet megadni egy feltételt, hogy vesszővel elválasztva több érték. A pozíciót 3 változóba tedd bele, és azokat hasonlítgasd.
-
Úgy is próbáltam, de ugyanez.
-
addEventHandler(\"onResourceStart\", getResourceRootElement(getThisResource()),
function()
createPickup(134.8515625, 1930.1376953125, 19.217227935791, 1239)
createPickup(135.3369140625, 1954.451171875, 19.424501419067, 1239)
end
)
addCommandHandler(\"kapu\",
function(player, command)
pX,pY,pZ = getElementPosition(player)
if pX,pY,pZ == 134.8515625, 1930.1376953125, 19.217227935791 then
setElementPosition(player, 135.3369140625, 1954.451171875, 19.424501419067)
elseif pX,pY,pZ == 135.3369140625, 1954.451171875, 19.424501419067 then
setElementPosition(player, 134.8515625, 1930.1376953125, 19.217227935791)
else
outputChatBox(\"Nem vagy a kapunál!\", player)
end
end
)
Szerintem igy jó, de ugye tudod hogy soha az életben nem fog senki pontosan úgy állni hogy ezek legyenek a kordinátái?
Használj markert.
-
addEventHandler(\"onResourceStart\", getResourceRootElement(getThisResource()),
function()
createPickup(134.8515625, 1930.1376953125, 19.217227935791, 1239)
createPickup(135.3369140625, 1954.451171875, 19.424501419067, 1239)
end
)
addCommandHandler(\"kapu\",
function(player, command)
pX,pY,pZ = getElementPosition(player)
if pX,pY,pZ == 134.8515625, 1930.1376953125, 19.217227935791 then
setElementPosition(player, 135.3369140625, 1954.451171875, 19.424501419067)
elseif pX,pY,pZ == 135.3369140625, 1954.451171875, 19.424501419067 then
setElementPosition(player, 134.8515625, 1930.1376953125, 19.217227935791)
else
outputChatBox(\"Nem vagy a kapunál!\", player)
end
end
)
Szerintem igy jó, de ugye tudod hogy soha az életben nem fog senki pontosan úgy állni hogy ezek legyenek a kordinátái?
Használj markert.
Vagy col-t. :) De jogos, ne akarj fix pozíciót megadni, inkább marker vagy col-t használj, mert abban akkor használható is lesz. :)