Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Funcional em:

TFS 8.6 DEV 0.4 (REV3884)

Esse npc não foi criando somente por mim eu apenas

aperfeiçoei e coloquei novas funções tirando também diversos bugs que atrapalhavam

seu funcionamento.

Em data/npc coloque:



<?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>

Creditos pelo npc base:

@nubinho

Qualquer duvida postem ai abaixo!

Crie um arquivo .lua em data\npc\scripts e coloque

-- 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 &lt; 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) &lt; 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) &lt; newPrice then

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

elseif getPlayerLevel(cid) &lt; 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())

Editado por Spraypaint (veja o histórico de edições)

Descreva seus sonhos aqui.

Link para o post
Compartilhar em outros sites
  • 9 months later...

Alguém pode me ajudar? Fiz tudo certo mais o NPC não aparece no mapa

 

 

Se Quiser ADD Skype: Henrique0006

Editado por Balkalima (veja o histórico de edições)

Ajudar os outros sobre o que se sabe não dói pois amanhã quem pode precisar de ajuda é você!  ;)

 

 

Só sei que nada sei. ~ Sócrates  :cool:

 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo