Ir para conteúdo
  • 0

Reset Sistem - Especifico


baratask

Pergunta

Boa noite xtibianos, tudo bem? Estou aqui para fazer 1 pedido diferenciado.

 

Gostaria de 1 sistema de resete modificado, onde o jogador level 120, vai á tal npc fala hi resete , e volta para level 8 com mana e life e um char level 8 da sua classe, e com skill e magic level zerados, porém o jogador receberá em troca prêmios que vai direto para seu depot, 2 prêmios com id 2160 "1 quantia" e 1257.

 

Observações: Para resetar deve ter level 120 e pagar 10k ao npc.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Vá em npc, crie um arquivo chamado Reseter.xml e adicione:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Reseter" script="reseter.lua" walkinterval="2000" floorchange="0">
<health now="150" max="150"/>
<look type="139" head="132" body="79" legs="97" feet="132" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Hello, |PLAYERNAME|. If you are level 120 and pay me 10k, I can {reset} you."/>
</parameters>
</npc>
Agora vá em npc/scripts e crie um arquivo chamado reseter.lua. Adicione:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if(msgcontains(msg, 'reset')) then
if getPlayerLevel(cid) => 120 and getPlayerMoney(cid) => 10000 then
doPlayerAddExperience(cid, (getExperienceForLevel(8) - getPlayerExperience(cid)))
doPlayerRemoveMoney(cid, 10000)
doPlayerAddItem(cid,2160,QUANTIA)
doPlayerAddItem(cid,1257,QUANTIA)
doPlayerSetMaxHealth(cid,500)
doPlayerSetMaxMana(cid,500)
doPlayerSetMagic(cid,0)
doPlayerSetSkill(cid, SKILL_FIST, 10)
doPlayerSetSkill(cid, SKILL_CLUB, 10)
doPlayerSetSkill(cid, SKILL_SWORD, 10)
doPlayerSetSkill(cid, SKILL_AXE, 10)
doPlayerSetSkill(cid, SKILL_DISTANCE, 10)
doPlayerSetSkill(cid, SKILL_SHIELD, 10)
doPlayerSetSkill(cid, SKILL_FISHING, 10)
selfSay('Voce resetou com sucesso!', cid)
else
elseif getPlayerLevel(cid) < 120 or getPlayerMoney(cid) < 10000 then
selfSay('Voce nao possui level 120 ou os 10k necessarios para resetar.', cid)
else
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Caso dê que as funções de setskill e setmagic não funcionam, adicione-as através deste tutorial: http://www.xtibia.com/forum/topic/151262-doplayersetskill/
OBS: os comandos envolvendo skills podem não funcionar dependendo de cada servidor/distro. Teste e, caso haja erro no script, me avise.

 

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

×
×
  • Criar Novo...