Quase Isso Só Trocar AddHealth Por AddMana
info
Grupo: Artesão
Registrado: 20/11/12
Posts: 142
Reputação: +19
Char no Tibia: Deleted

info
Grupo: Infante
Registrado: 04/03/11
Posts: 1.6k
Reputação: +393
Char no Tibia: No Have

function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) function addManaInTime(cid) local pos = getCreaturePosition(cid) if isPlayer(cid) and getCreatureMana(cid) ~= getCreatureMaxMana(cid) then doCreatureAddMana(cid, 222) doSendMagicEffect(pos, 212) addEvent(addManaInTime, 180, cid) end end addManaInTime(cid) return true end
<movevent type="StepIn" itemid="2212" event="script" value="mana.lua"/>
Editado Dezembro 24 por caotic
Mudando um pouco o do caotic que tava com erro e pra deixa mais facil pro player.
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) function addManaInTime(cid) local pos = getCreaturePosition(cid) local playerm = getCreatureMana(cid) local playermaxm = getCreatureMaxMana(cid) local addmana = 1000 -- if isPlayer(cid) and playerm ~= playermaxm then doCreatureAddMana(cid, addmana) doSendMagicEffect(pos, 212) addEvent(addManaInTime, 180, cid) end end addManaInTime(cid) return true end
isso aqui você adiciona em data/movements/movements.xml
<movevent type="StepIn" itemid="2212" event="script" value="mana.lua"/>
se o meu tiver algum erro corrigam ai.
Editado Dezembro 26 por HesLife
Retirando spoiler bugado
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

oia o cara kk /\
e ja aviso q se o player fica subindo e saindo do tile vai curar a mana dele bem rapidinhu com tanto addEvent heim.. ou capaz de da meuda ainda...
info
Grupo: Lorde
Registrado: 05/06/12
Posts: 2.2k
Reputação: +215
Gênero: Masculino

Editado Dezembro 24 por Yan18
@Slicer
Algum problema ?, caso ache que meu script tenha algo errado, por favor o arrume , eu ficaria grato.
agora por favor não polua o tópico com comentários desnecessários.
@Yan
Tudo bem vou colocar, não pus porque tem algumas pessoas que não conseguem abrir.
info
Grupo: Artesão
Registrado: 26/04/09
Posts: 120
Reputação: +2

Mudando um pouco o do caotic que tava com erro e pra deixa mais facil pro player.
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
function addManaInTime(cid)
local pos = getCreaturePosition(cid)
local playerm = getCreatureMana(cid)
local playermaxm = getCreatureMaxMana(cid)
local addmana = 1000 -- quanto mana vai adicionar
if isPlayer(cid) and playerm ~= playermaxm then
doCreatureAddMana(cid, addmana)
doSendMagicEffect(pos, 212)
addEvent(addManaInTime, 180, cid)
end
end
addManaInTime(cid)
return true
end
isso aqui você adiciona em data/movements/movements.xml
<movevent type="StepIn" itemid="2212" event="script" value="mana.lua"/>
@Caotic , quando for postar um script que não tenha testado, você pode usar isso http://www.lua.org/cgi-bin/demo
pra ver se ao menos tem algum erro ok ?
se o meu tiver algum erro corrigam ai.
Muito show cara, 99,9%, o unico detalhe que gostaria que "melhorase" nesse script é o seguinte, como minha intenção é colocar esse script num treiner VIP, ele nao pode ficar dando mana só pra quem pisar, ou seja o q eu preciso é que opiso hele mana como se fose akeles pisos faltantes, comprende?
porque dai independe de quem vai estar no piso e nesse script ele ta enchendo a mana muito rapido (velocidade nao quantidade) e se o player estiver com a mana completa ele para de enxer, fico grato por me ajudar, se pode alterar esses detalhes vai ficar 100%.
Edit - Outro "bug" que vi para o que eu quero é o seguinte, como a velocidade esta muito alta e quando a mana do player xega no maximo eu diminui a quantidade de mana para "20", ou seja agora o player pode somente pisar no piso e sair por ai com a mana enchendo para sempre ate que a mesma encha por completo, ai cara pode voltar e pisar dinovo, infinitamente.
Editado Dezembro 24 por markim1986
info
Grupo: Infante
Registrado: 04/03/11
Posts: 1.6k
Reputação: +393
Char no Tibia: No Have

Mudando um pouco o do caotic que tava com erro e pra deixa mais facil pro player.
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
function addManaInTime(cid)
local pos = getCreaturePosition(cid)
local playerm = getCreatureMana(cid)
local playermaxm = getCreatureMaxMana(cid)
local addmana = 1000 -- quanto mana vai adicionar
if isPlayer(cid) and playerm ~= playermaxm then
doCreatureAddMana(cid, addmana)
doSendMagicEffect(pos, 212)
addEvent(addManaInTime, 180, cid)
end
end
addManaInTime(cid)
return true
end
isso aqui você adiciona em data/movements/movements.xml
<movevent type="StepIn" itemid="2212" event="script" value="mana.lua"/>
@Caotic , quando for postar um script que não tenha testado, você pode usar isso http://www.lua.org/cgi-bin/demo
pra ver se ao menos tem algum erro ok ?
se o meu tiver algum erro corrigam ai.
Eu conheço sim o debbuger lua demo.
O sinal de diferença foi coloco de maneira incorreta.
Obrigado por concertar.
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

