Kydrai 146 Postado Janeiro 14, 2016 Share Postado Janeiro 14, 2016 Precisa remover o break da função luaDoCreatureSetNick para o nome ser enviado para todos os jogadores na tela. E também tem que arrumar o que a função lua irá retornar, no caso acho que seria bom um false ou true. O certo seria assim: int32_t LuaScriptInterface::luaDoCreatureSetNick(lua_State* L) { //doCreatureSetNick(cid, nick) ScriptEnviroment* env = getEnv(); std::string nick = popString(L); Creature* creature = env->getCreatureByUID(popNumber(L)); if (creature) { SpectatorVec list; g_game.getSpectators(list, creature->getPosition()); Player* player = NULL; creature->Nick = nick; for (SpectatorVec::const_iterator it = list.begin(); it != list.end(); ++it) { if (player = (*it)->getPlayer()) { player->sendCreatureNick(creature); } } lua_pushboolean(L, true); } else { lua_pushboolean(L, false); } return 1; } Link para o comentário Compartilhar em outros sites More sharing options...
Avronex 104 Postado Janeiro 14, 2016 Share Postado Janeiro 14, 2016 Amigo venho informar que a função tem um pequeno problema ela ate funciona só que para outro player que está vendo você usando outro client as vezes a função não funciona. Imagens a seguir. Aqui e eu me vendo. Aqui e o outro pleyer me vendo. Está usando tfs 0.3.6? Link para o comentário Compartilhar em outros sites More sharing options...
lessa 2 Postado Janeiro 14, 2016 Share Postado Janeiro 14, 2016 (editado) Sim uso 0.3.6 Precisa remover o break da função luaDoCreatureSetNick para o nome ser enviado para todos os jogadores na tela.E também tem que arrumar o que a função lua irá retornar, no caso acho que seria bom um false ou true.O certo seria assim: int32_t LuaScriptInterface::luaDoCreatureSetNick(lua_State* L) { //doCreatureSetNick(cid, nick) ScriptEnviroment* env = getEnv(); std::string nick = popString(L); Creature* creature = env->getCreatureByUID(popNumber(L)); if (creature) { SpectatorVec list; g_game.getSpectators(list, creature->getPosition()); Player* player = NULL; creature->Nick = nick; for (SpectatorVec::const_iterator it = list.begin(); it != list.end(); ++it) { if (player = (*it)->getPlayer()) { player->sendCreatureNick(creature); } } lua_pushboolean(L, true); } else { lua_pushboolean(L, false); } return 1; } Cara agora está funcionando 100% obrigado. Está usando tfs 0.3.6? sim uso tfs 0.3.6 Editado Janeiro 15, 2016 por leandrolessa Link para o comentário Compartilhar em outros sites More sharing options...
Josegvb 87 Postado Janeiro 16, 2016 Share Postado Janeiro 16, 2016 ^^ nem quero sair do lixo pda pois trabalhar com sourcers é complicado e minha equipe é: eu, eu e eu ^^ entao to de boa com pda só mas msm assim reputei valeu pela contribuçao Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados