Ir para conteúdo

Vodkart

Herói
  • Total de itens

    3406
  • Registro em

  • Última visita

  • Dias Ganhos

    112

Histórico de Reputação

  1. Upvote
    Vodkart deu reputação a Benny em Novo sistema de Cargos e Novas pips!   
    Mas tá zoado mesmo zz
    Fiz correndo ontem, o degradê
    Mais tarde eu arrumo.
    Obrigado pela critica (=
  2. Upvote
    Vodkart deu reputação a Furabio em Comando de Rank Points por Storage   
    Preciso estudar essas query pra conseguir fazer isso também.
    Tópico movido para a seção de dúvidas e pedidos resolvidos.
  3. Upvote
    Vodkart deu reputação a zipter98 em Comando de Rank Points por Storage   
    ^ http://www.xtibia.com/forum/topic/225014-queries-e-sql-para-otservers/
  4. Upvote
    Vodkart recebeu reputação de JS Lotus em Comando de Rank Points por Storage   
    adc na sua lib
     
     
    function getRankStorage(cid, value, max, RankName) -- by vodka local str ="" str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n" local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;") if (query:getID() ~= -1) then k = 1 repeat if k > max then break end str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]" k = k + 1 until not query:next() end return doShowTextDialog(cid, 2529, str) end
    dps só usar assim em uma talk: getRankStorage(cid, 543995, 10, "Rank Boss")
  5. Upvote
    Vodkart recebeu reputação de Furabio em Comando de Rank Points por Storage   
    adc na sua lib
     
     
    function getRankStorage(cid, value, max, RankName) -- by vodka local str ="" str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n" local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;") if (query:getID() ~= -1) then k = 1 repeat if k > max then break end str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]" k = k + 1 until not query:next() end return doShowTextDialog(cid, 2529, str) end
    dps só usar assim em uma talk: getRankStorage(cid, 543995, 10, "Rank Boss")
  6. Upvote
    Vodkart recebeu reputação de sk8sk8ter em Aol Infinito   
    ok
     
     
     
    vá até data\creaturescripts\scripts e crie um arquivo.lua e renomeie para aolinfinity.lua
     
    dentro coloque:
     

    function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if isPlayer(cid) == true then if (getPlayerSlotItem(cid, 2).itemid == 2173) then doCreatureSetDropLoot(cid, false) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYAREA) return TRUE end end return TRUE end
     
     
    em data\creaturescripts\scripts\login.lua adiciona a linha:
     

    registerCreatureEvent(cid, "onPrepareDeathinifi")
     
     
    creaturescripts.xml adicione:
     

    <event type="preparedeath" name="onPrepareDeathinifi" event="script" value="aolinfinity.lua"/>
  7. Upvote
    Vodkart deu reputação a gabrielbsales em [Encerrado][Server] Medieval   
    Nome: Gabriel
    Idade: 16
    Tempo de envolvimento com script: 6~9 meses(não sei muito bem)
    Qual script você fez que considera o melhor?: Nenhum
    Skype: gabriel.sales.01

    Ps: Sei c++ também.
  8. Upvote
    Vodkart deu reputação a valakas em Mostrar a quantidade que morreu e que matou ao dar look no player   
    pode criar comando !rank kill ai mostrar o rank de kill dos player, fica melhor
     
     
    e um rep system

    funciona assim

    vocÊ mata 50 player pk e então você ganha um addon de Rei
    se vc matar 50 players que nao tava pk ai se ganha um Addon de grin reaper da morte
     
    Você digita !rep ai vai mostrar o tanto de player que voce matou e o tano de player que vai faltar para ganhar o addon

    se vc Tem rep positivo e matar um player que nao te atacou ai se perde 5 rep
     
     
    quem já jogou mutaçãosv sabe do que eu estou falando
  9. Upvote
    Vodkart deu reputação a larissaots em Ao cair x item de loot, irá aparecer uma bag ou backpack e nela estará o item   
    Créditos à zipter98.
     
    Objetivo
    Quando X item cair do loot de algum monstro, irá aparecer uma backpack ou bag (a que você preferir) e nela estará o item que você configurou no script. Isso é bom para deixar separados dos itens "sem valor", pois, você vai saber quando realmente cair um item valioso, porque irá aparecer a backpack/bag. É um script diferente que pode chamar a atenção dos players.
     
    Tutorial
    Vá até as pastas data/creaturescripts/scripts, crie o arquivo aparecerbag.lua e coloque:
    local bag = xxx -- ID da bag ou backpack local itens = {xxx, xxx, xxx} -- ID dos itens que serão colocados dentro da bag, caso dropados. function Loot(mName, mPosition) local items = {} for i = getTileInfo(mPosition).items, 1, -1 do mPosition.stackpos = i table.insert(items, getThingFromPos(mPosition)) end if #items == 0 then return true end local corpse = -1 for _, item in ipairs(items) do local name = getItemName(item.uid):lower() if name:find(mName:lower()) then corpse = item.uid break end end if not isContainer(corpse) then return true end if corpse == -1 then return true end for i = 0, getContainerSize(corpse) - 1 do local item = getContainerItem(corpse, i) if isInArray(itens, item.itemid) then doAddContainerItem(doAddContainerItem(corpse, bag, 1), item.itemid, item.type) doRemoveItem(item.uid) end end end function onKill(cid, target) if isMonster(target) then addEvent(Loot, 5, getCreatureName(target), getThingPos(target)) end return true end function onLogin(cid) registerCreatureEvent(cid, "lootItem") return true end Após isso vá em data/creaturescripts/ e abra o arquivo creaturescripts.xml. Adicione: <event type="login" name="lootLogin" event="script" value="aparecerbag.lua"/> <event type="kill" name="lootItem" script="aparecerbag.lua"/>
  10. Upvote
    Vodkart recebeu reputação de leandrozera em help comando em talkactions!   
    function onSay(cid, words, param) local femaleOutfits = { ["citizen"]={136}, ["hunter"]={137}, ["mage"]={138}, ["knight"]={139}, ["noblewoman"]={140}, ["summoner"]={141}, ["warrior"]={142}, ["barbarian"]={147}, ["druid"]={148}, ["wizard"]={149}, ["oriental"]={150}, ["pirate"]={155}, ["assassin"]={156}, ["beggar"]={157}, ["shaman"]={158}, ["norsewoman"]={252}, ["nightmare"]={269}, ["jester"]={270}, ["brotherhood"]={279}, ["demonhunter"]={288}, ["yalaharian"]={324}, ["warmaster"]={336} } local maleOutfits = { ["citizen"]={128}, ["hunter"]={129}, ["mage"]={130}, ["knight"]={131}, ["nobleman"]={132},["summoner"]={133}, ["warrior"]={134}, ["barbarian"]={143}, ["druid"]={144}, ["wizard"]={145}, ["oriental"]={146}, ["pirate"]={151}, ["assassin"]={152}, ["beggar"]={153}, ["shaman"]={154}, ["norsewoman"]={251}, ["nightmare"]={268}, ["jester"]={273}, ["brotherhood"]={278}, ["demonhunter"]={289}, ["yalaharian"]={325}, ["warmaster"]={335}, ["wayfarer"]={366} } local msg = {"Command requires GOOD param!", "You dont have Addon Doll!", "Bad param! exemple: !addon first,mage", "Full Addon Set sucesfully added!"} local x = string.explode(param:lower(), ",") if(getPlayerItemCount(cid, 9693) > 0) then if param ~= "" then if (x[1] == "first" or x[1] == "second") and maleOutfits[x[2]] and femaleOutfits[x[2]] then doPlayerRemoveItem(cid, 9693, 1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[4]) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS) doPlayerAddOutfit(cid, getPlayerSex(cid) == 0 and femaleOutfits[x[2]][1] or maleOutfits[x[2]][1], x[1] == "first" and 1 or 2) else doPlayerSendTextMessage(cid, 27, msg[3]) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[1]) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[2]) end return true end
  11. Upvote
    Vodkart deu reputação a larissaots em Mostrar a quantidade que morreu e que matou ao dar look no player   
    Créditos ao Critico e tev.
     
    Prévia


    Tutorial
    Crie um arquivo KillsandDeath.lua
    function onLook(cid, thing, position, lookDistance) function getDeathsAndKills(cid, type) -- by vodka local query,d = db.getResult("SELECT `player_id` FROM "..(tostring(type) == "kill" and "`player_killers`" or "`player_deaths`").." WHERE `player_id` = "..getPlayerGUID(cid)),0 if (query:getID() ~= -1) then repeat d = d+1 until not query:next() query:free() end return d end if isPlayer(thing.uid) then doPlayerSetSpecialDescription(thing.uid, "\n"..(getPlayerSex(thing.uid) == 0 and "She" or "He").." has Killed: ["..getDeathsAndKills(thing.uid, "kill").."] Players.\n"..(getPlayerSex(thing.uid) == 0 and "She" or "He").." has Died: ["..getDeathsAndKills(thing.uid, "death").."] Times") end return true end No creaturescript.xml, coloque:
    <event type="look" name="showKD" event="script" value="KillsandDeath.lua"/> Em creaturescript/script/login.lua, coloque:
    registerCreatureEvent(cid, "showKD")
  12. Upvote
    Vodkart recebeu reputação de Skymagnum em function tradufir(text)   
    tb já fiz um parecido uma vez, era mais ou menos assim:
     
     
    function traduzir(text, traduz) return string.gsub(text, "%a", traduz) end local words = { ["o"] = "a", ["m"] = "n", } local x = traduzir("é um menino", words) print(x) --> retorna 'é un nenina'
    --------------
    outro exemplo útil
     
     
    City_Name = "City is: <nome>" local x = City_Name:gsub("<nome>","Venore") print(x)
  13. Upvote
    Vodkart recebeu reputação de warriorfrog em Torres dominaveis (dou 10 reps e mt gente vai usar)   
    Ok... então refaça seu pedido novamente e especifique TODO o evento, começando pela torre, horario de funcionamento do sistema, se o monstro vai morrer por quem da mais dmg ou pelo last hit... ou até msm da pra fazer somando qual guild tirou mais dano do boss, etc... TUDO! pense e dps peça o seu sistema... pode ser?
  14. Upvote
    Vodkart deu reputação a Administrador em IceWars Baiak   
    -Novo Templo
    -Castle 24HRS (Unico) com aviso de invasores
    -Paladin arrumado, agóra pode healar com potion e atacar ao mesmo tempo
    -Utito Tempo San Arrumado Agóra não da mais Exausted em outras magias
    -Dodge System
    -Critical System
    -Itens Donates para vender no Site ou no Jogo
    -Itens VIP a mostra no templo
    -Todos itens DONATES dando as skills normalmente
    -Vários Teleports
    -Novas Hunts
    -Look Frags
    -Potions Editadas
    -War System
    -Muitas quests
    -City editada para um PvP muito melhor
    -Arena PVP
    -Fast Attack ROX Para melhor PvP
    -Quest de set free para Pally/Kinas
    -Quest de set free para Mages
    -quest para armas editadas
    -Treiners com novos visual
    -30% a mais de experiencia para players donates
    -10% a mais de experiencia para guild que domina o Castle 24HRS
    E muito mais!

    Comandos principais:
    !dodoge
    !critical
    !stamina
    !aol
    !bless
    !notice.

    Vamos as imagens:

    templo


    teleports


    Quests


    castle


    hunts do castle


    area donate


    Acc do GOD: 5/god


    Download :http://www.4shared.c.../DiegoWars.html
    Scan: https://www.virustot...sis/1413409264/

    Créditos
    Dieguiin XP
    Marcos Vinicius
  15. Upvote
    Vodkart deu reputação a Administrador em [Arquivado]The Forgotten Server 1.1   
    Fala ai galerinha, foi anunciado ontem, a disponibilidade do The Forgotten Server version 1.1. Confiram: Os destaques para esta versão são: Protocolo 10.77 SQL Queries sem bloqueio A plena utilização de criature e userdata item, com compatibilidade com versões anteriores em compat.lua Extendido customização de item attribute Manupulação de erros XML melhorado Changelog: https://github.com/otland/forgottenserver/wiki/Changelog-1.1
    Download: https://github.com/otland/forgottenserver/releases/tag/v1.1
  16. Upvote
    Vodkart recebeu reputação de RigBy em Duvida sobre posicionamento do mostro   
    fiz um movements para mudar a direção dos monstro de acordo com o item.actionid do piso onde eles estão... já que era uma área pré programada para treiners...
  17. Upvote
    Vodkart recebeu reputação de warriorfrog em Torres dominaveis (dou 10 reps e mt gente vai usar)   
    só colocar uma globalstorage para guildID ou guildName
     
    function setRateGuildExp(GuildID, rate) return setGlobalStorageValue(GuildID, rate) end function getRateGuildExp(GuildID) return getGlobalStorageValue(GuildID) <= 0 and 0 or getGlobalStorageValue(GuildID) end local MyGuild = getPlayerGuildId(cid) -- pega o id da guild cid setRateGuildExp(MyGuild, getRateGuildExp(MyGuild)+1) -- qndo vc matar um monstro soma 1+ getRateGuildExp(MyGuild) -- pega o rate e adc o rate essa function * 5
    ----------------------------
     
    mas só ganha exp adicional quem matar mais torre?? ou se minha guild matar 5 e a outra matar 3
     
    a minha ganha 25% e a outra ganha 15%?
  18. Upvote
    Vodkart recebeu reputação de warriorfrog em Torres dominaveis (dou 10 reps e mt gente vai usar)   
    é simples, põe para cada monstro q matar a guild ganhar uma storage...
     
    por exemplo eu da guild "Hunter" matei 4 torre...
     
    então 4*5 = 20%
  19. Upvote
    Vodkart recebeu reputação de leandrozera em Duvida sobre posicionamento do mostro   
    fiz um movements para mudar a direção dos monstro de acordo com o item.actionid do piso onde eles estão... já que era uma área pré programada para treiners...
  20. Upvote
    Vodkart deu reputação a Miinerva em Adaptar Script   
    Da erro no :
    getRankStorage(cid, storage, 10, "Ranking of Resets") Substituo por :
    getPlayerStorageValue(cid, storage, 10, "Ranking of Resets") Da certo, mais ai da erro no :
    local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;") Ja tentei substitui por :
    local query = db.query local query = db.storeQuery Mais nenhum da certo, acredito que o erro esteja apenas ai!
    E quando muda pra qual quer um desses, não da mais erro na distro.
    E não funciona também.
    Agradeço des de ja!
  21. Upvote
    Vodkart recebeu reputação de Furabio em [Dúvida] Premio Por Chance   
    claro vc duplico as chance de porcentagem... vc quer colocar mais de um item pra vir entre 10 e 30 porcento de chance é isso?
     
    vo fazer pra vc e dps vc edita, mas n pode duplicar as chances

    ---------------------
    local query = db.query or db.executeQuery local premios = { -- -- [chance] -- itemid,amount [{1, 5}] = {{2493}, {2494}}, -- por exmeplo de 1 a 3 porcento de vim 1 item com id 2390 ou 2494 [{6, 30}] = {{2646}, {2471}, {2466}, {2130}}, [{31, 50}] = {{2191}, {2201}}, [{51, 80}] = {{2339}, {2342}}, [{81, 100}] = {{6500,100}, {6500,50}} } local function getGuildNameById(id) local name = "" local query = db.getResult('SELECT `name` FROM `guilds` WHERE `id` = "'.. id ..'"') if query:getID() == -1 then return true end name = query:getDataString("name") query:free() return name end function pointNumber(number) if not tonumber(number) then return false end local str = "" number = tostring(number):reverse() local count = 0 for i = 1, number:len() do count = count + 1 if count <= 3 then if str == "" then str = number:sub(i, i) else str = str..number:sub(i, i) end else count = 1 str = str.."."..number:sub(i, i) end end return str:reverse() end function onStatsChange(cid, attacker, type, combat, value) if isMonster(cid) and isPlayer(attacker) and type == STATSCHANGE_HEALTHLOSS then if isInArray({"Castle Guardian I", "Castle Guardian II", "Castle Guardian III", "Castle Guardian IV", "Castle Generator", "Ice Crystal"}, getCreatureName(cid)) then doPlayerSetStorageValue(attacker, 1827311, getPlayerStorageValue(attacker, 1827311) + value) local quant = guild_hit_count[getPlayerGuildId(attacker)] and guild_hit_count[getPlayerGuildId(attacker)] or 0 guild_hit_count[getPlayerGuildId(attacker)] = quant + value end end return true end function onDeath(cid, corpse, deathList) local gid = 0 local winner = 0 if isMonster(cid) and getCreatureName(cid) == "Ice Crystal" then if not getPlayingGuilds() then return true end local guilds = getPlayingGuilds() local max = 0 for index, var in pairs(guild_hit_count) do if var > max then max = var gid = index end end setGlobalStorageValue(1823999, gid) query("UPDATE `castle_dono` SET `guild_id` = '"..gid.."' WHERE `guild_id` > 0") doBroadcastMessage("{Castle War} O evento acabou, a guild com maior desempenho foi "..getGuildNameById(gid)..", com "..pointNumber(max).." pontos sobre o castelo.") updateCastleData() setGlobalStorageValue(18219113, -1) if gid > 0 then local mx = 0 for _, pid in pairs(getPlayersOnline()) do if getPlayerGuildId(pid) == gid then local st = getPlayerStorageValue(pid, 1827311) if st > mx then mx = st winner = pid end end end if isPlayer(winner) then local r = math.random(1,100) for v, k in pairs(premios) do if r >= v[1] and r <= v[2] then local rand = k[math.random(#k)] itemr, amountr = rand[1], (not rand[2] and 1 or isItemStackable(rand[1]) and rand[2] or 1) end end local recompensa = doPlayerAddItem(winner, itemr, amountr) doBroadcastMessage("{Castle War} O jogador com maior desempenho foi "..getCreatureName(winner)..", com "..pointNumber(mx).." pontos sobre o castelo. Ele recebeu "..amountr.."x "..getItemNameById(itemr).." como premio.") doItemSetAttribute(recompensa, 'description', "Premio do jogador "..getCreatureName(winner).." ganho no evento castle war do dia "..os.date("%d/%m/%y")..".") local medal = doPlayerAddItem(winner, 10127, 1) doItemSetAttribute(medal, 'description', "Trofeu ganho pelo jogador "..getCreatureName(winner).." no evento castle war do dia "..os.date("%d/%m/%y")..".") end end for _, pid in pairs(getPlayersOnline()) do if isInArea(getThingPos(pid), {x = 500, y = 574, z = 6}, {x = 575, y = 620, z = 6}) or isInArea(getThingPos(pid), {x = 511, y = 588, z = 5}, {x = 556, y = 607, z = 5}) or isInArea(getThingPos(pid), {x = 511, y = 588, z = 4}, {x = 556, y = 607, z = 4}) or isInArea(getThingPos(pid), {x = 511, y = 588, z = 3}, {x = 556, y = 607, z = 3}) or isInArea(getThingPos(pid), {x = 481, y = 580, z = 7}, {x = 683, y = 798, z = 7}) then doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) end end guild_hit_count = {} end return true end ------------------------- explicação
     
    local premios = { -- -- [chance] -- itemid,amount [{1, 5}] = {{2493}, {2494}}, -- por exmeplo de 1 a 3 porcento de vim 1 item com id 2390 ou 2494 [{6, 30}] = {{2646}, {2471}, {2466}, {2130}}, [{31, 50}] = {{2191}, {2201}}, [{51, 80}] = {{2339}, {2342}}, [{81,  
    vc pode editar na tabela por exmeplo na chance de 1 a 5 porcento: [{1, 5}] = {{2493}, {2494}}, poderá vir um 2493 ou um 2494... se vc quiser editar para colocar mais itens poderia ser assim: [{1, 5}] = {{2493}, {2494}, {2492}}, e se vc quiser colocar item empilhavem como crystal coin só colocar assim: [{1, 5}] = {{2493}, {2494}, {2160,100}},
    se n entendeu me adc skype
     
    thiago.vodkart
  22. Upvote
    Vodkart deu reputação a Krono em [Encerrado]RPG Server - recrutamento unico   
    SERVIDOR RPG - RECRUTA MEMBROS
     


    Estou aqui hoje para recrutar novos membros para uma pequena equipe de desenvolvimento de servidor.




    NÃO SE ENGANEM, O TÓPICO É SIMPLES APENAS POR SE TRATAR DE UM PROJETO FECHADO, AO QUAL NÃO GOSTARÍAMOS DE DIVULGAÇÃO NO MOMENTO

    Casos de membros sem experiência tenham interessem em participar, poderão ser aceitos, com a condição de se dedicarem, poderão receber um treinamento e orientação adequada. Dando assim a chance de adquirirem conhecimento

    .


    É um servidor serio, onde estaremos criando em um pequeno prazo um novo servidor completamente exclusivo.
    O server contará com diversos Sistemas Exclusivos, e com um mapa diferenciado, visando aprimorara a experiência RPG do jogador.

    O tempo de trabalho é de pelo menos 2 horas disponíveis diariamente.

    Não posso dar muitos detalhes, pois será um projeto fechado. Mais garanto que quem tiver interesse, terá uma grande oportunidade de participar de um projeto com futuro promissor.


     
    CARGOS DISPONÍVEIS
     
    • 2 MAPPERS
    • 1 WEBMASTER
    • 1 PROGRAMADOR *(desejada a experiência em OtC)
     


     
    Os membros interessados pode me contactar diretamente no Skype Krono ou via Pm.
     
    Obrigado ~~ Att Krono
  23. Upvote
    Vodkart recebeu reputação de Furabio em [Dúvida] Premio Por Chance   
    local query = db.query or db.executeQuery local premios = { -- [chance] -- itemid,amount [{1, 3}] = {2390, 1}, -- por exmeplo de 1 a 3 porcento de vim 1 item com id 2390 [{4, 15}] = {2469, 1}, [{16, 25}] = {2646, 1}, [{25, 40}] = {8306, 1}, [{41, 55}] = {2408, 1}, [{56, 65}] = {10020, 1}, [{66, 75}] = {5804, 1}, [{76, 86}] = {5809, 1}, [{86, 100}] = {5937, 1} } local function getGuildNameById(id) local name = "" local query = db.getResult('SELECT `name` FROM `guilds` WHERE `id` = "'.. id ..'"') if query:getID() == -1 then return true end name = query:getDataString("name") query:free() return name end function pointNumber(number) if not tonumber(number) then return false end local str = "" number = tostring(number):reverse() local count = 0 for i = 1, number:len() do count = count + 1 if count <= 3 then if str == "" then str = number:sub(i, i) else str = str..number:sub(i, i) end else count = 1 str = str.."."..number:sub(i, i) end end return str:reverse() end function onStatsChange(cid, attacker, type, combat, value) if isMonster(cid) and isPlayer(attacker) and type == STATSCHANGE_HEALTHLOSS then if isInArray({"Castle Guardian I", "Castle Guardian II", "Castle Guardian III", "Castle Guardian IV", "Castle Generator", "Ice Crystal"}, getCreatureName(cid)) then doPlayerSetStorageValue(attacker, 1827311, getPlayerStorageValue(attacker, 1827311) + value) local quant = guild_hit_count[getPlayerGuildId(attacker)] and guild_hit_count[getPlayerGuildId(attacker)] or 0 guild_hit_count[getPlayerGuildId(attacker)] = quant + value end end return true end function onDeath(cid, corpse, deathList) local gid = 0 local winner = 0 if isMonster(cid) and getCreatureName(cid) == "Ice Crystal" then if not getPlayingGuilds() then return true end local guilds = getPlayingGuilds() local max = 0 for index, var in pairs(guild_hit_count) do if var > max then max = var gid = index end end setGlobalStorageValue(1823999, gid) query("UPDATE `castle_dono` SET `guild_id` = '"..gid.."' WHERE `guild_id` > 0") doBroadcastMessage("{Castle War} O evento acabou, a guild com maior desempenho foi "..getGuildNameById(gid)..", com "..pointNumber(max).." pontos sobre o castelo.") updateCastleData() setGlobalStorageValue(18219113, -1) if gid > 0 then local mx = 0 for _, pid in pairs(getPlayersOnline()) do if getPlayerGuildId(pid) == gid then local st = getPlayerStorageValue(pid, 1827311) if st > mx then mx = st winner = pid end end end if isPlayer(winner) then local r = math.random(1,100) for v, k in pairs(premios) do if r >= v[1] and r <= v[2] then local itemr, amountr = k[1], k[2] local recompensa = doPlayerAddItem(winner, itemr, amountr) doBroadcastMessage("{Castle War} O jogador com maior desempenho foi "..getCreatureName(winner)..", com "..pointNumber(mx).." pontos sobre o castelo. Ele recebeu "..amountr.."x "..getItemNameById(itemr).." como premio.") doItemSetAttribute(recompensa, 'description', "Premio do jogador "..getCreatureName(winner).." ganho no evento castle war do dia "..os.date("%d/%m/%y")..".") end end local medal = doPlayerAddItem(winner, 10127, 1) doItemSetAttribute(medal, 'description', "Trofeu ganho pelo jogador "..getCreatureName(winner).." no evento castle war do dia "..os.date("%d/%m/%y")..".") end end for _, pid in pairs(getPlayersOnline()) do if isInArea(getThingPos(pid), {x = 500, y = 574, z = 6}, {x = 575, y = 620, z = 6}) or isInArea(getThingPos(pid), {x = 511, y = 588, z = 5}, {x = 556, y = 607, z = 5}) or isInArea(getThingPos(pid), {x = 511, y = 588, z = 4}, {x = 556, y = 607, z = 4}) or isInArea(getThingPos(pid), {x = 511, y = 588, z = 3}, {x = 556, y = 607, z = 3}) or isInArea(getThingPos(pid), {x = 481, y = 580, z = 7}, {x = 683, y = 798, z = 7}) then doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) end end guild_hit_count = {} end return true end
  24. Upvote
    Vodkart recebeu reputação de Administrador em TFS[1.X] Account Storage Value   
    bem úteis essas funções, obrigado por compartilhar!
  25. Upvote
    Vodkart recebeu reputação de Furabio em TFS[1.X] Account Storage Value   
    bem úteis essas funções, obrigado por compartilhar!
  • Quem Está Navegando   0 membros estão online

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