teu script? uahuah ta bom ta bom...
@topic
ve se isso serve...
local control = {}
local time = 1000 --tempo entre os addMana
local addMana = 500 --qnt mana vai subir
local function addMana(cid)
if isPlayer(cid) then
doPlayerAddMana(cid, addMana)
doSendMagicEffect(getPlayerPosition(cid), 212)
control[cid] = addEvent(addMana, time, cid)
elseif control[cid] then
control[cid] = nil
end
end
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if control[cid] then
stopEvent(control[cid])
control[cid] = nil
end
addMana(cid)
return true
end
function onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if control[cid] then
stopEvent(control[cid])
control[cid] = nil
end
return true
end
e a tag do stepOut..
<movevent type="StepOut" itemid="2212" event="script" value="mana.lua"/>
Editado Dezembro 24 por Slicer
Tudo bem me expressei mal, agora não quer iniciar uma discussão por algo bobo assim não é ? vamos ajudar o colega.
e obrigado também por passar o script correto a ele
info
Grupo: Lorde
Registrado: 05/06/12
Posts: 2.2k
Reputação: +215
Gênero: Masculino

@Slicer
Algum problema ?, caso ache que meu script tenha algo errado, por favor o arrume , eu ficaria grato.
agora por favor não polua o tópico com comentários desnecessários.
@Yan
Tudo bem vou colocar, não pus porque tem algumas pessoas que não conseguem abrir.
Eu falei CODE e spoiler não so Spoiler, e seu script ta pequeno então pode colocar em CODE, e como não da para abrir um CODE o.0.
@Slicer
Algum problema ?, caso ache que meu script tenha algo errado, por favor o arrume , eu ficaria grato.
agora por favor não polua o tópico com comentários desnecessários.
@Yan
Tudo bem vou colocar, não pus porque tem algumas pessoas que não conseguem abrir.
Eu falei CODE e spoiler não so Spoiler, e seu script ta pequeno então pode colocar em CODE, e como não da para abrir um CODE o.0.
kkk' , eu só tinha visto spoiler, e sempre qnd eu tento por code da fail e.e, mas vlw a proxima eu coloko
ps : obrigado por arrumar caotic
info
Grupo: Artesão
Registrado: 26/04/09
Posts: 120
Reputação: +2

teu script? uahuah ta bom ta bom...
@topic
ve se isso serve...
local control = {} local time = 1000 --tempo entre os addMana local addMana = 500 --qnt mana vai subir local function addMana(cid) if isPlayer(cid) then doPlayerAddMana(cid, addMana) doSendMagicEffect(getPlayerPosition(cid), 212) control[cid] = addEvent(addMana, time, cid) elseif control[cid] then control[cid] = nil end end function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) if control[cid] then stopEvent(control[cid]) control[cid] = nil end addMana(cid) return true end function onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor) if control[cid] then stopEvent(control[cid]) control[cid] = nil end return true end
e a tag do stepOut..
<movevent type="StepOut" itemid="2212" event="script" value="mana.lua"/>
Nao deu nao rapaz, nao deu nenhum erro no console mas o piso ta normal, esta certo essas linhas no mov.xml correto?
<movevent type="StepIn" itemid="458" event="script" value="mana.lua"/> <movevent type="StepOut" itemid="458" event="script" value="mana.lua"/>
mana.lua
local control = {}
local time = 1000 --tempo entre os addMana
local addMana = 500 --qnt mana vai subir
local function addMana(cid)
if isPlayer(cid) then
doPlayerAddMana(cid, addMana)
doSendMagicEffect(getPlayerPosition(cid), 212)
control[cid] = addEvent(addMana, time, cid)
elseif control[cid] then
control[cid] = nil
end
end
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if control[cid] then
stopEvent(control[cid])
control[cid] = nil
end
addMana(cid)
return true
end
function onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if control[cid] then
stopEvent(control[cid])
control[cid] = nil
end
return true
end
Agradeço desde ja!
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

tenta com esse.. isso q da posta sem testar ^^
local control = {}
function addManaInTime(cid)
local time = 1000 --tempo entre os addMana
local addMana = 500 --qnt mana vai subir
if isPlayer(cid) then
doPlayerAddMana(cid, addMana)
doSendMagicEffect(getPlayerPosition(cid), 212)
control[cid] = addEvent(addManaInTime, time, cid)
elseif control[cid] then
control[cid] = nil
end
end
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if control[cid] then
stopEvent(control[cid])
control[cid] = nil
end
addManaInTime(cid)
return true
end
function onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if control[cid] then
stopEvent(control[cid])
control[cid] = nil
end
return true
end
Editado Dezembro 24 por Slicer
info
Grupo: Artesão
Registrado: 26/04/09
Posts: 120
Reputação: +2
Nome do Script: Piso que enche mana!
Tipo do Script: Nao sei!
Versão Utilizada: 8.60
Servidor Utilizado: TheLostServer
Nível de Experiência: Iniciante
Informações Extras: --
Ola, gostaria de saber se tem como criar um piso que encha mana que tenha uma variavel de tempo e quantidade de mana por segundos, quero fazer um treiner VIP.
Agradeço desde ja!
REP+