Postado Janeiro 19, 2015 10 anos Oi galera, Tudo bem? Hoje tentando criar um script fiquei com uma dúvida nessa função ->. getHighscoreString(skillId) Ela retorna oque? Tava pensando em fazer um script que fizesse assim: ao logar consultar os highscore, se o player que estiver logando for o [1] faça tal coisa. ( Faz tempo que nao scripto e esqueci de várias coisas rsrsrs) Teria fazer pra ele verificar o maior level,level de skill e maglevel direto pesquisando na database ao logar? ATT LUCAS Scripter: |||||||||| 10% Te ajudei?? REP + e ficamos quites... Atenciosamente, Lucas. Abraços!
Postado Janeiro 19, 2015 10 anos luascripts.cpp int32_t LuaInterface::luaGetHighscoreString(lua_State* L) { //getHighscoreString(skillId) uint16_t skillId = popNumber(L); if(skillId <= SKILL__LAST) lua_pushstring(L, g_game.getHighscoreString(skillId).c_str()); else lua_pushboolean(L, false); return 1; } game.cpp std::string Game::getHighscoreString(uint16_t skill) { Highscore hs = highscoreStorage[skill]; std::stringstream ss; ss << "Highscore for " << getSkillName(skill) << "\n\nRank Level - Player Name"; for(uint32_t i = 0; i < hs.size(); ++i) ss << "\n" << (i + 1) << ". " << hs[i].second << " - " << hs[i].first; ss << "\n\nLast updated on:\n" << std::ctime(&lastHighscoreCheck); return ss.str(); } Uma string com o seguinte formato: "Highscore for nome da skill Rank Level - Player Name 1. 100 - Player 1 2. 99 - Player 2 3. 98 - Player 3 Last update on: tempo" String acima é um exemplo.
Postado Janeiro 19, 2015 10 anos Autor Como posso fazer pra acessar este elemento da string? 1. 100 - Player 1 que no caso é o um e atribuir definições a ele.. Scripter: |||||||||| 10% Te ajudei?? REP + e ficamos quites... Atenciosamente, Lucas. Abraços!
Postado Janeiro 19, 2015 10 anos Como posso fazer pra acessar este elemento da string? 1. 100 - Player 1 que no caso é o um e atribuir definições a ele.. local highscore_player = string.match(getHighscoreString(skillId), "1. %d+ -- (.-)\n")
Postado Janeiro 19, 2015 10 anos Autor Por que assim str1 = string.match(getHighscoreString(8), "1. %d+ -- (.-)\n") doShowTextDialog(cid,2529, str1) quando do o comando mostra em branco a aba nao deveria mostrar o nome do primeiro do highscore de level? Scripter: |||||||||| 10% Te ajudei?? REP + e ficamos quites... Atenciosamente, Lucas. Abraços!
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.