Ir para conteúdo

Featured Replies

Postado

Então galera, eu estou com um script aqui, que basicamente seria um efeito saindo numa pos que tira life do player. Ta meio que uma gambiarra u.u

 

em globalevents/start.lua está assim:

local posesH = {


{x=229, y=1144, z=15},
{x=226, y=1186, z=15},
{x=226, y=1187, z=15},
{x=226, y=1189, z=15},
{x=226, y=1192, z=15},
{x=226, y=1193, z=15},
{x=263, y=1147, z=15},
{x=263, y=1148, z=15},
{x=279, y=1192, z=15},
{x=281, y=1187, z=15},
{x=323, y=1200, z=15},
{x=322, y=1190, z=15},
{x=322, y=1188, z=15},
{x=322, y=1167, z=15},
{x=322, y=1165, z=15},
{x=322, y=1163, z=15},
{x=322, y=1161, z=15},
{x=322, y=1130, z=15},
{x=322, y=1133, z=15},
{x=322, y=1136, z=15},
{x=322, y=1139, z=15},
{x=328, y=1107, z=15},
{x=328, y=1106, z=15},
{x=330, y=1102, z=15},
}
local posesV = {
{x=318, y=1121, z=15},
{x=314, y=1121, z=15},
{x=310, y=1121, z=15},
{x=300, y=1120, z=15},
{x=298, y=1121, z=15},
{x=296, y=1121, z=15},
{x=294, y=1121, z=15},
{x=261, y=1155, z=15},
{x=234, y=1138, z=15},
{x=298, y=1171, z=15},
{x=299, y=1171, z=15},
{x=303, y=1168, z=15},
{x=305, y=1168, z=15},
{x=306, y=1168, z=15},
{x=308, y=1168, z=15},
}
local function sendDmgPos()
for i,v in pairs(posesH) do
local pos = v
for x=1, 5 do
doSendMagicEffect(pos, 56)
doDamageInPos(pos, 14455, 57)
pos.x = pos.x + 1
end
end
for i,v in pairs(posesV) do
local pos = v
for x=1, 5 do
doSendMagicEffect(pos, 58)
doDamageInPos(pos, 14456, 59)
pos.y = pos.y + 1
end
end
addEvent(sendDmgPos, 5000)
end
sendDmgPos()
return true
end


 
 
Função doDamageInPos:
 

function doDamageInPos(pos, damage, eff)


local cid = getTopCreature(pos).uid
if eff and eff ~= 0 and type(eff) == "number" then
local itemPos = getTileThingByPos(pos)
local can = true
if itemPos.uid ~= 0 then
can = (not hasProperty(itemPos.uid, CONST_PROP_BLOCKSOLID) and not hasProperty(itemPos.uid, CONST_PROP_BLOCKPROJECTILE))
end
if can then
doSendMagicEffect(pos, eff)
end
end
if cid and isCreature(cid) then
setPlayerStorageValue(cid, 117879, 1)
doCreatureAddHealth(cid, -damage)
end
return true
end

function DamageInRectangle(pos, h, v, dmg, eff)
local tempPos = pos
local poses = {tempPos}
for x=1, h do
tempPos.x = tempPos.x + 1
table.insert(poses, tempPos)
end
for y=1, v do
tempPos.y = tempPos.y + 1
table.insert(poses, tempPos)
end
for i,v in pairs(poses) do
print('['..(i)..'] = {x='..(v.x).. ', y='..(v.y)..', z='..(v.z)..'}')
doDamageInPos(v, dmg, eff)
end
end


 
 
A Função DamageInRectangle seria pra mandar efeito em um retangulo e tirar life do player, só que não ta termiado.
 
E aconteçe o seguinte: o efeito sai andando pelo mapa, a cada efeito ele aparece numa post diferente, o efeito sai errado e nao tira dano do player e.e.
 
obs: esse efeito seria de uma parede a outra, por exemplo, da pos {x=318, y=1121, z=15}, até chegar a proxima parede
mas nao da erro no console .-.
se puderem me ajudar eu agradeço 
vlw flw
Postado

ele seiláh, eu so quero algo que saia do chao e que de dano... kkk

Continue meu filho desobediente

Haverá paz quando você estiver terminado

Coloque sua cabeça cansada para descansar

Não chore mais

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo