Sistema Reset (Reseta Mana E Life )

davialves
em Actions e Talkactions

davialves

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/04/10Posts: 57

Olá Xtibianos

 

Estou aqui mais uma vez para postar outro Script - Sistema reset com vocation - .. Vi que Muita gente queria ele, eu consegui fazer e resolvi postar aqui..

 

Função : É o seguinte O player fala !promovoc, feito isso o player voltara para o level 8 com Health máxima 185, e mana máxima 35, e ainda vai para uma vocação superior

 

CRÉDITOS : Marcryzius - pelo sistema

Davi (eu) - pela modificação

 

Vá em data/talkactions/talkactions.xml e bote:

 

<talkaction words="!promovoc" event="script" value="promovoc.lua"/>

 

Em data/talkactions/scripts crie uma pasta chamada promovoc.lua e bote isso dentro dela:

 

function onSay(cid, words, param)
config = {
level= 10000, -- level para resetar
RemainingLvl=8, -- level que ficara depois do reset
exper=4200, -- Experiência que ficara depois do Reset
pid=getPlayerGUID(cid),  -- Não Mecha
skull="yes",  -- Players com Skull podem resetar "yes" para sim e "no" para não
redskull="yes",-- Players com Red Skull podem resetar "yes" para sim e "no" para não
prot="yes", -- precisa estar em area pz para resetar "yes" para sim e "no" para não
bat="yes", -- player com fight pode resetar "yes para sim e  "no" para não
voc = getPlayerVocation(cid), -- Não mecha
mana = 35, -- mana que ficara após o reset
health = 185 -- Health que ficara após o reset
}

function getResets(cid)
reset = getPlayerStorageValue(cid,1020)
if reset < 0 then
reset = 0
end
return reset
end

if(config.skull == "no") and (getCreatureSkullType(cid) == 3) then
doPlayerSendTextMessage(cid, 24, "apenas players sem white skull podem resetar.")
return TRUE
end

if(config.redskull == "no") and (getCreatureSkullType(cid) == 4) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"apenas player sem red skull podem resetar.")
return TRUE
end

if(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder resetar.")
return TRUE
end

if(config.bat == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder resetar.")
return TRUE
end

if getPlayerLevel(cid) >= config.level then
setPlayerStorageValue(cid,1020,getResets(cid)+1)
doPlayerPopupFYI(cid,"you now was reset, you have "..getResets(cid)+(1).." reset\'s.")
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter
doPlayerSetVocation(cid, 9) -- Vocação que o player ficara após o reset
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `level` = "..config.RemainingLvl..", `experience` = "..config.exper..",`manamax` = "..config.mana..",`healthmax` = "..config.health..",`health` = "..config.health..",`mana` = "..config.mana.." WHERE `id` = "..config.pid)
else
doPlayerSendCancel(cid, "Você precisa do level "..config.level.." ou mais para resetar.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
return TRUE
end

 

Até mais..

marcelopop

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 17/06/10Posts: 53Char no Tibia: Lord'paulistinha

Acho que você esqueceu de citar,adicionar uma linha no talkactions.xml en players para funcionar tudo certo adicione a linha

 

 

 

<talkaction words="!promovoc" event="script" value="promovoc.lua"/>

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

ae

ótimo,nãi tinhamos um sistema de reset ainda aqui nesse area,os que tinham foi retirados

e o seu reseta mana,hp e ainda recebe uma voc nova bem legal

 

obrigado por trazes o conteudo

abraços cara

bossisg.png

davialves

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/04/10Posts: 57

ae

ótimo,nãi tinhamos um sistema de reset ainda aqui nesse area,os que tinham foi retirados

e o seu reseta mana,hp e ainda recebe uma voc nova bem legal

 

obrigado por trazes o conteudo

abraços cara

 

Sim percebi Isso.. então eu pensei : já que tenho aqui vou postar.

 

Precisando , só falar.

churupetinha

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/06/10Posts: 61Char no Tibia: Churupettinha

mano davialves aki deu erro nao sei pq olha

 

 

Error - LuaScriptInterface::loadFile] data/talkactions/scripts/promovoc.lua:57: 'end' expected (to close 'function' at line 1) near '<eof>'

[25/06/2010 22:26:23] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/promovoc.lua)

[25/06/2010 22:26:23] data/talkactions/scripts/promovoc.lua:57: 'end' expected (to close 'function' at line 1) near '<eof>'

 

ae o erro tem como me ajudar a tira esse erro?

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

@Churupetinha

 

só falto o end...

 

ta ai:

 

 

 

function onSay(cid, words, param)

config = {
level= 10000, -- level para resetar
RemainingLvl=8, -- level que ficara depois do reset
exper=4200, -- Experiência que ficara depois do Reset
pid=getPlayerGUID(cid), -- Não Mecha
skull="yes", -- Players com Skull podem resetar "yes" para sim e "no" para não
redskull="yes",-- Players com Red Skull podem resetar "yes" para sim e "no" para não
prot="yes", -- precisa estar em area pz para resetar "yes" para sim e "no" para não
bat="yes", -- player com fight pode resetar "yes para sim e "no" para não
voc = getPlayerVocation(cid), -- Não mecha
mana = 35, -- mana que ficara após o reset
health = 185 -- Health que ficara após o reset
}

function getResets(cid)
reset = getPlayerStorageValue(cid,1020)
if reset < 0 then
reset = 0
end
return reset
end

if(config.skull == "no") and (getCreatureSkullType(cid) == 3) then
doPlayerSendTextMessage(cid, 24, "apenas players sem white skull podem resetar.")
return TRUE
end

if(config.redskull == "no") and (getCreatureSkullType(cid) == 4) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"apenas player sem red skull podem resetar.")
return TRUE
end

