BR
poketibia

[Encerrado] Npc Que Teleporta para um Lugar sem poder entrar com ball

Por Bruuno0, 14 de dez. de 2013 em Tópicos Sem Resposta

resolvido
otserv
tibia
script
12
1.5k
Bruuno0B
14 de dezembro de 2013 às 17:27

Falaa Galerinha do Xtibia :D vim pedir uma ajuda a vocês Scripter's gostaria de um Npc Que Teleporta para um Lugar sem poder entrar com ball e ao entrar o Player ganhar 1 Great Ball qm pude ajuda Rep++

Vllw :D

 

Obs: O npc sera usado em Poketibia para transportar para uma quest.

 

zipter98Z
14 de dezembro de 2013 às 17:32

Área incorreta. A área que você postou é destinada à códigos já prontos, e não para pedidos e/ou dúvidas. Portanto, irei mover para a mais adequada - Pedidos e dúvidas - Servidores derivados (por se tratar de um pedido relacionado à pokémon). Mais cuidado da próxima vez.

 

Anyway, sabe fazer o .xml?

 

 

 

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 to_pos = {x = xxx, y = yyy, z = zzz}    --Para onde o jogador será teleportado.
    local great_id = 2391   --ID da Great Ball.
    
    if msgcontains(msg, "help") or msgcontains(msg, "mission") then
        selfSay("Você gostaria de realizar uma missão? Para isso, você não deverá ter pokeball alguma em sua bag.", cid)
        talkState[talkUser] = 1
        return true
    elseif msgcontains(msg, "yes") and talkState[talkUser] == 1 then
        if getPlayerItemCount(cid, 2391) >= 1 or getPlayerItemCount(cid, 2394) >= 1 or getPlayerItemCount(cid, 2392) >= 1 or getPlayerItemCount(cid, 2393) >= 1 or getPlayerItemCount(cid, 12617) >= 1 then   --estão configurados os IDs das pokeballs do PDA (normal, great, super, ultra e saffari).
            selfSay("Desculpe, você possui alguma pokeball em sua mochila. Retire-a, e assim poderei lhe levar para a quest.", cid)
            talkState[talkUser] = 0
            return true
        end
        selfSay("Boa sorte! Lhe darei uma Great Ball para lhe auxiliar.", cid)
        doPlayerAddItem(cid, great_id, 1)
        doTeleportThing(cid, to_pos)
        talkState[talkUser] = 0
        return true
    elseif msgcontains(msg, "no") and talkState[talkUser] == 1 then
        selfSay("Tudo bem, então. Até mais!", cid)
        talkState[talkUser] = 0
        return true
    end
    return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Editado Dezembro 14 por zipter98

Bruuno0B
14 de dezembro de 2013 às 18:23

Zipter poderia me adc no skype? Bruno.combio walker. se puder agradeço fica mais facil a comunicação.

zipter98Z
14 de dezembro de 2013 às 18:34

O NPC funcionou? Já posso mover o tópico?

Bruuno0B
14 de dezembro de 2013 às 18:37

preciso de ajuda para cria-lo...nao manjo disso se puder me ajudar via skype fica melhoor..

zipter98Z
14 de dezembro de 2013 às 18:42

data/npcs/scripts, crie um arquivo com extensão.lua, nomeie-o npcmissao, e coloque aquele código que enviei. Depois, em data/npcs, crie um arquivo .xml com esse conteúdo:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Nome do npc" script="npcmissao.lua" walkinterval="350000" floorchange="0" speed="0" lookdir="2">
<health now="150" max="150"/>
<look type="1485" head="10" body="15" legs="20" feet="25"/>
 
<parameters>
<parameter key="message_greet" value="Hi, can you {help} me?"/>
</parameters>
 
</npc>
Bruuno0B
14 de dezembro de 2013 às 18:48

Mais como ele vai saber pra onde teleportar o player?

skyofdeusS
14 de dezembro de 2013 às 20:46

Mais como ele vai saber pra onde teleportar o player?

Amigo

 

local to_pos = {x = xxx, y = yyy, z = zzz} --Para onde o jogador será teleportado.

local great_id = 2391 --ID da Great Ball.

 

Em vermelho, coordenadas para onde ser teleportado.

Em azul, item que ele ira recebe como auxilio do npc.

 

Espero ter ajudado.

Bruuno0B
14 de dezembro de 2013 às 22:09

Valeu Man vou tenta aki se der dou rep++ amanha limite ake :D

Vllw msm tioo

zipter98Z
15 de dezembro de 2013 às 18:57

Posso mover?

2 semanas depois...
GabrieltxuG
27 de dezembro de 2013 às 23:51

Tópico movido para a seção de dúvidas e pedidos resolvidos.

4 anos depois...
StigalS
21 de abril de 2018 às 03:16
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.