Witam chcia? bym zmieni? aby nie respi?y si? po?ary losowo lecz wszystkie naraz w tabeli, gdy nast?pnie zrobie drug? table to ona dziala tak ?e od ugaszenia jednej tabeli po 3 min odrespia si? ponownie
marcin778, Dobra dzieki to pomog?o zdaje mi si? ale ja bym chcia? aby si? respi?y po?ary ca?? tabel? jak narazie wygl?da to tak powiedz co mam dopisa? albo pom?z
local fireLocations = {
{-1151.7001953125,1096.9519042969,38.993347167969},
}
local fireLocations1 = {
{-1134.8781738281,1131.0308837891,37.816299438477},
}
function unpackFires ()
return unpack ( fireLocations [ ( #fireLocations ) ] )
end
function scriptCreateFire ( player, command )
if isFireFighter == false then return end
local x, y, z = unpackFires()
fire = createFire( x, y, z)
end
setTimer(scriptCreateFire, 10000 * 5, 0)
addCommandHandler ( "stworz.ogien", scriptCreateFire )
marcin778, Tak pozary maj? si? pojawia? odrazu po starcie skryptu a jak strazak zgasi cala tabele to ta tabela odrespia sie po 30 min calutka
chodzi mi ?e tabela jedna respi sie osobno niz tabela druga na pewno wiesz o co mi chodzi.
local fireModel = 2023
local fires = {}
addEvent("onFireExtinguished",true)
addEvent("onFireCreate",true)
local function isFireNearby(x,y,z)
local cs=createColSphere(x,y,z,3)
local obiekty=getElementsWithinColShape(cs, "object")
destroyElement(cs)
for i,v in ipairs(obiekty) do
if (getElementModel(v)==fireModel) then return true end
end
return false
end
function createFire(x,y,z,d,i)
if (isFireNearby(x,y,z,d,i)) then return nil end
local fireElem = createObject(fireModel,x,y,z)
setElementCollisionsEnabled(fireElem,false)
local col = createColSphere(x,y,z+1,2)
setElementParent(col, fireElem)
setElementData(fireElem, "ts", getTickCount(), false)
setElementData(fireElem,"fire:Endvalue",math.random(40,80))
local blip = createBlipAttachedTo ( fireElem, 0, 1, 0, 0, 0, 255, 0, 275.0, root )
fires[fireElem] = {fireElem,col,blip}
addEventHandler("onColShapeHit",col,setFire)
if (d) then
setElementDimension(fireElem, d)
setElementDimension(col, d)
end
if (i) then
setElementInterior(fireElem, i)
setElementInterior(col, i)
end
return fireElem
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "player" then
setPedOnFire(elem,true)
end
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "vehicle" then
setElementHealth(elem,299)
end
end
function fireExtinguished(fireElem)
if (not fires[fireElem]) then return end
local firedValue = getElementData(fireElem,"fire:Endvalue")
setElementData(fireElem,"fire:Endvalue",firedValue-math.random(3,10))
if firedValue <= 0 then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
triggerEvent("onFireExtinguished",client,client)
end
end
addEvent("fireExtinguished",true)
addEventHandler("fireExtinguished",root,fireExtinguished)
addEventHandler("onDebugMessage", getRootElement(),
function(message, level, file, line)
if file == "synced_fire" then
cancelEvent()
end
end)
local fireLocations = {
{-1151.7001953125,1096.9519042969,38.993347167969},
}
local fireLocations1 = {
{-1134.8781738281,1131.0308837891,37.816299438477},
}
function unpackFires ()
return unpack ( fireLocations [ ( #fireLocations ) ] )
return unpack ( fireLocations1 [ ( #fireLocations1 ) ] )
end
function scriptCreateFire ( player, command )
if isFireFighter == false then return end
local x, y, z = unpackFires()
fire = createFire( x, y, z)
end
setTimer(scriptCreateFire, 10000 * 5, 0)
addCommandHandler ( "stworz.ogien", scriptCreateFire )
local function extinguishExpiredFires()
for i,v in ipairs(getElementsByType("object", resourceRoot)) do
local ts=getElementData(v,"ts")
if (ts and getTickCount()-ts<1000*3600*6) then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
end
end
end
setTimer(extinguishExpiredFires, 1000*3600, 0)
function isFireFighter()
local result = false
for i,element in ipairs(getElementsByType("player")) do
if (getElementData(element,"gracz:frakcja") == "PSP")then
result = true
end
end
return result
end
marcin778, Dobra zrobi?em co m?wi?e? po?ar si? pojawia lecz pojawia si? tylko jeden p?omien nie 3 tak jak powinny
local fireModel = 2023
local fires = {}
addEvent("onFireExtinguished",true)
addEvent("onFireCreate",true)
local function isFireNearby(x,y,z)
local cs=createColSphere(x,y,z,3)
local obiekty=getElementsWithinColShape(cs, "object")
destroyElement(cs)
for i,v in ipairs(obiekty) do
if (getElementModel(v)==fireModel) then return true end
end
return false
end
function createFire(x,y,z,d,i)
if (isFireNearby(x,y,z,d,i)) then return nil end
local fireElem = createObject(fireModel,x,y,z)
setElementCollisionsEnabled(fireElem,false)
local col = createColSphere(x,y,z+1,2)
setElementParent(col, fireElem)
setElementData(fireElem, "ts", getTickCount(), false)
setElementData(fireElem,"fire:Endvalue",math.random(40,80))
local blip = createBlipAttachedTo ( fireElem, 0, 1, 0, 0, 0, 255, 0, 275.0, root )
fires[fireElem] = {fireElem,col,blip}
addEventHandler("onColShapeHit",col,setFire)
if (d) then
setElementDimension(fireElem, d)
setElementDimension(col, d)
end
if (i) then
setElementInterior(fireElem, i)
setElementInterior(col, i)
end
return fireElem
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "player" then
setPedOnFire(elem,true)
end
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "vehicle" then
setElementHealth(elem,299)
end
end
function fireExtinguished(fireElem)
if (not fires[fireElem]) then return end
local firedValue = getElementData(fireElem,"fire:Endvalue")
setElementData(fireElem,"fire:Endvalue",firedValue-math.random(3,10))
if firedValue <= 0 then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
triggerEvent("onFireExtinguished",client,client)
end
end
addEvent("fireExtinguished",true)
addEventHandler("fireExtinguished",root,fireExtinguished)
addEventHandler("onDebugMessage", getRootElement(),
function(message, level, file, line)
if file == "synced_fire" then
cancelEvent()
end
end)
local fireLocations = {
{-1151.7001953125,1096.9519042969,38.993347167969},
{-1151.4675292969,1093.1549072266,39.115737915039},
{-1155.5012207031,1096.3143310547,39.128028869629},
}
function unpackFires ()
return unpack ( fireLocations [ ( #fireLocations ) ] )
end
function scriptCreateFire ( player, command )
if isFireFighter == false then return end
local x, y, z = unpackFires()
fire = createFire( x, y, z)
end
addCommandHandler ( "stworz.ogien", scriptCreateFire )
local function extinguishExpiredFires()
for i,v in ipairs(getElementsByType("object", resourceRoot)) do
local ts=getElementData(v,"ts")
if (ts and getTickCount()-ts<1000*3600*6) then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
end
end
end
setTimer(extinguishExpiredFires, 1000*3600, 0)
function isFireFighter()
local result = false
for i,element in ipairs(getElementsByType("player")) do
if (getElementData(element,"gracz:frakcja") == "PSP")then
result = true
end
end
return result
end
setTimer(function()
scriptCreateFire()
end, 2*1000, 0)
marcin778, Zrobi?em co kaza?es ale nadal jest co? nie tak :
Ci?gle respi si? tylko jeden p?omie? nie trzy ja powinny
local fireModel = 2023
local fires = {}
addEvent("onFireExtinguished",true)
addEvent("onFireCreate",true)
local function isFireNearby(x,y,z)
local cs=createColSphere(x,y,z,3)
local obiekty=getElementsWithinColShape(cs, "object")
destroyElement(cs)
for i,v in ipairs(obiekty) do
if (getElementModel(v)==fireModel) then return true end
end
return false
end
function createFire(x,y,z,d,i)
if (isFireNearby(x,y,z,d,i)) then return nil end
local fireElem = createObject(fireModel,x,y,z)
setElementCollisionsEnabled(fireElem,false)
local col = createColSphere(x,y,z+1,2)
setElementParent(col, fireElem)
setElementData(fireElem, "ts", getTickCount(), false)
setElementData(fireElem,"fire:Endvalue",math.random(40,80))
local blip = createBlipAttachedTo ( fireElem, 0, 1, 0, 0, 0, 255, 0, 275.0, root )
fires[fireElem] = {fireElem,col,blip}
addEventHandler("onColShapeHit",col,setFire)
if (d) then
setElementDimension(fireElem, d)
setElementDimension(col, d)
end
if (i) then
setElementInterior(fireElem, i)
setElementInterior(col, i)
end
return fireElem
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "player" then
setPedOnFire(elem,true)
end
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "vehicle" then
setElementHealth(elem,299)
end
end
function fireExtinguished(fireElem)
if (not fires[fireElem]) then return end
local firedValue = getElementData(fireElem,"fire:Endvalue")
setElementData(fireElem,"fire:Endvalue",firedValue-math.random(3,10))
if firedValue <= 0 then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
triggerEvent("onFireExtinguished",client,client)
end
end
addEvent("fireExtinguished",true)
addEventHandler("fireExtinguished",root,fireExtinguished)
addEventHandler("onDebugMessage", getRootElement(),
function(message, level, file, line)
if file == "synced_fire" then
cancelEvent()
end
end)
local fireLocations = {
{-1151.7001953125,1096.9519042969,38.993347167969},
{-1151.4675292969,1093.1549072266,39.115737915039},
{-1155.5012207031,1096.3143310547,39.128028869629},
}
local function extinguishExpiredFires()
for i,v in ipairs(getElementsByType("object", resourceRoot)) do
local ts=getElementData(v,"ts")
if (ts and getTickCount()-ts<1000*3600*6) then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
end
end
end
setTimer(extinguishExpiredFires, 1000*3600, 0)
function isFireFighter()
local result = false
for i,element in ipairs(getElementsByType("player")) do
if (getElementData(element,"gracz:frakcja") == "PSP")then
result = true
end
end
return result
end
setTimer(function()
for i,v in pairs(fireLocations) do
createFire(v[1], v[2], v[3])
end
end, 2*1000, 0)
marcin778, Dobra naprawi?em ale bym chcia? teraz doda? aby respi?a si? druga tabela typu
local fireLocations1 = {
{-1127.2774658203,1104.2230224609,38.090278625488},
{-1118.0264892578,1105.7307128906,37.873752593994},
{-1118.2703857422,1118.2364501953,37.607929229736},
}
Co mam dopisa? tutaj :
setTimer(function()
for i,v in pairs(fireLocations) do
createFire(v[1], v[2], v[3])
end
end, 2*3600000, 0)
addCommandHandler ( "stworz.ogien", fireLocations )
A i nie dzia?a mi komenda a chcia? bym aby na ta komende respi?y si? wszystkie po?ary
function all()
setTimer(function()
for i,v in pairs(fireLocations) do
createFire(v[1], v[2], v[3])
end
for index, value in pairs(fireLocations1) do
createFire(value[1], value[2], value[3])
end
end, 2*3600000, 0)
end
addCommandHandler("stworz:ogien", function()
all()
end)
Po wpisaniu komendy stworz? sie po?ary, nie po starcie skryptu.
marcin778, W debugscript 3 nic nie wyskakuje a po wpisaniu owej komendy aby respi? si? po?ar po?ar si? nie respi.
local fireModel = 2023
local fires = {}
addEvent("onFireExtinguished",true)
addEvent("onFireCreate",true)
local function isFireNearby(x,y,z)
local cs=createColSphere(x,y,z,3)
local obiekty=getElementsWithinColShape(cs, "object")
destroyElement(cs)
for i,v in ipairs(obiekty) do
if (getElementModel(v)==fireModel) then return true end
end
return false
end
function createFire(x,y,z,d,i)
if (isFireNearby(x,y,z,d,i)) then return nil end
local fireElem = createObject(fireModel,x,y,z)
setElementCollisionsEnabled(fireElem,false)
local col = createColSphere(x,y,z+1,2)
setElementParent(col, fireElem)
setElementData(fireElem, "ts", getTickCount(), false)
setElementData(fireElem,"fire:Endvalue",math.random(40,80))
local blip = createBlipAttachedTo ( fireElem, 0, 1, 0, 0, 0, 255, 0, 275.0, root )
fires[fireElem] = {fireElem,col,blip}
addEventHandler("onColShapeHit",col,setFire)
if (d) then
setElementDimension(fireElem, d)
setElementDimension(col, d)
end
if (i) then
setElementInterior(fireElem, i)
setElementInterior(col, i)
end
return fireElem
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "player" then
setPedOnFire(elem,true)
end
end
function setFire(elem,dim)
if not dim then return end
if not elem or not isElement(elem) then return end
if getElementType(elem) == "vehicle" then
setElementHealth(elem,299)
end
end
function fireExtinguished(fireElem)
if (not fires[fireElem]) then return end
local firedValue = getElementData(fireElem,"fire:Endvalue")
setElementData(fireElem,"fire:Endvalue",firedValue-math.random(3,10))
if firedValue <= 0 then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
triggerEvent("onFireExtinguished",client,client)
end
end
addEvent("fireExtinguished",true)
addEventHandler("fireExtinguished",root,fireExtinguished)
addEventHandler("onDebugMessage", getRootElement(),
function(message, level, file, line)
if file == "synced_fire" then
cancelEvent()
end
end)
local fireLocations = {
{-1151.7001953125,1096.9519042969,38.993347167969},
{-1151.4675292969,1093.1549072266,39.115737915039},
{-1155.5012207031,1096.3143310547,39.128028869629},
}
local fireLocations1 = {
{-1127.2774658203,1104.2230224609,38.090278625488},
{-1118.0264892578,1105.7307128906,37.873752593994},
{-1118.2703857422,1118.2364501953,37.607929229736},
}
local function extinguishExpiredFires()
for i,v in ipairs(getElementsByType("object", resourceRoot)) do
local ts=getElementData(v,"ts")
if (ts and getTickCount()-ts<1000*3600*6) then
destroyElement(fires[fireElem][1])
destroyElement(fires[fireElem][3])
fires[fireElem] = nil
end
end
end
setTimer(extinguishExpiredFires, 1000*3600, 0)
function isFireFighter()
local result = false
for i,element in ipairs(getElementsByType("player")) do
if (getElementData(element,"gracz:frakcja") == "PSP")then
result = true
end
end
return result
end
function all()
setTimer(function()
for i,v in pairs(fireLocations) do
createFire(v[1], v[2], v[3])
end
for index, value in pairs(fireLocations1) do
createFire(value[1], value[2], value[3])
end
end, 2*3600000, 0)
end
addCommandHandler("stworz:ogien", function()
all()
end)
marcin778, Teraz wygl?da to tak ale nadal nic nie wykakuje w debugscript 3 i komenda nie respi owych po?ar?w :
function all()
setTimer(function()
for i,v in pairs(fireLocations) do
createFire(v[1], v[2], v[3])
end
for index, value in pairs(fireLocations1) do
createFire(value[1], value[2], value[3])
end
end, 2*3600000, 0)
end
addCommandHandler("stworz:ogien", all)
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach