Postado Fevereiro 2, 2016 9 anos Boa noite meus jovens e loucos Tibianos. To montando um servidor e to precisando de um npc que teleporte o player para o local, porem que somente com X vocation... Exemplo, meu servidor tem 8 vocations, e já fiz as 8 cidades, uma de cada vocation, queria que quando o player pegasse level 10 e fosse ao npc, o npc nao desse outra escolha a ele, e falasse somente "aquela cidade" de acordo com sua vocation, e se ele soubesse o nome de outra cidade, ele nao conseguir viajar, pois ele só pode ir pra "a cidade da sua vocation", entenderam? Vlw galera s2
Postado Fevereiro 2, 2016 9 anos Esta é uma mensagem automática, este tópico foi movido para a área correta. Regras do fórum: http://www.tibiaking.com/forum/topic/1281-regras-gerais/#comment-7680Este tópico foi movido: De: Scripting OTServ > OTServ > Monsters e NPCs Para: Suporte OTServ > OTServ > Suporte de Scripts ➥ Regras | Seções OTServ | Seções BOT
Postado Fevereiro 8, 2016 9 anos Solução Fiz um aqui pra você, espero que sirva, se der algum problema me avise. Em "Data/npc/scripts", copie e cole um arquivo.lua e renomeie para vocTravel.lua, apague tudo e cole: local cfg = { citys = { [1] = {pos = {x = 160, y = 43, z = 7}, name = "cidade1"}, [2] = {pos = {x = 160, y = 44, z = 7}, name = "cidade2"}, [3] = {pos = {x = 160, y = 45, z = 7}, name = "cidade3"}, [4] = {pos = {x = 160, y = 46, z = 7}, name = "cidade4"}, }, level = 10, keys = {'travel', 'viajar', 'sail', 'passage'} } 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 msg = msg:lower(); local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local city = cfg.citys[getPlayerVocation(cid)] local vocName = getVocationInfo(getPlayerVocation(cid)).name if isInArray(cfg.keys, msg) then if getPlayerLevel(cid) >= cfg.level then if city then selfSay('Sua cidade principal sendo um '.. vocName ..' é a '.. city.name ..', deseja mesmo ir?', cid) talkState[talkUser] = 1 end else selfSay('Você ainda está muito fraco para viajar, volte aqui quando estiver level '.. cfg.level ..' ou mais.', cid) end elseif msgcontains(msg, 'yes') then if talkState[talkUser] == 1 then doTeleportThing(cid, city.pos) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT) end elseif msgcontains(msg, 'no') then if talkState[talkUser] == 1 then selfSay('Tudo bem então, quando estiver interessado, venha falar comigo novamente.', cid) talkState[talkUser] = 0 end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Em "Data/npc", copie e cole um arquivo.xml e renomeie para nomedonpc.xml, apague tudo e cole: <?xml version="1.0" encoding="UTF-8"?> <npc name="NOMEDONPC" script="vocTravel.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="128" head="17" body="54" legs="114" feet="0" addons="2"/> <parameters> <parameter key="message_greet" value="Olá |PLAYERNAME|! Deseja {viajar} para sua cidade principal?"/> </parameters> </npc> A configuração é o seguinte, em citys você coloca o ID da vocação entre [] e na frente você coloca a posição para onde essa vocação será levada e o nome da cidade desse vocação. Logo abaixo, tem o level necessário para passar e as mensagens para iniciar o diálogo de travel. ➥ Regras | Seções OTServ | Seções BOT
Postado Fevereiro 9, 2016 9 anos Autor Wakon, desculpa pela demora, estou correndo atrás disso mas sai com a familia por 2 dias ... Venho já pedir muito obrigado por me ajudar, ultimamente eu nao consigo ninguem disposto a isso ... Mas bem, deu este erro, vou postar a imagem e voce me diz oque aconteceu Uso tfs 10.76-10.77 Editado Fevereiro 9, 2016 9 anos por Trayron1 (veja o histórico de edições)
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.