Postado Outubro 21, 2016 8 anos Alguem poderia me auxiliar, já tem algum tempo que estou tentando criar um script de npc de barco, mas acho que estou errando alguma coisa, já vi muitos topicos aqui no forum e nada, editei um script pronto e nada tambem, se alguem poder me informar o erro, segue abaixo script! local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 local voices = { {text = 'Passages to Gengia, Oken, Pyre e Thais!'} } npcHandler:addModule(VoiceModule:new(voices)) -- Travel local function addTravelKeyword(keyword, cost, destination) local travelKeyword = keywordHandler:addKeyword({keyword}, StdModule.say, {npcHandler = npcHandler, text = 'Do you seek a passage to ' .. keyword:titleCase() .. ' for |TRAVELCOST|?', cost = cost, discount = 'postman'}) travelKeyword:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, cost = cost, discount = 'postman', destination = destination}) travelKeyword:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, text = 'We would like to serve you some time.', reset = true}) end addTravelKeyword('Thais', 0, Position(32310, 32219, 4)) addTravelKeyword('Gengia', 0, Position(30752, 30969, 6)) -- {x = 33493, y = 31712, z = 6} addTravelKeyword('Oken', 0, Position(29753, 29780, 6)) addTravelKeyword('Pyre', 0, Position(31320, 29870, 6)) -- Darashia local travelNode = keywordHandler:addKeyword({'darashi'}, StdModule.say, {npcHandler = npcHandler, text = 'Do you seek a passage to Darashia for |TRAVELCOST|?', cost = 0, discount = 'postman'}) local childTravelNode = travelNode:addChildKeyword({'yes'}, StdModule.say, {npcHandler = npcHandler, text = 'I warn you! This route is haunted by a ghostship. Do you really want to go there?'}) childTravelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, cost = 60, discount = 'postman', destination = function(player) return math.random(10) == 1 and Position(33324, 32173, 6) or Position(33289, 32481, 6) end}) childTravelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, reset = true, text = 'We would like to serve you some time.'}) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, reset = true, text = 'We would like to serve you some time.'}) -- Kick keywordHandler:addKeyword({'kick'}, StdModule.kick, {npcHandler = npcHandler, destination = {Position(32952, 32031, 6), Position(32955, 32031, 6), Position(32957, 32032, 6)}}) -- Basic keywordHandler:addKeyword({'sail'}, StdModule.say, {npcHandler = npcHandler, text = 'Where do you want to go? To {Gengia}, {Oken}, {Pyre} or {Thais}?'}) keywordHandler:addKeyword({'passage'}, StdModule.say, {npcHandler = npcHandler, text = 'Where do you want to go? To {Gengia}, {Oken}, {Pyre} or {Thais}?'}) keywordHandler:addKeyword({'job'}, StdModule.say, {npcHandler = npcHandler, text = 'I am the captain of this ship.'}) keywordHandler:addKeyword({'captain'}, StdModule.say, {npcHandler = npcHandler, text = 'I am the captain of this ship.'}) keywordHandler:addKeyword({'venor'}, StdModule.say, {npcHandler = npcHandler, text = 'This is Venore. Where do you want to go?'}) keywordHandler:addKeyword({'name'}, StdModule.say, {npcHandler = npcHandler, text = 'My name is Captain Vip from the Royal Tibia Line.'}) npcHandler:setMessage(MESSAGE_GREET, 'Welcome on board, |PLAYERNAME|. Where can I {sail} you today?') npcHandler:setMessage(MESSAGE_FAREWELL, 'Good bye. Recommend us if you were satisfied with our service.') npcHandler:setMessage(MESSAGE_WALKAWAY, 'Good bye then.') npcHandler:addModule(FocusModule:new())
Postado Outubro 21, 2016 8 anos Mano, nunca vir nada parecido, não se é outro tipo de NPC de barco, mais olhei ae e entendi nada. Usa esse, fácil de configurar e muito bom: Mostrar conteúdo oculto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 local travelNode = keywordHandler:addKeyword({'tibiaking'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Tem certeza que deseja ir para a Cidade de Tibiaking ?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = false, level = 1, cost = 0, destination = {x=564, y=1145, z=7} }) -- Posição para onde o player vai travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Até mais então!'}) keywordHandler:addKeyword({'viagem'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Eu posso lhe levar para: {Tibiaking City}. Onde deseja ir ?'}) -- Makes sure the npc reacts when you say hi, bye etc. npcHandler:addModule(FocusModule:new()) E eu acho que não preciso explicar como funciona, já que você estava tentando criar um. xD
Postado Outubro 21, 2016 8 anos Autor Em 21/10/2016 em 01:18, KotZletY disse: Mano, nunca vir nada parecido, não se é outro tipo de NPC de barco, mais olhei ae e entendi nada. Usa esse, fácil de configurar e muito bom: Mostrar conteúdo oculto Mostrar conteúdo oculto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 local travelNode = keywordHandler:addKeyword({'tibiaking'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Tem certeza que deseja ir para a Cidade de Tibiaking ?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = false, level = 1, cost = 0, destination = {x=564, y=1145, z=7} }) -- Posição para onde o player vai travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Até mais então!'}) keywordHandler:addKeyword({'viagem'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Eu posso lhe levar para: {Tibiaking City}. Onde deseja ir ?'}) -- Makes sure the npc reacts when you say hi, bye etc. npcHandler:addModule(FocusModule:new()) E eu acho que não preciso explicar como funciona, já que você estava tentando criar um. xD achei o problema amigo, nome das cidades que coloquei, todas iniciavam com letra maiúscula, coloquei minuscula e funfou! Editado Outubro 21, 2016 8 anos por vinicius.alves1 (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.