Ir para conteúdo
  • Cadastre-se

[Pedido] Npc que faz virar morador da cidade.


Posts Recomendados

ola pessoal gostaria de pedir um script de um npc que faz virar morador da cidade em vez do player ter que passar em cima de um tile.

 

Ou seja, o jogador fala com o npc que pergunta se ele deseja virar morador de tal cidade. ai o player diz "yes" e passa a ser morador dessa cidade.
 
Segue o script do tile que faz virar morador da cidade em meu servidor.

 

 

function onStepIn(cid, item, position, fromPosition)

if(item.actionid > 30020 and item.actionid < 30100) then
local townId = (item.actionid - 30020)
doPlayerSetTown(cid, townId)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce agora e um morador de " .. getTownName(townId) .. ".")
end
 
return true
end

 

Se alguém puder me ajudar fico muito grato, já procurei em todo o tibiaking e não encontrei.

abraços!

Editado por maiconmnt (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 3 weeks later...
  • Respostas 9
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Tenta colocar isso aqui no .lua do NPC:  local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} local townid = [COLOQUE O ID DA CIDADE AQUI] function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type,

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 crea

Fiz pra que o player seja teleportado para o templo da nova town ao falar com o NPC. mayor.lua (data/npc/scripts): local newtown = 5 -- new townID 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, typ

Tenta colocar isso aqui no .lua do NPC: 

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
local townid = [COLOQUE O ID DA CIDADE AQUI]

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 greetCallback(cid)
     if msgcontains(cid,"citizen") then
          selfSay("Do you want to become a citizen?", cid)
          talkState[talkUser]=1
     end
     if talkState[talkUser]==1 then
          if msgcontains(cid,"yes") then
               selfSay("So be it!", cid)
               doPlayerSetTown(cid, townid)
          elseif msgcontains(cid,"no") then
               selfSay("As you wish.", cid)
          end
          talkState[talkUser]=0
     end
end
 
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:addModule(FocusModule:new())

Não esquece de mudar o ID da cidade ali. Se não funcionar, me avisa. :)

 

Abraço.

Editado por palubo (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

então não deu certo. 

coloquei o npc no mapa e tudo mas ele não aparece e nem consigo sumonar ele. como coloco no script do npc em si? coloquei assim...

 

<?xml version="1.0" encoding="UTF-8"?>

<npc name="Rei De Baiak" script="data/npc/scripts/reidebaiak.lua" walkinterval="2000" floorchange="0">
    <health now="100" max="100"/>
    <look type="129" head="19" body="69" legs="107" feet="50" addons="0"/>
    <parameters>
        <parameter key="message_greet" value="Bem vindo |PLAYERNAME|. Eu posso fazelo virar morador de Baiak, basta dizer {citizen}."/>
        <parameter key="message_farewell" value="Ate Logo"/>
    </parameters>
</npc>

de qualquer forma rep + por tentar me ajudar. vou dar uma verificada aqui no código e ve se consigo alguma coisa.

Link para o post
Compartilhar em outros sites
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, "yes")) then
        if getPlayerTown(cid) == 0 then
            npcHandler:say("Welcome! You are now a citizen of Baiak Town", cid)
            doPlayerSetTown(cid, 1)
        else
            npcHandler:say("sorry you already are a resident of this city!!", cid)
        end
        end
 
 
return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Editado por klipstyle (veja o histórico de edições)

www.pokemiw.com
24 Horas Online - 1º 2º 3º 4º 5º 6º 7º gerações 100%
 

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.

  • Estatísticas dos Fóruns

    96847
    Tópicos
    519606
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo