Ir para conteúdo

Action Teste


aspkot85

Posts Recomendados

então pessoal no meu servidor que pretendo abrir fis um sistema de reset por elixir o berseker potion mais eu fis tudo correto eu acho esse elixir esta para resetar o player no level 510 pessoal é asim: chegando ao level 510 na segunda vocaçao o player vai ate : Edron e na casa de magia da Isolda e vai la e fala hi,reset,first reset,yes ai ele ganha a berseker potion que no caso se chama: Elixir of reset bem se vocês entenderão irei postar o script para vocês verem e tentarem arrumar para min eu tentei fazer a elixir ao inves de ganhar "EXP" abachar o level do 510 ao 8.

 

local condition = createConditionObject(CONDITION_ENERGY)
setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(condition, 0, 0, 0)

function onUse(cid, item, frompos, item2, topos)

EXP2 = math.random(9999999,9999999)
EXP3 = math.random(9999999,9999999)
EXP4 = math.random(9999999,9999999)
EXP5 = math.random(9999999,9999999)
EXP6 = math.random(9999999,9999999)
EXP7 = math.random(9999999,9999999)
EXP8 = math.random(9999999,9999999)
EXP9 = math.random(9999999,9999999)
EXP10 = math.random(9999999,9999999)

if getPlayerLevel(cid) <= 509 then
doPlayerSendTextMessage(cid,20,'Desculpe, você não tem nivel suficiente e sua alma não esta livre para vendela.')
elseif getPlayerSoul(cid) >= 250 then

PlayerLevel = getPlayerLevel(cid)

if PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP2)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP2, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP3)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP3, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP4)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP4, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP5)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP5, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP6)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP6, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP7)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP7, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP8)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP8, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP9)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP9, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)

elseif PlayerLevel < 509 then
doPlayerRemoveExp(cid,EXP10)
doTargetCombatCondition(0, cid, condition, CONST_ME_MAGIC_RED)
doPlayerSendTextMessage(cid,20,'you downgrade level 510 to level 8.')
doSendAnimatedText(getPlayerPosition(cid),EXP10, 179)
doPlayerAddSoul(cid,-250)
doRemoveItem(item.uid,1)
end
else
doPlayerSendTextMessage(cid,20,'Desculpe, você não tem número de nivel e de almas suficiente.')
end
end

 

eu acho que o erro esta nesta frase "doPlayerRemoveExp(cid,EXP10)" mais eu tentei de todo jeito trocar eu não sei um codigo que ao inves de dar exp retirea a experiencia e abache o level quem me ajuda eu estarei sendo muito grato

Link para o comentário
Compartilhar em outros sites

o codigo de remover o lvel é esse =d

 

doPlayerAddExperience(cid, -(getPlayerExperience(cid))+(4200))

 

isso seta o level como 8 nao importando o level do player.. ai vc faz a msma checagem etc...

 

o problema dele é que ele é como se o player morrese.. volta mana hp e cap =d

 

 

 

testa isso pa vc.. a cap ainda nao ta armazenando pq ele ta retornando um valor falso =/

 

function onUse(cid, item, frompos, item2, topos)
local resetar = 510
local hp = getCreatureMaxHealth(cid)
local mp = getCreatureMaxMana(cid)
if getPlayerLevel(cid) < resetar then
return doPlayerSendCancel(cid,"You need level "..resetar.." for reset.")
end

doPlayerAddExperience(cid, -(getPlayerExperience(cid))+(4200))
setCreatureMaxHealth(cid, hp)
setCreatureMaxMana(cid, mp)
doRemoveItem(item.uid,1)
return true
end

 

isso faz com que caso o player seja lvl 510 ou acima ele volte ao level 8 ao dar use no item que vc colocar no actions.xml....

ele só volta level nao adiciona nenhum valor na db nem nd.. nao sei se tu ja tem ela e tals... ai vc vai adicionando o que quiser ai.

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

×
×
  • Criar Novo...