Ir para conteúdo
  • 0

[Pedido] Uma Action Que Sobe Vida E Life!


deeners2

Pergunta

Gente,eu jogo um otserver , que tem um item que se chama Blood , que quando você clica nele , ele te da uma certa quantidade de vida e de mana e por +- 30 segundos fica healando mana e vida ! alguem poderia me ajudar a fazer uma action como essa? Eu tinha essa action mais eu perdi ela e nao consegui achar denovo! quando usa ele , ele muda de roupa e solta um fogo branco que vai healando vida e mana a cada segundo! Obrigado desde já! =) Queria isso também , quando voce clicar nesse item , ele irá usar o blood e vai tirar 1 de soul!

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0


function doRefilSecond(cid, mana, hp, delay) -- function by vodka
if isCreature(cid) then
doCreatureAddMana(cid, mana)
doCreatureAddHealth(cid, hp)
doSendMagicEffect(getCreaturePosition(cid), 6)
if delay ~= 1 then
addEvent(doRefilSecond, 1000, cid, mana , hp , delay -1)
end
else
return LUA_ERROR
end
return nil
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local seconds = 10
local outfit = 100
doRefilSecond(cid, 10,20, seconds)
doSetCreatureOutfit(cid, {lookType = outfit}, seconds*1000)
doRemoveItem(item.uid, 1)
return TRUE
end

 

explicação:

 

doRefilSecond(cid, MANA ,HP, SEGUNDOS)

 

por exemplo eu quero que heale 10 de mana e 20 de hp por 30 segundos,logo ficaria:

 

doRefilSecond(cid, 10,20, 30)

Link para o comentário
Compartilhar em outros sites

  • 0

ah esqueci do soul... uhauahauaua

 

o looktype ta aki :

 

local outfit = 100

 

e uma duvida do soul

 

vai remover o 1 de soul por segundo? ou só vai remover 1 de soul?

Link para o comentário
Compartilhar em outros sites

  • 0

era só adicionar a linha doPlayerAddSoul(cid, -1)

 


function doRefilSecond(cid, mana, hp, delay) -- function by vodka
if isCreature(cid) then
doCreatureAddMana(cid, mana)
doCreatureAddHealth(cid, hp)
doSendMagicEffect(getCreaturePosition(cid), 6)
if delay ~= 1 then
addEvent(doRefilSecond, 1000, cid, mana , hp , delay -1)
end
else
return LUA_ERROR
end
return nil
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local seconds = 10
local outfit = 100
doRefilSecond(cid, 10,20, seconds)
doSetCreatureOutfit(cid, {lookType = outfit}, seconds*1000)
doPlayerAddSoul(cid, -1)
doRemoveItem(item.uid, 1)
return TRUE
end

Link para o comentário
Compartilhar em outros sites

  • 0

e só mais uma pergunta uaehueaheauhea , e onde eu coloco o ID do item que vai gastar? :S e outra tb ! aquele local seconds = 10 é quando de hp e mana vai healar ? no caso 10 segs?

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

  • 0

ok vou deixar o script configuravel para vc...

 

 

nome do seu script.lua

function doRefilSecond(cid, mana, hp, delay) -- function by vodka
if isCreature(cid) then
doCreatureAddMana(cid, mana)
doCreatureAddHealth(cid, hp)
doSendMagicEffect(getCreaturePosition(cid), 6)
if delay ~= 1 then
addEvent(doRefilSecond, 1000, cid, mana , hp , delay -1)
end
else
return LUA_ERROR
end
return nil
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local config = {
hp = 10, -- qnto de hp irá ganha por segundo
mana = 5, -- qnto de mana irá ganhar por segundo
seconds = 30, -- por qnto segundos ele irá ganhar o hp e mana
outfit = 100 -- outfit q ele vai virar
}
doRefilSecond(cid, config.mana,config.hp, config.seconds)
doSetCreatureOutfit(cid, {lookType = config.outfit}, config.seconds*1000)
doPlayerAddSoul(cid, -1)
doRemoveItem(item.uid, 1)
return TRUE
end

 

em actions.xml vc adicona a tag:

 

<action itemid="ID DO SEU ITEM" event="script" value="nome do seu script.lua"/>

Link para o comentário
Compartilhar em outros sites

  • 0

Nossa mano, foi mal da esse trampo pra voce ae! brigadão mesmo ! =)

 

não tem como tipo ele virá um outfit diferente? por que no ot que eu jogo ele vira um outfit diferente,são 3 outfits ,uma hora ele vira um coelho e outra hora ele vira um outro outfit!

Link para o comentário
Compartilhar em outros sites

  • 0

sim...


function doRefilSecond(cid, mana, hp, delay) -- function by vodka
if isCreature(cid) then
doCreatureAddMana(cid, mana)
doCreatureAddHealth(cid, hp)
doSendMagicEffect(getCreaturePosition(cid), 6)
if delay ~= 1 then
addEvent(doRefilSecond, 1000, cid, mana , hp , delay -1)
end
else
return LUA_ERROR
end
return nil
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local config = {
hp = 10, -- qnto de hp irá ganha por segundo
mana = 5, -- qnto de mana irá ganhar por segundo
seconds = 30, -- por qnto segundos ele irá ganhar o hp e mana
outfit = {100,50,120} -- outfit q ele vai virar
}
doRefilSecond(cid, config.mana,config.hp, config.seconds)
doSetCreatureOutfit(cid, {lookType = config.outfit[math.random(#config.outfit)]}, config.seconds*1000)
doPlayerAddSoul(cid, -1)
doRemoveItem(item.uid, 1)
return TRUE
end

 

vc coloca o id das outfit aqui:

 

outfit = {100,50,120}

Link para o comentário
Compartilhar em outros sites

  • 0

Não te esquenta,fim do mês vai chegar uma fatura de script no seu correio,ai você paga na lotérica mais próxima da sua casa.

Nesse caso o script foi barato,dependendo no nível de dificuldade...esse é nível iniciante no valor de R$: 100,00.

Abraços

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ishuihUSHIUhsiuHSIUHSIHSIUHuisuIHSuishuUIs

Brincadeira!

vlw abraços =]

Link para o comentário
Compartilhar em outros sites

  • 0

@UP

 

assim:


local pos = getPlayerPosition(cid)
local effc = {
{x = pos.x, y = pos.y - 1, z = pos.z},
{x = pos.x, y = pos.y + 1, z = pos.z},
{x = pos.x - 1, y = pos.y, z = pos.z},
{x = pos.x + 1, y = pos.y, z = pos.z},
{x = pos.x - 1, y = pos.y - 1, z = pos.z},
{x = pos.x + 1, y = pos.y - 1, z = pos.z},
{x = pos.x + 1, y = pos.y + 1, z = pos.z},
{x = pos.x - 1, y = pos.y + 1, z = pos.z}
} 
doSendMagicEffect(effc[math.random(#effc)], math.random(28, 30))

 

?

Link para o comentário
Compartilhar em outros sites

  • 0

o vodkart , tipo , quando voce usa o blood , ele fica healando por segundo , mais tipo nao heala 15k , é tipo assim , quando voce usa ele cura 15k de life e 16k de mana e depois fica healando de 3k e 4k!

 

cara, fis de tudo aqui , ele nao sobe a life e nem a mana por segundos ! :S

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...