if(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder resetar.")
return TRUE
end

if(config.bat == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder resetar.")
return TRUE
end

if getPlayerLevel(cid) >= config.level then
setPlayerStorageValue(cid,1020,getResets(cid)+1)
doPlayerPopupFYI(cid,"you now was reset, you have "..getResets(cid)+(1).." reset\'s.")
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter
doPlayerSetVocation(cid, 9) -- Vocação que o player ficara após o reset
end
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `level` = "..config.RemainingLvl..", `experience` = "..config.exper..",`manamax` = "..config.mana..",`healthmax` = "..config.health..",`health` = "..config.health..",`mana` = "..config.mana.." WHERE `id` = "..config.pid)
else
doPlayerSendCancel(cid, "Você precisa do level "..config.level.." ou mais para resetar.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
return TRUE
end

 

 

bossisg.png

caioblade

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/06/10Posts: 4Char no Tibia: Caiodexantera

Bom.. mais como que faz pra por so pra resetar , e tirar esse negocio de nova vocaçao?

-= Meu Primeiro Avatar =-

 

 

Monster190805.jpg

Kydrai

"Keep Your Mind Wide Open"
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 21/08/06Posts: 250

@UP

Tira essa parte:

if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter
doPlayerSetVocation(cid, 9) -- Vocação que o player ficara após o reset
end

~ Kydrai
Programador / Scripter

 

sign.png

salatielk

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/05/10Posts: 25Char no Tibia: Lord Kallisto

Mãn ta de parabéns pelo Script mais tem uma Coisa

quando eu reseto pro Level 8 a vocação não Mudou

eu coloquei la o ID da vocação que precisa ser e a que vai ser quando resetar

que é 4 knight e 8 Elit Knight

 

que é onde fica

 

if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter

doPlayerSetVocation(cid, 9) -- Vocação que o player ficara após o reset

 

será que preciso mudar o storage ???

reset = getPlayerStorageValue(cid,1020)

 

 

e se preciso mudar pra por igual o Do meu OT que arquivo eu procuro o storage pra por no lugar do 1020 ?

 

 

Ajudando agradeço Muito

 

 

:thumbsupsmiley:

tumblr_lf3n7jPoj11qfr4s3.gif

Blinkrox

Mapper
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 12/05/09Posts: 237Char no Tibia: Sir Slazer

otimo script cara.

topico bem organizado.

parabeins, APROVADO.

 

Abraços

blinkb.png

davialves

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/04/10Posts: 57

Mãn ta de parabéns pelo Script mais tem uma Coisa

quando eu reseto pro Level 8 a vocação não Mudou

eu coloquei la o ID da vocação que precisa ser e a que vai ser quando resetar

que é 4 knight e 8 Elit Knight

 

que é onde fica

 

if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter

doPlayerSetVocation(cid, 9) -- Vocação que o player ficara após o reset

 

será que preciso mudar o storage ???

reset = getPlayerStorageValue(cid,1020)

 

 

e se preciso mudar pra por igual o Do meu OT que arquivo eu procuro o storage pra por no lugar do 1020 ?

 

 

Ajudando agradeço Muito

 

 

:thumbsupsmiley:

 

Olha, acho que é por isso :

 

if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter

doPlayerSetVocation(cid, 9) -- Vocação que o player

 

essa função serve apenas da vocation 9 para 10; da 10 pra 11; da 11 pra 12, e assim por diante.. tente usar essa função : setPlayerPromotionLevel(cid, 2) no lugar de : if getPlayerVocation(cid) == 8 then -- Vocação que o player precisa ter

doPlayerSetVocation(cid, 9) -- Vocação que o player

 

Caso não funfe, me mande uma pm.

 

 

@UP

Obrigado cara,qualquer duvida venha ao Xtibia

 

Abraços

mbnstar

(:
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 02/07/07Posts: 70Char no Tibia: Peppenzily

Bem legal, ótimo para servidores medium.

 

Só faltava um sistema de rank de resets melhor em sqlite.

 

Valeu (:

salatielk

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/05/10Posts: 25Char no Tibia: Lord Kallisto

Cara deu Erro

 

da uma olhada pra min o OT é esse aii

Obs : Protocolo 8.57 :sarcastic:

Servidor : Alissow Ots 4.0 :sarcastic:

tumblr_lf3n7jPoj11qfr4s3.gif

Carnavotu

~~Rei Carnavotu~~
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 10/05/09Posts: 74

Muito Bom o Topico, Bem Organizado e o Script Funciono Perfeitamente Aqui... Parabens !!!

 

 

Aprovado :button_ok:

Te Ajudei? Não Gosta De Mim? Use Meu Fan Bar