Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2016-07-01, 01:06


OskarYT

Mapper MTA






Wiek: 26
Na forum: 4245 dni
Posty: 267
Nick w MP: Kaczorek2306

Piwa: 1230

Respekt: 85,3

local fireModel 2023
local fires = {}
addEvent("onFireExtinguished",true)
addEvent("onFireCreate",true)


local function isFireNearby(x,y,z)    -- todo d,i
  local cs=createColSphere(x,y,z,3)
  local obiekty=getElementsWithinColShape(cs"object")
  destroyElement(cs)
  for i,v in ipairs(obiekty) do
      if (getElementModel(v)==fireModelthen 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(colfireElem)
    setElementData(fireElem"ts"getTickCount(), false)
    setElementData(fireElem,"fire:Endvalue",math.random(40,80)) 
    local blip createBlipAttachedTo fireElem020002550275.0root )
    fires[fireElem] = {fireElem,col,blip}
    addEventHandler("onColShapeHit",col,setFire)
    if (dthen
      setElementDimension(fireElemd)
      setElementDimension(cold)
    end
    if (ithen
      setElementInterior(fireElemi)
      setElementInterior(coli)
    end
    return fireElem
end

function setFire(elem,dim)
    if not dim then return end
    if not elem or not isElement(elemthen 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(elemthen 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(messagelevelfileline)
if file == "synced_fire" then
cancelEvent()
end
end)

local fireLocations =
{
{-1987.321163.4845.45},
{-1992.21,1160.10,46.80},
{-1988.91,1158.65,45.45},
{-1985.55,1162.96,45.45}, ---OBOK KO?CIO?A k****
{-1491.10,2692.13,55.84},
{-1498.39,2692.12,55.84},
{-1481.75,2702.71,56.25},
{-1475.06,2704.89,55.84}, --ELEQUABRADOS
{811.37,2545.90,31.36},
{818.24,2530.94,31.45},
{818.56,2510.98,29.34},
{829.83,2539.08,30.87},
{824.69,2547.80,30.81}, ---OBOK LV
{856.91,297.96,19.98},    
{859.37,288.24,20.01},    
{874.11,286.16,21.52},    
{871.36,301.26,20.98},    
{864.23,311.65,20.05},    
{860.90,321.35,20.13},    
{848.29,326.49,20.19},    
{838.35,320.53,20.51},    
{828.07,313.47,21.56},    
{814.50,313.07,21.31},    
{-2688.97205.514.34},        
}
 
function unpackFires ()
    return unpack fireLocations math.random #fireLocations ) ] )
end
 
function scriptCreateFire playercommand )
 --     destroyElement fireBlip )
      if isFireFighter == false then return end
      local xyunpackFires() 
      fire createFirexyz)
end
setTimer(scriptCreateFire10000 50)
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*6then
    destroyElement(fires[fireElem][1])
    destroyElement(fires[fireElem][3])
    fires[fireElem] = nil
    end
  end
end
setTimer(extinguishExpiredFires1000*36000)


function isFireFighter()
local result false
    for i,element in ipairs(getElementsByType("player")) do
        if (getElementData(element,"player:duty") == "PSP")then
            result true
        end
   end
return result
end

function getMyData thePlayercommand )
    local data getAllElementData thePlayer )     -- get all the element data of the player who entered the command
    for kv in pairs data ) do                    -- loop through the table that was returned
        outputConsole .. ": " .. tostring ) )             -- print the name (k) and value (vof each element datawe need to make the value a stringsince it can be of any data type
    end
end
addCommandHandler "elemdata"getMyData )


Chcia? bym zrobi? ?e zamiast ka?dy p?omie? si? po kolei zapala to bym chcia? zrobi? co? takiego ?e jak math.random randomowo wybierze jaki? po?ar to si? zaplalaj? one czylu na przyk?ad :

local pozar1 =
{
{-1987.321163.4845.45},
{-1992.21,1160.10,46.80},
{-1988.91,1158.65,45.45},
{-1985.55,1162.96,45.45}, 
{-1491.10,2692.13,55.84},
{-1498.39,2692.12,55.84},
}


local pozar2 =
{
{-1987.321163.4845.45},
{-1992.21,1160.10,46.80},
{-1988.91,1158.65,45.45},
{-1985.55,1162.96,45.45}, 
{-1491.10,2692.13,55.84},
{-1498.39,2692.12,55.84},
}


jak mam to uj?? ?e raz na 20 min zaplala si? jeden z tych pozar?w ?

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-01, 11:07


eject

kurdebele






