Ir para conteúdo

Farathor

Visconde
  • Total de itens

    320
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Tudo que Farathor postou

  1. Tem o init.lua : local config = { creationTime = 7 * 86400, checkTime = 7 * 86400, viceCount = 4, memberCount = 10 } function onStartup() local data, time, result = {}, os.time(), db.getResult("SELECT `id`, `ownerid`, `creationdata`, `checkdata` FROM `guilds` WHERE `world_id` = " .. getConfigValue('worldId') .. ";") if(result:getID() ~= -1) then repeat data[result:getDataInt("id")] = {result:getDataInt("ownerid"), result:getDataInt("creationdata"), result:getDataInt("checkdata")} until not(result:next()) result:free() end for id, v in ipairs(data) do local owner, created, check = v[1], v[2], v[3] if(created < (time - config.creationTime)) then result = db.getResult("SELECT `id`, `level` FROM `guild_ranks` WHERE `guild_id` = " .. id .. ";") if(result:getID() ~= -1) then local rank, ranks = 0, {} repeat ranks[result:getDataInt("id")] = result:getDataInt("level") if(result:getDataInt("level") == 1) then rank = result:getDataInt("id") end until not(result:next()) result:free() local members = {0, 0, 0, 0} for k, v in ipairs(ranks) do result = db.getResult("SELECT COUNT(`id`) AS `count` FROM `players` WHERE `rank_id` = " .. k .. ";") if(result:getID() ~= -1) then members[v] = members[v] + result:getDataInt("count") result:free() end if(v == 2) then result = db.getResult("SELECT `p`.`id` FROM `players` p LEFT JOIN `accounts` a ON `p`.`account_id` = `a`.`id` WHERE `p`.`rank_id` = " .. k .. " AND (`a`.`premdays` = 0 OR (`a`.`lastday` + (`a`.`premdays` * 86400) <= 0));") if(result:getID() ~= -1) then local demote = "" repeat demote = demote .. result:getDataInt("id") .. "," members[2] = members[2] - 1 members[1] = members[1] + 1 until not(result:next()) result:free() if(demote ~= "" and rank ~= 0) then db.query("UPDATE `players` SET `rank_id` = " .. rank .. " WHERE `id` IN (" .. demote:sub(1, -2) .. ");") end end end end for i = 1, 3 do members[4] = members[4] + members[i] end if(members[2] < config.viceCount or members[4] < config.memberCount) then if(check == 0) then db.query("UPDATE `guilds` SET `checkdata` = " .. (time + config.checkTime) .. " WHERE `id` = " .. id .. ";") elseif(check < time) then local tmp = "" for rank, _ in ipairs(ranks) do tmp = tmp .. rank .. "," end db.query("UPDATE `players` SET `rank_id` = 0, `guildnick` = '', `guildjoin` = 0 WHERE `rank_id` IN (" .. tmp:sub(1, -2) .. ");") db.query("DELETE FROM `guilds` WHERE `id` = " .. id .. ";") end end end end end db.query("UPDATE `players` SET `online` = 0 WHERE `world_id` = " .. getConfigValue('worldId') .. " AND `online` > 0;") db.query("UPDATE `bans` SET `active` = 0 WHERE `expires` <= " .. time .. " AND `expires` >= 0 AND `active` = 1") db.query("DELETE FROM `guild_wars` WHERE `status` = 0 AND `begin` < " .. (time - 2 * 86400) .. ";") if(getConfigValue("sqlType") ~= "sqlite") then db.query("TRUNCATE TABLE `player_statements`;") else db.query("DELETE FROM `player_statements`;") end local query = db.getResult("SELECT `guild_id` FROM `castle_dono` WHERE `guild_id` > 0") if query:getID() ~= -1 then setGlobalStorageValue(1823999, query:getDataInt("guild_id")) end return true end function onGlobalSave() if(getGameState() ~= GAMESTATE_CLOSING) then return onStartup() end return true end
  2. Então, não tem nenhum arquivo escrito start.lua no globalevents
  3. assim? PLAYERCUSTOMFLAG_HASFULLLIGHT = 26 STAFF_VAULT = 49391 STAFF_VAULT_LIMITS = 49392 maleOutfits = {128, 129, 130, 131, 132, 133, 134, 143, 144, 145, 146, 151, 152, 153, 154, 251, 268, 273, 278, 289, 325, 328, 335, 367}
  4. o cofreLimits retorna o dinheiro movimentado no banco secundario pelo jogador que utilizar o comando
  5. Então, esse script de Cofre da Staff seria como um segundo banco, que todo mês é adicionado uma certa quantidade de dinheiro a todos os jogador com group maior que 3 ou seja, GM e CM, quantidade de dinheiro para GM, seria menor que a de CM. O Dinheiro desse cofre só poderia ser movimento a partir de comandos: /cofreTransfer, <nome do jogador>, <quantidade> /cofreLimits (Vê quanto você gastou no mês e quanto tem de saldo ainda) Quando o GM Usa o comando /cofreTransfer, a quantidade de dinheiro que ele transferiu vai para o banco do jogador, todo mês é resetado o cofreLimits e é adicionado a quantidade configurada de dinheiro para ele. Caso não entendam, postem sua duvida que eu tento explicar melhor.
  6. na primeira posição, é a posição da parede e na segunda é para onde será teleportado?
  7. Desculpe, então o script funciona assim: Eu tenho um FireBug, eu pego dou use nele e uso ele em uma certa parede que fica numa certa posição, quando eu faço isso eu sou teleportado para outra posição e o firebug some, agora está melhor?
  8. Galera, meu pedido é o seguinte: Eu iria usar o FireBug (5468) em um certo local e o jogador que estiver usando vai se teleportar para tal local, e quando eu usar o item na parede, o item some
  9. para eu adicionar mais items como recompensa é só eu colocar mais virgulas? assim? prize = {2160, count},{2133,count},?
  10. acho que você não entendeu, o evento é um evento de times, e quando o jogador entra no teleport a roupa dele muda para esse looktype e para essas cores, e eu queria que ele também fica-se com o addon full entendeu?
  11. Então, como no título já diz, eu queria adicionar addons nessa linha: addOutfitCondition(conditionBlack, {lookType = 134, lookHead = 114, lookBody = 95, lookLegs = 114, lookFeet = 95})
  12. me fala o tamanho da capa do facebook
  13. Teria como colocar para enviar para o depot? ou fazer uma checagem para caso o jogador esteja sem cap
  14. Duvida, o item é enviado para o depot?
  15. a tag do xml também é uma normal?
  16. a tag no monstro, seria normal?
  17. A magia iria funcionar da seguinte forma, o monstro estaria atacando um player e quando ele soltar a magia, esse player iria se transformar em uma estatua e a magia Irá travar o jogador por 5 segundos, o jogador poderá se curar, atacar, mas se mover será impossivel.
  18. O distro carrega até essa parte e depois para, da erro e não carrega mais.
  19. Então, o script irá funcionar da seguinte maneira, toda quarta feira entre 15:00 e 22:00 um monstro irá nascer em algum lugar aleatoriamente (configuravel no script as posições aleatorias que ele poderá nascer) Pra cada posição, irá ter uma mensagem diferente, por exemplo: Posição 1 - Uma criatura maligna nasceu em Sao Paulo Posição 2 - Uma criatura maligna nasceu em Bahia Se não entenderem direito, falem sua duvida que eu tento explicar melhor. Obrigado pela atenção!
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...