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?






info
Grupo: Visconde
Registrado: 20/08/06
Posts: 250
Reputação: +146
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; }