Ir para conteúdo

gmstrikker

Campones
  • Total de itens

    89
  • Registro em

  • Última visita

Tudo que gmstrikker postou

  1. Gesior.pl fixou essa lib, o que vcs precisam mudar é: --- Trocar o trigger pra: [code] DELIMITER $$ CREATE TRIGGER guilds_update BEFORE UPDATE ON players FOR EACH ROW BEGIN IF old.rank_id <> new.rank_id THEN SET new.guild_id = COALESCE((SELECT guild_id FROM guild_ranks WHERE id = new.rank_id), 0); END IF; END$$ DELIMITER ; [/code] --- Trocar: [code] UPDATE guilds SET points = (1 + (SELECT points FROM guilds WHERE id = 2)) WHERE id = 2 UPDATE guilds SET balance = (SELECT balance FROM guilds WHERE `id` = 2) + 150000 WHERE `id` = 2 [/code] Pra: [code] UPDATE guilds SET points = points + 1 WHERE id = 2 UPDATE guilds SET balance = balance + 150000 WHERE `id` = 2 [/code]
  2. Alguém tem alguma ideia de como colocar isso pra rodar? isso seria da hora pra maioria dos servidores...
  3. 1) usando o primeiro comando: CREATE TRIGGER `rank_id update` AFTER UPDATE OF rank_id ON players BEGIN UPDATE players SET guild_id = IFNULL((SELECT guild_id FROM guild_ranks WHERE `id` = rank_id), 0); Error SQL query: CREATE TRIGGER `rank_id update` AFTER UPDATE OF rank_id ON players BEGIN UPDATE players SET guild_id = IFNULL((SELECT guild_id FROM guild_ranks WHERE `id` = rank_id), 0) MySQL said: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'OF rank_id ON players BEGIN UPDATE players SET guild_id = IFNULL((SELECT guild_i' at line 1 2) usando o segundo comando: Usando o segundo deu um erro que parece que a "entidade" rank_id já está criada ALTER TABLE `players` ADD `rank_id` VARCHAR(20); erro: Error SQL query: ALTER TABLE `players` ADD `rank_id` VARCHAR(20) MySQL said: #1060 - Duplicate column name 'rank_id'
  4. Caramba dei UP mais de 10 dias e nenhuma resposta, esse fórum morreu mesmo, que triste
  5. Tem um sistema aqui no fórum magnifico que deveria ter em todos os OTs, é sobre tasks pra guildas, imaginem a interatividade que isso proporciona pra um servidor... Mas eu vi que muita gente está com esse erro na hora de instalar igual ao meu e ninguem conseguiu ajudar, será que algum membro novo consegue salvar a gente? O sistema é esse aqui: O erro acontece na hora de executar a talkaction /agsinstall que vem dentro do sistema e eu postei o código acima <talkaction words="/agsinstall" access="5" event="script" value="advanced_guild_system_install.lua"/> function onSay(cid, words, param) installAdvancedGuildSystem() end que usa a função de ot/libs/guildlib.lua [5:30:59.549] mysql_real_query(): SELECT points FROM guilds; - MYSQL ERROR: Unknown column 'points' in 'field list' (1054) [5:31:01.692] mysql_real_query(): CREATE TRIGGER [`rank_id update`] AFTER UPDATE OF rank_id ON players BEGIN UPDATE players SET guild_id = IFNULL((SELECT guild_id FROM guild_ranks WHERE `id` = rank_id), 0); END; - MYSQL ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '[`rank_id update`] AFTER UPDATE OF rank_id ON players BEGIN UPDATE players SET g' at line 1 (1064) Advanced Guild System could NOT be installed.
  6. Tentei aqui e não funcionou, gostaria mt de usar esse sistema Quando eu uso o talkaction pra instalar o sistema: <talkaction words="/agsinstall" access="5" event="script" value="advanced_guild_system_install.lua"/> /agsinstall [5:30:59.549] mysql_real_query(): SELECT points FROM guilds; - MYSQL ERROR: Unknown column 'points' in 'field list' (1054) [5:31:01.692] mysql_real_query(): CREATE TRIGGER [`rank_id update`] AFTER UPDATE OF rank_id ON players BEGIN UPDATE players SET guild_id = IFNULL((SELECT guild_id FROM guild_ranks WHERE `id` = rank_id), 0); END; - MYSQL ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '[`rank_id update`] AFTER UPDATE OF rank_id ON players BEGIN UPDATE players SET g' at line 1 (1064) Advanced Guild System could NOT be installed.
  7. Coloquei a virgula no final do último, tentei colocar todos os monstros com letras minusculas, como no script padrão e nada mudou 00:43 Arthur The Guild Tasker: I have the following tasks for your guild: . Which one do you want?
  8. Encontrei aqui nesse fórum esse sistema incrivel de guild task, onde uma guild tem uma task para matar certos monstros e depois ganham uma recompensa. O problema é que configurei minha lista de monstros da task, mas quando falo com o NPC ele não entrega nenhuma task, acho que fiz alguma coisa errado... Sistema full: Fala com NPC: 10:45 Arthur: Strikker, would you like to get some tasks? 10:45 Strikker [20]: tasks 10:45 Arthur: Do you want to start a task, reset a task, finish your task, check your guild's progress or information about guild tasks? 10:46 Strikker [20]: start 10:46 Arthur: I have the following tasks for your guild: . Which one do you want? lib/guildtask_lib.lua -- Storages GT = { kills = 51, totalKills = 52, task = 53, time = 54, -- Customization starts here -- Monsters monsters = { {names = {"Troll"}, totalKills = 2000, money = 600000, points = 1, minPoints = 0}, {names = {"Rotworm"}, totalKills = 2000, money = 600000, points = 1, minPoints = 1}, {names = {"Goblin"}, totalKills = 2000, money = 600000, points = 1, minPoints = 2}, {names = {"Dwarf"}, totalKills = 2000, money = 600000, points = 1, minPoints = 3}, {names = {"Amazon"}, totalKills = 2000, money = 600000, points = 1, minPoints = 4}, {names = {"Carrion Worm"}, totalKills = 2000, money = 600000, points = 1, minPoints = 5}, {names = {"Valkyrie"}, totalKills = 2000, money = 600000, points = 1, minPoints = 6}, {names = {"Skeleton"}, totalKills = 2000, money = 600000, points = 1, minPoints = 7}, {names = {"Minotaur"}, totalKills = 2000, money = 600000, points = 1, minPoints = 8}, {names = {"Ghoul"}, totalKills = 2000, money = 600000, points = 1, minPoints = 9}, {names = {"Elf"}, totalKills = 2000, money = 600000, points = 1, minPoints = 10}, {names = {"Dwarf Soldier"}, totalKills = 2000, money = 600000, points = 1, minPoints = 11}, {names = {"Tarantula"}, totalKills = 2000, money = 600000, points = 1, minPoints = 12}, {names = {"Cyclops"}, totalKills = 2000, money = 600000, points = 1, minPoints = 13}, {names = {"Larva"}, totalKills = 2000, money = 600000, points = 1, minPoints = 14}, {names = {"Nomad"}, totalKills = 2000, money = 600000, points = 1, minPoints = 15}, {names = {"Tortoise"}, totalKills = 2000, money = 600000, points = 1, minPoints = 16}, {names = {"Terramite"}, totalKills = 2000, money = 600000, points = 1, minPoints = 17}, {names = {"Crocodile"}, totalKills = 2000, money = 600000, points = 1, minPoints = 18}, {names = {"Scarab"}, totalKills = 40000, money = 800000, points = 1, minPoints = 19}, {names = {"Kongra"}, totalKills = 40000, money = 800000, points = 1, minPoints = 20}, {names = {"Sibang"}, totalKills = 40000, money = 800000, points = 1, minPoints = 21}, {names = {"Mammoth"}, totalKills = 40000, money = 800000, points = 1, minPoints = 22}, {names = {"Cyclops Drone"}, totalKills = 40000, money = 800000, points = 1, minPoints = 23}, {names = {"Cyclops Smith"}, totalKills = 40000, money = 800000, points = 1, minPoints = 24}, {names = {"Demon Skeleton"}, totalKills = 40000, money = 800000, points = 1, minPoints = 25}, {names = {"Wyvern"}, totalKills = 40000, money = 800000, points = 1, minPoints = 26}, {names = {"Vampire"}, totalKills = 40000, money = 800000, points = 1, minPoints = 27}, {names = {"Zombie"}, totalKills = 40000, money = 800000, points = 1, minPoints = 28}, {names = {"Mutated Rat"}, totalKills = 40000, money = 30000, points = 1, minPoints = 29}, {names = {"Dwarf Guard"}, totalKills = 40000, money = 800000, points = 1, minPoints = 30}, {names = {"Dragon"}, totalKills = 40000, money = 800000, points = 1, minPoints = 31}, {names = {"Ice Witch"}, totalKills = 40000, money = 800000, points = 1, minPoints = 32}, {names = {"Frost Giantess"}, totalKills = 40000, money = 800000, points = 1, minPoints = 33}, {names = {"Ice Golem"}, totalKills = 40000, money = 800000, points = 1, minPoints = 34}, {names = {"Stone Golem"}, totalKills = 40000, money = 800000, points = 1, minPoints = 35}, {names = {"Giant Spider"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 36}, {names = {"Dragon Lord"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 37}, {names = {"Frost Dragon"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 38}, {names = {"Wyrm"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 39}, {names = {"Hydra"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 40}, {names = {"Warlock"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 41}, {names = {"Slick Water Elemental"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 42}, {names = {"Water Elemental"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 43}, {names = {"Earth Elemental"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 44}, {names = {"Crystal Spider"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 45}, {names = {"Black Knight"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 46}, {names = {"Hero"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 47}, {names = {"Demon"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 48}, {names = {"Serpent Spawn"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 49}, {names = {"Werewolf"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 50}, {names = {"Destroyer"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 51}, {names = {"Mutated Tiger"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 52}, {names = {"Grim Reaper"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 53}, {names = {"Juggernaut"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 54}, {names = {"Hand of Cursed Fate"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 55} }, -- Other variables waitTime = 1440, -- Tempo de espera para começar outra task após entregar uma } -- Customization ends here function doResetGuildTask(guild_id, resetTime) for _, stgkey in ipairs({GT.kills, GT.totalKills, GT.task, GT.time}) do setGuildStorageValue(guild_id, stgkey, 0) end if resetTime then setGuildStorageValue(guild_id, GT.time, os.time() + GT.waitTime * 60) end return true end function doStartGuildTask(guild_id, task) local taskInfo = GT.monsters[task] setGuildStorageValue(guild_id, GT.totalKills, taskInfo.totalKills) setGuildStorageValue(guild_id, GT.task, task) setGuildStorageValue(guild_id, GT.kills, 0) return true end function getGuildTaskWaitTime(guild) local nextTime = getGuildStorageValue(guild, GT.time) if nextTime > os.time() then return nextTime - os.time() else return 0 end end function doCompleteGuildTask(guild_id) local taskInfo = GT.monsters[getGuildStorageValue(guild_id, GT.task)] doGuildAddPoints(guild_id, taskInfo.points) doGuildAddBalance(guild_id, taskInfo.money) doResetGuildTask(guild_id, true) return true end O que eu fiz de errado?
  9. up
  10. Quando eu tento pegar uma task: 10:45 Arthur: Strikker, would you like to get some tasks? 10:45 Strikker [20]: tasks 10:45 Arthur: Do you want to start a task, reset a task, finish your task, check your guild's progress or information about guild tasks? 10:46 Strikker [20]: start 10:46 Arthur: I have the following tasks for your guild: . Which one do you want? guildtask_lib.lua -- Storages GT = { kills = 51, totalKills = 52, task = 53, time = 54, -- Customization starts here -- Monsters monsters = { {names = {"Troll"}, totalKills = 2000, money = 600000, points = 1, minPoints = 0}, {names = {"Rotworm"}, totalKills = 2000, money = 600000, points = 1, minPoints = 1}, {names = {"Goblin"}, totalKills = 2000, money = 600000, points = 1, minPoints = 2}, {names = {"Dwarf"}, totalKills = 2000, money = 600000, points = 1, minPoints = 3}, {names = {"Amazon"}, totalKills = 2000, money = 600000, points = 1, minPoints = 4}, {names = {"Carrion Worm"}, totalKills = 2000, money = 600000, points = 1, minPoints = 5}, {names = {"Valkyrie"}, totalKills = 2000, money = 600000, points = 1, minPoints = 6}, {names = {"Skeleton"}, totalKills = 2000, money = 600000, points = 1, minPoints = 7}, {names = {"Minotaur"}, totalKills = 2000, money = 600000, points = 1, minPoints = 8}, {names = {"Ghoul"}, totalKills = 2000, money = 600000, points = 1, minPoints = 9}, {names = {"Elf"}, totalKills = 2000, money = 600000, points = 1, minPoints = 10}, {names = {"Dwarf Soldier"}, totalKills = 2000, money = 600000, points = 1, minPoints = 11}, {names = {"Tarantula"}, totalKills = 2000, money = 600000, points = 1, minPoints = 12}, {names = {"Cyclops"}, totalKills = 2000, money = 600000, points = 1, minPoints = 13}, {names = {"Larva"}, totalKills = 2000, money = 600000, points = 1, minPoints = 14}, {names = {"Nomad"}, totalKills = 2000, money = 600000, points = 1, minPoints = 15}, {names = {"Tortoise"}, totalKills = 2000, money = 600000, points = 1, minPoints = 16}, {names = {"Terramite"}, totalKills = 2000, money = 600000, points = 1, minPoints = 17}, {names = {"Crocodile"}, totalKills = 2000, money = 600000, points = 1, minPoints = 18}, {names = {"Scarab"}, totalKills = 40000, money = 800000, points = 1, minPoints = 19}, {names = {"Kongra"}, totalKills = 40000, money = 800000, points = 1, minPoints = 20}, {names = {"Sibang"}, totalKills = 40000, money = 800000, points = 1, minPoints = 21}, {names = {"Mammoth"}, totalKills = 40000, money = 800000, points = 1, minPoints = 22}, {names = {"Cyclops Drone"}, totalKills = 40000, money = 800000, points = 1, minPoints = 23}, {names = {"Cyclops Smith"}, totalKills = 40000, money = 800000, points = 1, minPoints = 24}, {names = {"Demon Skeleton"}, totalKills = 40000, money = 800000, points = 1, minPoints = 25}, {names = {"Wyvern"}, totalKills = 40000, money = 800000, points = 1, minPoints = 26}, {names = {"Vampire"}, totalKills = 40000, money = 800000, points = 1, minPoints = 27}, {names = {"Zombie"}, totalKills = 40000, money = 800000, points = 1, minPoints = 28}, {names = {"Mutated Rat"}, totalKills = 40000, money = 30000, points = 1, minPoints = 29}, {names = {"Dwarf Guard"}, totalKills = 40000, money = 800000, points = 1, minPoints = 30}, {names = {"Dragon"}, totalKills = 40000, money = 800000, points = 1, minPoints = 31}, {names = {"Ice Witch"}, totalKills = 40000, money = 800000, points = 1, minPoints = 32}, {names = {"Frost Giantess"}, totalKills = 40000, money = 800000, points = 1, minPoints = 33}, {names = {"Ice Golem"}, totalKills = 40000, money = 800000, points = 1, minPoints = 34}, {names = {"Stone Golem"}, totalKills = 40000, money = 800000, points = 1, minPoints = 35}, {names = {"Giant Spider"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 36}, {names = {"Dragon Lord"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 37}, {names = {"Frost Dragon"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 38}, {names = {"Wyrm"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 39}, {names = {"Hydra"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 40}, {names = {"Warlock"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 41}, {names = {"Slick Water Elemental"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 42}, {names = {"Water Elemental"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 43}, {names = {"Earth Elemental"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 44}, {names = {"Crystal Spider"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 45}, {names = {"Black Knight"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 46}, {names = {"Hero"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 47}, {names = {"Demon"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 48}, {names = {"Serpent Spawn"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 49}, {names = {"Werewolf"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 50}, {names = {"Destroyer"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 51}, {names = {"Mutated Tiger"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 52}, {names = {"Grim Reaper"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 53}, {names = {"Juggernaut"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 54}, {names = {"Hand of Cursed Fate"}, totalKills = 60000, money = 1200000, points = 1, minPoints = 55} }, -- Other variables waitTime = 1440, -- Tempo de espera para começar outra task após entregar uma } -- Customization ends here function doResetGuildTask(guild_id, resetTime) for _, stgkey in ipairs({GT.kills, GT.totalKills, GT.task, GT.time}) do setGuildStorageValue(guild_id, stgkey, 0) end if resetTime then setGuildStorageValue(guild_id, GT.time, os.time() + GT.waitTime * 60) end return true end function doStartGuildTask(guild_id, task) local taskInfo = GT.monsters[task] setGuildStorageValue(guild_id, GT.totalKills, taskInfo.totalKills) setGuildStorageValue(guild_id, GT.task, task) setGuildStorageValue(guild_id, GT.kills, 0) return true end function getGuildTaskWaitTime(guild) local nextTime = getGuildStorageValue(guild, GT.time) if nextTime > os.time() then return nextTime - os.time() else return 0 end end function doCompleteGuildTask(guild_id) local taskInfo = GT.monsters[getGuildStorageValue(guild_id, GT.task)] doGuildAddPoints(guild_id, taskInfo.points) doGuildAddBalance(guild_id, taskInfo.money) doResetGuildTask(guild_id, true) return true end
  11. upppppppppppp
  12. Então, tive uma ideia, mas não faço por falta de habilidade, seria legal se tivesse aqui no fórum pra todo mundo usar seria MUITO útil para todos Dez de quem tem um OT mapa global à quem tem um OT mapa proprio... Um remake de okolnir só que sem gelo, mas pra uma area de Dragons e DLs como é darashia, isso seria util de mais, pq cave de dragon e dl em ot cheio é um inferno, todo mundo quer upar nesses monstrinhos
  13. Já usou elfbot? Quando você no X ou aperta shift+f12 ele some o menu E fica de alguma forma dentro do client do tibia aparentemente Ai vc aperta shift+f12 ele volta novamente, tem outra função q é a shift+f11 que da luz pro jogo do elfbot também Só essas duas coisas não estão funcionando... Ficar jogando com o elfbot na frente do client atrapalha, só precisava arrumar isso Não sei oq é bind de hotkeys, nem shell, nada, comecei a usar linux faz pouco tempo
  14. Saquei, mas deve ter alguma gambiarra, algum jeito de arrumar isso... O foda é achar sem saber oq pesquisar
  15. Antes de formatar eu tinha tentado, formatei pra ver se era normal, e continua sem funcionar O estranho é que se eu coloco uma hotkey no shift+f12 ela funciona (no caso do tibia, mas não abre o elfbot) Tem alguma ideia do que pode ser? comecei a usar linux faz pouco tempo, o unico problema q eu tive q não consigo arrumar é esse
  16. Estou a testar o ElfBot e o LUbuntu, tudo funciona perfeitamente no wine+playonlinux o meu problema é na hora de esconder e mostrar o bot famoso fechar e apertar shift+f12 pra aparecer o bot de volta... Não sei nem o porque, mas o shift+f12 não funciona pra mostrar e esconder o elfbot e qnd eu escondo o elfbot não sei como mostra-lo de novo Alguém com conhecimento em ElfBot ou LUbuntu(ou qlqr linux desktop) poderia tentar me dar uma força Soluções q eu pensei: 1- Teria como arrumar isso pelo Lubunt,wine,playonlinux pra que funciona-se? 2- Teria como criar uma hotkey do elfbot pra mostrar e esconder o bot? 3- Teria como criar uma daquelas icones no client(nunca fiz isso) pra mostrar ou esconder o bot Não estou usando o fórum, mas faço questão se alguém me ajudar de entrar todos os dias até completar os 20 reps, pq isso tá me atrapalhando mt e não consigo achar solução
  17. Alguém pode me dar um exemplo de raid bem feita, tipo parecida com a do global, exemplo: Ferumbras avisando q o monstro spawnou, spawnando varios outros juntos
  18. Alguém poderia fazer isso pra mim? Mexer no meu sistema de refinamento trocar onde fica: 23:43 You see a katana +1 (Atk:19, Def:14 +1). It weighs 31.00 oz. Por 23:43 You see a unc katana (Atk:19, Def:14 +1). It weighs 31.00 oz. No caso só vai até +3, queria que muda-se por nome... Exemplo: +1 = unc +2 = rare +3 = epic Alguém poderia fazer isso p mim? --PERFECT UPGRADE SYSTEM UpgradeHandler = { levels = { [1] = {50, false, false}, [2] = {20, false, false}, [3] = {10, true, true} }, broadcast = 3, attributes = { ["attack"] = 3, ["defense"] = 2, ["armor"] = 1 }, message = { console = "Trying to refine %s to level +%s with %s%% success rate.", success = "You have upgraded %s to level +%s", fail = "You have failed in upgrade of %s to level +%s", downgrade = "The upgrade level of %s has downgraded to +%s", erase = "The upgrade level of %s has been erased.", maxlevel = "The targeted %s is already on max upgrade level.", notupgradeable = "This item is not upgradeable.", broadcast = "The player %s was successful in upgrading %s to level +%s.\nCongratulations!!", invalidtool = "This is not a valid upgrade tool.", toolrange = "This upgrade tool can only be used in items with level between +%s and +%s" }, tools = { [8306] = {range = {0, 10}, info = {chance = 0, removeable = true}}, [8300] = {range = {0, 10}, info = {chance = 0, removeable = true}} }, isEquipment = function(self) local weaponType = self:getItemWeaponType() return ((weaponType > 0 and weaponType < 7) or self.item.armor ~= 0) end, setItemName = function(self, name) return doItemSetAttribute(self.item.uid, "name", name) end, chance = function(self) local chances = {} chances.upgrade = (self.levels[self.item.level + 1][1] or 100) chances.downgrade = (self.item.level * 5) chances.erase = (self.item.level * 3) return chances end } function UpgradeHandler:new(item) local obj, ret = {} obj.item = {} obj.item.level = 0 obj.item.uid = item.uid for key, value in pairs(getItemInfo(item.itemid)) do obj.item[key] = value end ret = setmetatable(obj, { __index = function(self, index) if _G[index] then return (setmetatable({callback = _G[index]}, {__call = function(self, ...) return self.callback(item.uid, ...) end} )) else return UpgradeHandler[index] end end}) if ret:isEquipment() then ret:update() return ret end return false end function UpgradeHandler:update() -- this will return any number that has a + sign in front of it or 0 if there is no number with a + sign self.item.level = (tonumber(self:getItemName():match("%+(%d+)")) or 0) end function UpgradeHandler:refine(uid, item) if not self.item then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, self.message.notupgradeable) return "miss" end local tool = self.tools[item.itemid] if(tool == nil) then doPlayerSendTextMessage(uid, MESSAGE_EVENT_DEFAULT, self.message.invalidtool) return "miss" end if(self.item.level > #self.levels) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.maxlevel:format(self.item.name)) return "miss" end if(self.item.level < tool.range[1] or self.item.level >= tool.range[2]) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.toolrange:format(unpack(tool.range))) return "miss" end local chance = (self:chance().upgrade + tool.info.chance) doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, self.message.console:format(self.item.name, (self.item.level + 1), math.min(100, chance))) if(tool.info.removeable == true) then doRemoveItem(item.uid, 1) end if chance * 100 > math.random(1, 10000) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_ORANGE, self.message.success:format(self.item.name, (self.item.level + 1))) if (self.item.level + 1) >= self.broadcast then doBroadcastMessage(self.message.broadcast:format(getCreatureName(uid), self.item.name, (self.item.level + 1))) end -- it says if the item's level is greater then 0 (meaning is level equal to 1 or more) if it is add 1 more -- if the current level equals 0 add 1 to it self:setItemName((self.item.level > 0 and self:getItemName():gsub("%+(%d+)", "+".. (self.item.level + 1)) or (self:getItemName() .." +1"))) for key, value in pairs(self.attributes) do if getItemAttribute(self.item.uid, key) ~= nil or self.item[key] ~= 0 then doItemSetAttribute(self.item.uid, key, (self.item.level > 0 and getItemAttribute(self.item.uid, key) or self.item[key]) + value) end end return "success" else if item.itemid == 8300 then if self.item.level > 0 then -- this will remove any number with a + sign in front of it from the string self:setItemName(self:getItemName():gsub("(%s+)%+(%d+)", "")) for key, value in pairs(self.attributes) do if getItemAttribute(self.item.uid, key) ~= nil or self.item[key] ~= 0 then doItemSetAttribute(self.item.uid, key, getItemAttribute(self.item.uid, key) - self.item.level * value) end end end else doRemoveItem(self.item.uid, 1) end doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, item.itemid == 8300 and "Your item level has been reseted." or "You have broken your item while trying to upgrade it.") end end Pensei ser algo aqui: self:setItemName(self:getItemName():gsub("(%s+)%+(%d+)", "")) Mas não sei criar os ifs, não sei fazer
  19. Como arrumar esse bug do 0.4 pra bow e arrow? Quando eu taco runa as flechas param e não vão! Qnd vc taca runa não sai flecha!!!! Tentei mudar no weapons.xml, mas não adiantou <distance id="2456" unproperly="1" swing="true" event="function" value="atkweaponandskill.lua" /> <!-- bow --> <distance id="2544" swing="true" event="function" value="atkweaponandskill.lua"/> <!-- Arrow --> atkweaponandskill.lua function onGetFormulaValues(cid, level, skill, attack, factor) return 0, -(0.08 * attack * skill) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
  20. Claro q eu sei disso rateStaminaLoss = 2 -- Tempo em que abaixa a stamina rateStaminaGain = 3 -- Tempo em que aumenta a stamina Queria saber como mexer nesses numeros, como funcionam, como a stamina ta subindo qnd ta deslogado, não oq faz apenas... ninguem sabe?
  21. Alguém poderia me explicar algumas coisas sobre stamina (0.4) Como eu faço pra a cada um minuto caçando desca 2 min de stamina em vez de 1 min 1 min deslogado ta enchendo qnt de stamina? rateStaminaLoss = 1 rateStaminaGain = 3 rateStaminaThresholdGain = 12 staminaRatingLimitTop = 40 * 60 staminaRatingLimitBottom = 14 * 60 staminaLootLimit = 14 * 60 rateStaminaAboveNormal = 1.5 rateStaminaUnderNormal = 0.5 staminaThresholdOnlyPremium = false
  22. Vlw gente, se o wolf disse q vai funcionar eu confio, resolvido Vlw gente
  23. Ué copiei de outro script aqui que tinha return TRUE, qual a diferença, será q ta dando return 0 em vez de 1 por causa do TRUE em vez de true, me da uma luz aí, tem varios scripts return TRUE
  24. Eu fiz certo/da melhor forma como globalevent? <globalevent name="addstamina" interval="60000" event="script" value="addstamina.lua"/> function onThink(interval, lastExecution) for _, pid in ipairs(getPlayersOnline()) do doPlayerAddStamina(pid, 1) end return TRUE end
  25. Eu sei q tem como tirar a perda de stamina, mas eu queria isso pra fazer outra coisa Alguém poderia me fazer um script que de 1 em 1 minuto diminui-se 1 aumenta-se 1 da stamina de todos os players logados?
  • Quem Está Navegando   0 membros estão online

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