Ir para conteúdo

Queimando arvores


Deadpool

Posts Recomendados

Sistemazinho que eu achei em um servidor 860 antigo, eu ia fazer um RPG mas né ._.

Enfim, esse sistema permite colocar fogo nas arvores, e as arvores ao redor vão queimando, até acabar a ultima mwhaha, testei e funciona mwha

 

Spoiler

--[[
#######################
# Script by dalvorsn  #
# Don't remove credits#
#######################
]]
local burningTrees = {
   -- [TreeId] = BurningTreeId,
   -- Examples
   [7024] = 2717, -- pine
   [2701] = 2719, -- sycamore
   [2704] = 2722  -- red maple
}
local delay = 1000 -- delay em ms entre as chamas




local var__ = 0
local function var()
   var__ = var__ + 1
   return var__
end


function onUse(cid, item, fromPosition, itemEx, toPosition)


   if( burningTrees[itemEx.itemid] )then
       burnTree(getThingPosition(itemEx.uid), delay, itemEx.itemid)
   end
   var__ = 0
   return true
end


function getItemsAroundById(ItemIds, pos, rangex, rangey)
   local uids = {}
   for itemId in pairs(ItemIds) do
       for x = -rangex, rangex do
           for y = -rangey, rangey do
               local posi = {x = pos.x + x, y = pos.y + y, z = pos.z}
               local item = getTileItemById(posi, itemId)
               if item.uid > 0 and not (x == 0 and y == 0) and getItemAttribute(item.uid, "burned") ~= 1 then
                   table.insert(uids, {itemid = itemId, pos = posi})
               end
           end
       end
   end
   return uids
end


local function _doTransformItem(itemid, pos, toid)
   local _uid = getTileItemById(pos, itemid).uid
   doTransformItem(_uid, toid)
   return _uid
end




function burnTree(itemPos, delayFire, itemid)


   local smallFire, mediumFire, bigFire = 1489, 1488, 1492


   if var__ == 0 then
       doSendMagicEffect(itemPos, 36)
   end
   doItemSetAttribute(getTileItemById(itemPos, itemid).uid, "burned", 1)


   addEvent(doCreateItem, var() * delayFire, smallFire, itemPos)
   addEvent(_doTransformItem, var() * delayFire, smallFire, itemPos, mediumFire)
   addEvent(_doTransformItem, var() * delayFire, mediumFire, itemPos, bigFire)
   addEvent(_doTransformItem, var() * delayFire, itemid, itemPos, burningTrees[itemid])


   aroundTrees = getItemsAroundById(burningTrees, itemPos, 1,1)
   for _, tree in pairs(aroundTrees) do
       burnTree(tree.pos, delayFire, tree.itemid)
   end


   return true
end

 

adicionar arvores:

local burningTrees = {
   -- [TreeId] = BurningTreeId,
   -- [id da arvore] = idquevaiaparecerquandotiverqueimado,
   -- Examples
   [7024] = 2717, -- pine
   [2701] = 2719, -- sycamore
   [2704] = 2722  -- red maple
}

o item da actions.xml que você vai usar pra tocar fogo na floresta, precisa ter a opção "use with"

qualquer coisa comentem, que eu ajudo quando tiver tempo

 

créditos: @dalvorsn 

 

 

demonstração:

 

https://gifs.com/gif/queimando-floresta-tibia-g5zYR9

Editado por Deadpool
Link para o comentário
Compartilhar em outros sites

13 minutos atrás, Deadpool disse:

 

Sistemazinho que eu achei em um servidor 860 antigo, eu ia fazer um RPG mas né ._.

Enfim, esse sistema permite colocar fogo nas arvores, e as arvores ao redor vão queimando, até acabar a ultima mwhaha, testei e funciona mwha

 

 

Tente colocar gifs ou algo assim, atrai mais gente aos scripts, acho que fiz um script parecido com esse, só que era Timber, em vez de queimar ia cortando as árvores, como na primeira quest do antigo global, aquela quest era pika.

Link para o comentário
Compartilhar em outros sites

Agora, Caronte disse:

 

Tente colocar gifs ou algo assim, atrai mais gente aos scripts, acho que fiz um script parecido com esse, só que era Timber, em vez de queimar ia cortando as árvores, como na primeira quest do antigo global, aquela quest era pika.

achei um video do daslvorn e transformei em gif, e coloquei ai kkk vê ai, ficou legalzin, vlw ^^

7 minutos atrás, DarkWore disse:

Obrigado por Compartilhar o Xtibia Agradece.

Haha, vlw

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...