Wiek: 30
Na forum: 3659 dni
Posty: 182
Nick w MP: EjecT

Piwa: 2456

Respekt: 85,8

Ostrzeżeń: 60%
Kod:

for i,v in ipairs(fireLocations) do
local pozar = math.random(1,24)
if pozar == 1 then
createFire(v[1],v[2],v[3], 4)
end
if pozar == 2 then
createFire(v[1],v[2],v[3], 4)
end
-- I tak do 24


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-01, 15:10


_Haze

Peace Yo!






Wiek: 24
Na forum: 4184 dni
Posty: 1648
Nick w MP: Haze

Piwa: 2628

Respekt: 1020
Respekt: 1020

hmmm
daj

 local pozar math.random(1,#pozar1)
 createFire(v[1][pozar],v[2][pozar],v[3][pozar], 4


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-07-01, 16:05


OskarYT

Mapper MTA






Wiek: 26
Na forum: 4245 dni
Posty: 267
Nick w MP: Kaczorek2306

Piwa: 1230

Respekt: 85,3

Hazmudex, troszk? zedytowa?em skrypt ale wyskoczy? mi nowy b??d prosi? bym o pomoc w jego rozwi?zaniu
local fireModel 2023
local fires = {}
addEvent("onFireExtinguished",true)
addEvent("onFireCreate",true)


local function isFireNearby(x,y,z)    -- todo d,i
  local cs=createColSphere(x,y,z,3)
  local obiekty=getElementsWithinColShape(cs"object")
  destroyElement(cs)
  for i,v in ipairs(obiekty) do
      if (getElementModel(v)==fireModelthen 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(colfireElem)
    setElementData(fireElem"ts"getTickCount(), false)
    setElementData(fireElem,"fire:Endvalue",math.random(40,80)) 
    local blip createBlipAttachedTo fireElem020002550275.0root )
    fires[fireElem] = {fireElem,col,blip}
    addEventHandler("onColShapeHit",col,setFire)
    if (dthen
      setElementDimension(fireElemd)
      setElementDimension(cold)
    end
    if (ithen
      setElementInterior(fireElemi)
      setElementInterior(coli)
    end
    return fireElem
end

function setFire(elem,dim)
    if not dim then return end
    if not elem or not isElement(elemthen 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(elemthen 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(messagelevelfileline)
if file == "synced_fire" then
cancelEvent()
end
end)

local pozar1 =
{
{824.69,2547.80,30.81}, ---OBOK LV
{856.91,297.96,19.98},    
{859.37,288.24,20.01},    
{874.11,286.16,21.52},    
{871.36,301.26,20.98},    
{864.23,311.65,20.05},    
{860.90,321.35,20.13},    
{848.29,326.49,20.19},    
{838.35,320.53,20.51},    
{828.07,313.47,21.56},    
{814.50,313.07,21.31},    
{-2688.97205.514.34},        
}

local pozar2 = 
{
{860.90,321.35,20.13},    
{848.29,326.49,20.19},    
{838.35,320.53,20.51},    
{828.07,313.47,21.56},    
{814.50,313.07,21.31},    
{-2688.97205.514.34},
}
 
for i,v in ipairs(pozar1pozar2) do
local pozar math.random(1,24)
if pozar == 1 then
createFire(v[1],v[2],v[3], 4)
end
if pozar == 2 then
createFire(v[1],v[2],v[3], 4)
end
 
function scriptCreateFire playercommand )
 --     destroyElement fireBlip )
      if isFireFighter == false then return end
      local xyunpackFires() 
      fire createFirexyz)
end
setTimer(scriptCreateFire10000 50)
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*6then
    destroyElement(fires[fireElem][1])
    destroyElement(fires[fireElem][3])
    fires[fireElem] = nil
    end
  end
end
setTimer(extinguishExpiredFires1000*36000)


function isFireFighter()
local result false
    for i,element in ipairs(getElementsByType("player")) do
        if (getElementData(element,"player:duty") == "PSP")then
            result true
        end
   end
return result
end

function getMyData thePlayercommand )
    local data getAllElementData thePlayer )     -- get all the element data of the player who entered the command
    for kv in pairs data ) do                    -- loop through the table that was returned
        outputConsole .. ": " .. tostring ) )             -- print the name (k) and value (vof each element datawe need to make the value a stringsince it can be of any data type
    end
end
addCommandHandler "elemdata"getMyData )
end



Kliknij aby zobaczy? zdj?cie !

Podpis
Postaw piwo autorowi tego posta
 

 
Tagi: math.random
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

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
Dodaj temat do Ulubionych
Wersja do druku