Npc Resetador

Alexclusive
em NPCs, monsters e raids

Alexclusive

Um bom Veterano...
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 25/10/12Posts: 2399Gênero: MasculinoChar no Tibia: Nuncative

Funcional em:

TFS 8.6 DEV 0.4 (REV3884)

Creditos: Mdgabrielzim

 

 

 

Em data/npc crie um arquivo resetador.xml e coloque dentro:

Código:

 

<?xml version="1.0"?><npc name="Resetador" script="data/npc/scripts/reseter.lua" walkinterval="0" floorchange="0">

<health now="100" max="100"/>

<look type="133" head="10" body="122" legs="19" feet="10"/>

<parameters>

<parameter key="message_greet" value="Ola, |PLAYERNAME|. Eu posso {resetar} seu level. "/>

</parameters>

</npc>

 

 

 

 

 

 

 

 

 

 

 

Crie um arquivo chamado resetador.lua em data\npc\scripts e coloque dentro:

 

Código:

 

-- config

local minlevel = 50 -- level inical para resetar

local price = 1000 -- preço inicial para resetar

local newlevel = 8 -- level após reset

local newexp = 4200 -- nova experiencia após reset

local lvlByReset = 50 -- level acrescentado por reset

local priceByReset = 100 -- preço acrescentado por reset

local maxResets = 100 -- máximo de resets

-- end config

 

 

function addReset(cid)

resets = getResets(cid)

setPlayerStorageValue(cid,1020,resets+1)

return true

end

 

 

function getResets(cid)

resets = getPlayerStorageValue(cid,1020)

if resets <= 0 then

resets = 0

end

return resets

end

 

 

 

 

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

 

 

local needlvl = minlevel + (getResets(cid) * lvlByReset)

local newPrice = price + (getResets(cid) * priceByReset)

 

 

if msgcontains(msg, 'resetar') then

if getResets(cid) <= maxResets then

selfSay('Voce deseja reset seu char? Isto custará '..newPrice..' gp\'s!', cid)

talkState[talkUser] = 1

else

selfSay('Você ja alcançou seu limite de resets!', cid)

end

elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then

if getPlayerMoney(cid) <= newPrice then

selfSay('É Necessario ter '..newPrice..' gp\'s para resetar!', cid)

elseif getPlayerLevel(cid) <= needlvl then

selfSay('O level minimo para reset é '..needlvl..'!', cid)

else

doPlayerRemoveMoney(cid,newPrice)

if isInArray(vocs, getPlayerVocation(cid)) then

doPlayerSetVocation(cid, getPlayerVocation(cid)+4)

end

addReset(cid)

playerid = getPlayerGUID(cid)

doRemoveCreature(cid)

db.executeQuery("UPDATE `players` SET `level`="..newlevel..",`experience`="..newexp.." WHERE `players`.`id`= ".. playerid .."")

end

talkState[talkUser] = 0

elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then

talkState[talkUser] = 0

selfSay('Ok.', cid)

elseif msgcontains(msg, 'quant') then

selfSay('Voce tem um total de '..getResets(cid)..' reset(s).', cid)

end

 

 

return true

end

 

 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

 

 

npcHandler:addModule(FocusModule:new())

 

 

CURTA O FACEBOOK DO Ekz.

graphic_design.png  Seja um incentivador de pessoas. O mundo já tem críticos demais.  hardware_19.png

 

 

 

PsyMcKenzie

Grounder
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 18/05/11Posts: 1106Gênero: Masculino

Acho que já tem um npc de reset por aqui.

Mesmo assim, obrigado pelo conteudo!

Abraços.

Atenciosamente,

PsyMcKenzie.

 

 

Meus Trabalhos.

 

 

CipSofts

www.tibia.com Play FREE
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 13/03/13Posts: 50

if resets < 0 then

 

o que significa <?

Vinc

The white fox
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/10/11Posts: 625Gênero: Masculino

if resets < 0 then

 

o que significa <?

e os >,=,< que buga de ves enquando no xtibia.

 

já tem um porrada de npc de reset aki,use a ferramenta de pesquisa antes de postar.

^w^

Malucozim

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 15/09/12Posts: 5Char no Tibia: [EQUIPE] WarZin

Esse NPC funcionou! Obrigado

 

 

REP+ Para você!! button_ok.png

DavyziinC

Sou Pica néguim
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 07/02/12Posts: 207Char no Tibia: Não lembro :(

me ajuda o meu nao quer funfa

AnikilatorShadow

avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 03/02/13Posts: 62Char no Tibia: Anikilator

Baixa um baiak e Poe on.

Att:AnikilatorShadow

jonathasbizerril

Jhonn Stifler
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/02/08Posts: 57Char no Tibia: The Rev

pego 100% mais queria que quando o npc reseta-se o player vinhe-se com 10% do hp e 5% da mana tem como ?

 

 

+rep