Postado Julho 31, 2019 5 anos Se o player não selecionar um lugar da erro no distro: Lua Script Error: [CreatureScript Interface] data/creaturescripts/scripts/modalgatekeeper.lua:onModalWindow data/creaturescripts/scripts/modalgatekeeper.lua:5: attempt to index a nil value stack traceback: [C]: in function '__index' data/creaturescripts/scripts/modalgatekeeper.lua:5: in function <data/creaturescripts/scripts/modalgatekeeper.lua:1> Alguem sabe como checar se n tiver selecionado destino ?
Postado Julho 31, 2019 5 anos Em 31/07/2019 em 17:46, danilo9317 disse: Se o player não selecionar um lugar da erro no distro: Lua Script Error: [CreatureScript Interface] data/creaturescripts/scripts/modalgatekeeper.lua:onModalWindow data/creaturescripts/scripts/modalgatekeeper.lua:5: attempt to index a nil value stack traceback: [C]: in function '__index' data/creaturescripts/scripts/modalgatekeeper.lua:5: in function <data/creaturescripts/scripts/modalgatekeeper.lua:1> Alguem sabe como checar se n tiver selecionado destino ? Testa colocando isto: function onModalWindow(player, modalWindowId, buttonId, choiceId) player:unregisterEvent("janela hunts") if (modalWindowId == 1000) then if (buttonId == 100) then local tele_pos = CONFIG_TPS_JANELA[JANELA_TP_ACTION][choiceId].pos player:teleportTo(tele_pos) local pos_t = Position(tele_pos) pos_t:sendMagicEffect(CONST_ME_MAGIC_BLUE) else player:sendCancelMessage('Você não escolheu uma opção.') end end return true end Contribuições: => Distribuições/Servidores [8.60] The Forgotten Server 1.3 (COMPILADO WIN x64) => Scripts/Códigos/Tutoriais Pokemon pescado aparece em volta do seu pokemon [Gesior]Dobrar pontos PagSeguro a partir de x valor doado Gostou de alguma contribuição? Rep +?
Postado Agosto 1, 2019 5 anos @Rayo Não funcionou, estou tentando pensar uma logica function onModalWindow(player, modalWindowId, buttonId, choiceId) player:unregisterEvent("janela hunts") if (modalWindowId == 1000) then if buttonId == 100 then if choiceId == 1 or choiceId == 2 or choiceId == 3 or choiceId == 4 then -- Adicionei as escolhas que adicionei no vetor de TPs local tele_pos = CONFIG_TPS_JANELA[JANELA_TP_ACTION][choiceId].pos player:teleportTo(tele_pos) local pos_t = Position(tele_pos) pos_t:sendMagicEffect(CONST_ME_MAGIC_BLUE) else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, 'Escolha um destino.') return false end end end end A solução que encontrei foi adicionar a lista de lugares que adicionei pelo AddChoice. por algum motivo ele não tava conseguindo ler operadores ( >= , <=, ao tentar usar retornava index nil) para comparar o choiceID e encurtar, se alguém souber por que gostaria de saber. Editado Agosto 1, 2019 5 anos por danilo9317 (veja o histórico de edições)
Postado Agosto 1, 2019 5 anos Em 01/08/2019 em 01:17, danilo9317 disse: @Rayo Não funcionou, estou tentando pensar uma logica function onModalWindow(player, modalWindowId, buttonId, choiceId) player:unregisterEvent("janela hunts") if (modalWindowId == 1000) then if buttonId == 100 then if choiceId == 1 or choiceId == 2 or choiceId == 3 or choiceId == 4 then -- Adicionei as escolhas que adicionei no vetor de TPs local tele_pos = CONFIG_TPS_JANELA[JANELA_TP_ACTION][choiceId].pos player:teleportTo(tele_pos) local pos_t = Position(tele_pos) pos_t:sendMagicEffect(CONST_ME_MAGIC_BLUE) else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, 'Escolha um destino.') return false end end end end A solução que encontrei foi adicionar a lista de lugares que adicionei pelo AddChoice. por algum motivo ele não tava conseguindo ler operadores ( >= , <=, ao tentar usar retornava index nil) para comparar o choiceID e encurtar, se alguém souber por que gostaria de saber. Você está usando TFS 1.3? Contribuições: => Distribuições/Servidores [8.60] The Forgotten Server 1.3 (COMPILADO WIN x64) => Scripts/Códigos/Tutoriais Pokemon pescado aparece em volta do seu pokemon [Gesior]Dobrar pontos PagSeguro a partir de x valor doado Gostou de alguma contribuição? Rep +?
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.