Postado Maio 3, 2022 3 anos Ao dar comando !online Bug do talk todos os jogadores aparecem com mesmo Reset, como mostra a imagem, o numero [3] são os resets. Esse é o Talk: function onSay(cid, words, param, channel) local player = Player(cid) local hasAccess = player:getGroup():getAccess() local players = Game.getPlayers() local playerCount = Game.getPlayerCount() player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, playerCount .. " Jogadores online.") local i = 0 local msg = "" for k, tmpPlayer in ipairs(players) do function getResets(cid) local resultId = db.storeQuery("SELECT `resets` FROM `players` WHERE `id`= "..getPlayerGUID(cid)) if resultId ~= false then local resets = result.getDataInt(resultId, 'resets') result.free(resultId) return resets end return 0 end if hasAccess or not tmpPlayer:isInGhostMode() then if i > 0 then msg = msg .. ", " end msg = msg .. tmpPlayer:getName() .. " (" .. tmpPlayer:getLevel() .. ") [".. getResets(cid) .."]" i = i + 1 end if i == 10 then if k == playerCount then msg = msg .. "." else msg = msg .. "," end player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, msg) msg = "" i = 0 end end if i > 0 then msg = msg .. "." player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, msg) end return false end Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.
Postado Maio 3, 2022 3 anos local maxPlayersPerMessage = 10 local function getResets(playerId) local resultId = db.storeQuery("SELECT `resets` FROM `players` WHERE `id`= " .. playerId) if not resultId then return false end local resets = result.getNumber(resultId, "resets") result.free(resultId) return resets end function onSay(player, words, param) local onlineList = {} for _, targetPlayer in ipairs(Game.getPlayers()) do if player:canSeeCreature(targetPlayer) then table.insert(onlineList, ("%s (%d)[%d]"):format(targetPlayer:getName(), targetPlayer:getLevel(), getResets(targetPlayer:getId()))) end end local playersOnline = #onlineList player:sendTextMessage(MESSAGE_EVENT_ADVANCE, ("%d players online."):format(playersOnline)) for i = 1, playersOnline, maxPlayersPerMessage do local j = math.min(i + maxPlayersPerMessage - 1, playersOnline) local msg = table.concat(onlineList, ", ", i, j) .. "." player:sendTextMessage(MESSAGE_EVENT_ADVANCE, msg) end return false end STYLLER OT 2022
Postado Maio 3, 2022 3 anos Autor 1 hora atrás, luanluciano93 disse: local maxPlayersPerMessage = 10 local function getResets(playerId) local resultId = db.storeQuery("SELECT `resets` FROM `players` WHERE `id`= " .. playerId) if not resultId then return false end local resets = result.getNumber(resultId, "resets") result.free(resultId) return resets end function onSay(player, words, param) local onlineList = {} for _, targetPlayer in ipairs(Game.getPlayers()) do if player:canSeeCreature(targetPlayer) then table.insert(onlineList, ("%s (%d)[%d]"):format(targetPlayer:getName(), targetPlayer:getLevel(), getResets(targetPlayer:getId()))) end end local playersOnline = #onlineList player:sendTextMessage(MESSAGE_EVENT_ADVANCE, ("%d players online."):format(playersOnline)) for i = 1, playersOnline, maxPlayersPerMessage do local j = math.min(i + maxPlayersPerMessage - 1, playersOnline) local msg = table.concat(onlineList, ", ", i, j) .. "." player:sendTextMessage(MESSAGE_EVENT_ADVANCE, msg) end return false end Deu erro amigo
Postado Maio 4, 2022 3 anos 23 horas atrás, mapper slaver slave disse: Deu erro amigo Mude: player:sendTextMessage(MESSAGE_EVENT_ADVANCE, ("%d players online."):format(playersOnline)) Para: player:sendTextMessage(MESSAGE_EVENT_ADVANCE, playersOnline .." players online." STYLLER OT 2022
Postado Maio 4, 2022 3 anos Autor 35 minutos atrás, luanluciano93 disse: Mude: player:sendTextMessage(MESSAGE_EVENT_ADVANCE, ("%d players online."):format(playersOnline)) Para: player:sendTextMessage(MESSAGE_EVENT_ADVANCE, playersOnline .." players online." Erro ao dar reload
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.