Ir para conteúdo

ricardiitoohz

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    ricardiitoohz deu reputação a thelifeofpbion em [creaturescript] Always Green Emblem shield   
    Bom a um tempo atras como de costume eu pedi para alguém me ajudar a montar um script onde os players que tiverem guild terem o emblema de guild (de quando começa a war) não to com tempo pra procurar a foto agora, mas é aquele verdinho que fica do lado do char, como ninguém sabia, ou não pode ajudar eu procurei sobre para tentar montar isso e consegui (pelo menos ate agora), vou postar para os ouros membros do meu tópico de ajuda testarem e talvez achar algum bug. 
    obs: só para quem já tem os códigos na distro

     
    Finalidade do Script:  É bem simples, apenas deixar o escudo verde ativado quando um player tiver uma guild, para identificar seus aliados, mesmo com a war entre guilds desativadas.
     
     
    Para adicionar o script também é bem simples, Basta ir em Data>creaturescript>scripts>login.lua
    e antes do ultimo
     
    return true 
    end
     
    voce adiciona isso.
     
    Pronto, cada vez que o player logar, vai definir um inimigo (0). ou seja não vai ter inimigo mas sua guild vai ter o emblema verde...
       Eu consegui essa solução agora de manhã então eu não sei se pode ter bugs, porém pelo que eu pude testar, consegui de boa e também consegui entrar em war com outras guild, sair de war e    etc.

      obs: Eu tava com um problema na minha talkactions de war, quando uma guild que recebia convite para entrar, aceitava mas depois não conseguia sair. só a guild que convidou podia cancelar a   guerra entre guild... não sei se isso é normal mas consegui modificar, caso alguém tenha o mesmo problema eu posso passar a talkaction.
     
  2. Gostei
    ricardiitoohz recebeu reputação de KotZletY em [Link Quebrado]Hydra Cave 8.6   
    Fala galera, aqui venho trazer uma nova cave, feito por mim:

    Algums imagens:
     

     
    Baixar: 
     
    Hydra Cave 8.6
     
    Scan:
     
    https://www.virustotal.com/es/file/80e4f97795ccb315cd0f6acacde4cb7886f5549e80db8d307f6648b6ba66f66d/analysis/
     

     
    Creditos: 100% Meus
     
     
  3. Gostei
    ricardiitoohz recebeu reputação de KotZletY em [Link Quebrado]Demon cave 8.6   
    Fala galera eu venho trazer pra vc meu map do demon 8.6, espero gostei

    aqui algums imagens:
     

     

     
     
    Baixar:
     
    Demon Cave 8.6
     
    Scan:
     
    https://www.virustotal.com/es/file/3279af44aa1fe72f94ccaec29a9ec97df33668df39e694ad1a7b55ad40d1e283/analysis/
     
     
     

  4. Curtir
    ricardiitoohz deu reputação a DdJs em Pharaoh's Tomb | Cave Hunt | 8.60   
    Cave hunt - Pharaohs Tomb.
     
    Download: Here
     
    Scan: Here

    Imagens:
     

     

     

     

     

     

     

  5. Curtir
    ricardiitoohz deu reputação a Apache em EVENTO ILHAS TEMATICAS + PHP + MAPA   
    Olá pessoal como falei irei postar alguns eventos sem bugs para vocês e GRÁTIS!
    Estarei também postando uma source OTX paga para vocês.
    Chega de enrolar vamos ao evento (Particularmente gosto muito desse)
    **SÓ CONFIGUREM NO MAPA DO EVENTO O LOCAL DE SAÍDA DAS ILHAS**
    **EVENTO NÃO É DE MINHA AUTORIA MAS COMO É MEU ESTOU POSTANDO**
     
    Vídeo mostrando como funciona o evento
    obs: link para o vídeo estava localizado dentro do script
                                                                 
        
    5 bosses localizados nas ilhas temáticas
    Os jogadores deverão se unir para conseguir vencer todos os bosses das ilhas e atingir a última com o mais temido. Apenas os bravos guerreiros conseguem chegar ao final, como prêmio eles recebem a experiência dos bosses e loot.
     
     
    Vá em data/creaturescripts/scripts e crie um aquivo chamado IOE.lua e cole isso dentro
    agora na mesma pasta creaturescripts/scripts procure pela pasta login.lua e lá adicione o registro do evento
    após isso vá em data/creaturescripts abra o arquivo creaturescripts.xml e adicione a tag
     
    agora em data/globalevents/scripts crie um arquivo chamado IOE.lua e cole isso dentro
    em globalevents.xml adicione a tag 
    agora na pasta LIB crie um arquivo chamado IOE.lua e cole isso dentro
    agora na pasta data/monsters crie uma pasta chamada IOE e dentro crie 5 arquivos .xml com os seguintes nomes (irei postar o nome do monstro e em seguida o script dele.
    island death.xml
    island earth.xml
    island energy.xml
    island fire.xml
    island ice.xml
    feito isso agora na pasta data/monsters procure por monster.xml vamos registras nossos novos monsters
    agora em data/movements/scripts crie um arquivo chamado IOE.lua e cole isso dentro
    agora em movements.xml adicione a tag
    pronto pessoal o evento já está registrado em seu servidor, agora vocês configurem a seu desejo na pasta data/LIB  
    agora irei postar a query o php e o mapa 
     
    SQL QUERY PARA REGISTRAR O EVENTO EM SUA DATABASE
    PAGINA PHP EM SEU SITE (LINDA)
    AGORA O MAPA (NÃO POSTAREI SCAN, QUEM QUISER BAIXAR É SÓ BAIXAR QUEM NÃO QUISER É SÓ CRIAR UM MAPA PARA SEU EVENTO!)
     
    É ISSO AE ESPERO QUE GOSTEM DEIXEM SEU REP+  
    QUEM PRECISAR DE AJUDA PARA INSTALAR É SÓ PEDIR!
  6. Obrigado
    ricardiitoohz recebeu reputação de peterson18 em Cyclops Cave   
    Ben vindo galera, hoje venho trazer-lhe uma excelente caverna do cyclops.
     
    aqui o link e algumas imagens:
    Scan: https://www.virustotal.com/#/file/ea3a17af8480bbd8967f2d227d74308af8c660a6c93d3a589a961b479ef7293b/detection
    Download: http://www.mediafire.com/file/65ekvtwa5uqkgjl/Cave+Cyclops.rar



     
  7. Curtir
    ricardiitoohz recebeu reputação de JonatasLucasf em Cyclops Cave   
    Ben vindo galera, hoje venho trazer-lhe uma excelente caverna do cyclops.
     
    aqui o link e algumas imagens:
    Scan: https://www.virustotal.com/#/file/ea3a17af8480bbd8967f2d227d74308af8c660a6c93d3a589a961b479ef7293b/detection
    Download: http://www.mediafire.com/file/65ekvtwa5uqkgjl/Cave+Cyclops.rar



     
  8. Gostei
    ricardiitoohz recebeu reputação de lucas martins em BaiakNew   
    eu tenho tudo isso kkkkk, só manda pm eu passo.
  9. Gostei
    ricardiitoohz recebeu reputação de KotZletY em Cyclops Cave   
    Ben vindo galera, hoje venho trazer-lhe uma excelente caverna do cyclops.
     
    aqui o link e algumas imagens:
    Scan: https://www.virustotal.com/#/file/ea3a17af8480bbd8967f2d227d74308af8c660a6c93d3a589a961b479ef7293b/detection
    Download: http://www.mediafire.com/file/65ekvtwa5uqkgjl/Cave+Cyclops.rar



     
  10. Gostei
    ricardiitoohz deu reputação a roach95 em Map editor 10.98 rme   
    Consegui resolver, segue RME LINK 10.98
    https://virustotal.com/pt/file/2e2b7df581ace70457f06fbda99ae2f03a644b3b190560102883a46e3d9ef7ee/analysis/1477369928/
    https://virustotal.com/pt/file/ae8e914255d02cece7c5948f4dce530bc060303ee0cec7128060a5de5fdff555/analysis/1477369942/
    dois scans, arquivos .rar e .exe, só baixar e aproveitar :D
    RME-Win-3.2.rar
  11. Gostei
    ricardiitoohz recebeu reputação de jNo em (Resolvido)Erro npc Dice   
    eu vou passa, meu dicer, já repare isso error. só troca as coordenadas

     
    local keywordHandler = KeywordHandler:new()
    local npcHandler = NpcHandler:new(keywordHandler)
    NpcSystem.parseParameters(npcHandler)
    local talkState = {}
    function onCreatureAppear(cid)            npcHandler:onCreatureAppear(cid)         end
    function onCreatureDisappear(cid)         npcHandler:onCreatureDisappear(cid)         end
    function onCreatureSay(cid, type, msg)         npcHandler:onCreatureSay(cid, type, msg)      end
    function onThink()               npcHandler:onThink()               end
    function creatureSayCallback(cid, type, msg)
       if(not npcHandler:isFocused(cid)) then
          return false
       end
       local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
       
       local coins = {[2160] = 10000}
    function countMoneyOnPos(pos)
     local money = 0
     for stack = 1, 50  do
      pos.stackpos = stack
      local item = getThingFromPos(pos)
      if item and item.uid > 0 then
       if coins[item.itemid] then
        money = money + coins[item.itemid] * item.type
       end
      end
     end
     return money
    end
       
       
    local posCoal = {x = 994, y = 991, z = 7} -- POSIÇÃO DO COAL, ONDE O GOLD DEVE ESTAR
    local posNpc = {x = 994, y = 991, z = 7} -- POSIÇÃO DO NPC
    local pos = getPosByDir(getThingPos(cid), getCreatureLookDirection(cid), 1) -- NÃO ALTERAR
       if msgcontains(msg, 'l') or msgcontains(msg, 'L') or msgcontains(msg, 'low') or msgcontains(msg, 'Low') then
          if countMoneyOnPos(pos) > 0 then
             if math.random(1, 6) <= 2 then
                doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 26)
                doSendMagicEffect(posNpc, 28)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' Salió '..math.random(1, 3)..', Felicidades!', TALKTYPE_ORANGE_1)
             else
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 2)
                doSendMagicEffect(posNpc, 26)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' salió el numero '..math.random(4, 6)..', intente nuevamente!', TALKTYPE_ORANGE_1)
             end
          else
             doCreatureSay(getNpcId(), getCreatureName(cid)..', debes colocar la cantidad de dinero encima del coal, para poder apostar!', TALKTYPE_ORANGE_1)
          end
          
       elseif msgcontains(msg, 'h') or msgcontains(msg, 'H') or msgcontains(msg, 'high') or msgcontains(msg, 'High') then
          if countMoneyOnPos(pos) > 0 then
             if math.random(1, 6) <= 2 then
                doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 26)
                doSendMagicEffect(posNpc, 28)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' salió el numero '..math.random(4, 6)..', felicidades!', TALKTYPE_ORANGE_1)
             else
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 2)
                doSendMagicEffect(posNpc, 26)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' salió el numero '..math.random(1, 3)..', intenta nuevamente!', TALKTYPE_ORANGE_1)
             end
          else
             doCreatureSay(getNpcId(), getCreatureName(cid)..', debes colocar la cantidad de dinero encima del coal, para poder apostar!', TALKTYPE_ORANGE_1)
          end
       end
    return true
    end
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
    npcHandler:addModule(FocusModule:new())
  12. Gostei
    ricardiitoohz recebeu reputação de JcA em (Resolvido)Erro npc Dice   
    eu vou passa, meu dicer, já repare isso error. só troca as coordenadas

     
    local keywordHandler = KeywordHandler:new()
    local npcHandler = NpcHandler:new(keywordHandler)
    NpcSystem.parseParameters(npcHandler)
    local talkState = {}
    function onCreatureAppear(cid)            npcHandler:onCreatureAppear(cid)         end
    function onCreatureDisappear(cid)         npcHandler:onCreatureDisappear(cid)         end
    function onCreatureSay(cid, type, msg)         npcHandler:onCreatureSay(cid, type, msg)      end
    function onThink()               npcHandler:onThink()               end
    function creatureSayCallback(cid, type, msg)
       if(not npcHandler:isFocused(cid)) then
          return false
       end
       local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
       
       local coins = {[2160] = 10000}
    function countMoneyOnPos(pos)
     local money = 0
     for stack = 1, 50  do
      pos.stackpos = stack
      local item = getThingFromPos(pos)
      if item and item.uid > 0 then
       if coins[item.itemid] then
        money = money + coins[item.itemid] * item.type
       end
      end
     end
     return money
    end
       
       
    local posCoal = {x = 994, y = 991, z = 7} -- POSIÇÃO DO COAL, ONDE O GOLD DEVE ESTAR
    local posNpc = {x = 994, y = 991, z = 7} -- POSIÇÃO DO NPC
    local pos = getPosByDir(getThingPos(cid), getCreatureLookDirection(cid), 1) -- NÃO ALTERAR
       if msgcontains(msg, 'l') or msgcontains(msg, 'L') or msgcontains(msg, 'low') or msgcontains(msg, 'Low') then
          if countMoneyOnPos(pos) > 0 then
             if math.random(1, 6) <= 2 then
                doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 26)
                doSendMagicEffect(posNpc, 28)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' Salió '..math.random(1, 3)..', Felicidades!', TALKTYPE_ORANGE_1)
             else
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 2)
                doSendMagicEffect(posNpc, 26)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' salió el numero '..math.random(4, 6)..', intente nuevamente!', TALKTYPE_ORANGE_1)
             end
          else
             doCreatureSay(getNpcId(), getCreatureName(cid)..', debes colocar la cantidad de dinero encima del coal, para poder apostar!', TALKTYPE_ORANGE_1)
          end
          
       elseif msgcontains(msg, 'h') or msgcontains(msg, 'H') or msgcontains(msg, 'high') or msgcontains(msg, 'High') then
          if countMoneyOnPos(pos) > 0 then
             if math.random(1, 6) <= 2 then
                doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 26)
                doSendMagicEffect(posNpc, 28)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' salió el numero '..math.random(4, 6)..', felicidades!', TALKTYPE_ORANGE_1)
             else
                doRemoveItem(getTileItemById(pos, 2160).uid)
                doSendMagicEffect(posNpc, 2)
                doSendMagicEffect(posNpc, 26)
                doCreatureSay(getNpcId(), getCreatureName(cid)..' salió el numero '..math.random(1, 3)..', intenta nuevamente!', TALKTYPE_ORANGE_1)
             end
          else
             doCreatureSay(getNpcId(), getCreatureName(cid)..', debes colocar la cantidad de dinero encima del coal, para poder apostar!', TALKTYPE_ORANGE_1)
          end
       end
    return true
    end
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
    npcHandler:addModule(FocusModule:new())
  13. Gostei
    ricardiitoohz deu reputação a Vodkart em [MODS] - [8.6] Perfect Zombie System [Automático] [V1.0]   
    Qual dúvida ou erro poste no tópico que estarei respondendo.
     
     
    Obs: Antes que me falem besteiras, coloquei para os GM'S, CM'S E GOD'S não contarem no evento, então testem apenas com jogadores.
     
    Zombie.xml
    <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Perfect Zombie System" version="8.6" author="Vodkart" contact="tibiaking.com" enabled="yes"> <config name="zombie_config"><![CDATA[ zombie_config = { storages = {172100, 172101, 172102}, -- n edite players = {min = 2, max = 30}, -- min, max players no evento rewards = {items ={{2160,10},{2494,1}}, trophy = 5805}, timeToStartEvent = 30, -- segundos para começar o evento CheckTime = 5, -- tempo que o TP fica aberto para os jogadores adrentarem o evento teleport = {{x=147, y=55, z=7}, {x=125 , y=304, z=7}}, -- position do tp onde aparece, position para onde o jogador vai ao entrar no tp arena = {{x=110,y=297,z=7},{x=145,y=321,z=7}}, -- area positions monster_name = "Zombie Event", timeBetweenSpawns = 20, min_Level = 20 } zombie_days = { ["Monday"] = {"13:00","18:00","20:00","22:00"}, ["Tuesday"] = {"13:00","18:00","22:50","22:00"}, ["Wednesday"] = {"21:57","18:00","20:00","23:17"}, ["Thursday"] = {"13:00","18:00","20:00","22:00"}, ["Friday"] = {"13:00","18:00","21:45","22:00"}, ["Saturday"] = {"13:00","18:00","20:00","22:00"}, ["Sunday"] = {"13:00","18:00","20:00","22:00"} } function removeZombieTp() local t = getTileItemById(zombie_config.teleport[1], 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(zombie_config.teleport[1], CONST_ME_POFF) end function ZerarStoragesZombie() for _, stor in pairs(zombie_config.storages) do setGlobalStorageValue(stor, 0) end end function getPlayersInZombieEvent() local t = {} for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), zombie_config.arena[1], zombie_config.arena[2]) and getPlayerAccess(pid) < 3 then t[#t+1] = pid end end return t end function getZombieRewards(cid, items) local backpack = doPlayerAddItem(cid, 1999, 1) -- backpackID for _, i_i in ipairs(items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then doAddContainerItem(backpack, item, amount) else for i = 1, amount do doAddContainerItem(backpack, item, 1) end end end end function isWalkable(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function HaveCreatureZombie(area, remove) for x = area[1].x - 1, area[2].x + 1 do for y = area[1].y - 1, area[2].y + 1 do local pos = {x=x, y=y, z=area[1].z} local m = getTopCreature(pos).uid if remove ~= false and m ~= 0 and isMonster(m) then doRemoveCreature(m) end end end end function spawnZombie() if #getPlayersInZombieEvent() > 1 then local pos = {x=math.random(zombie_config.arena[1].x, zombie_config.arena[2].x), y=math.random(zombie_config.arena[1].y,zombie_config.arena[2].y), z=zombie_config.arena[1].z} if not isWalkable(pos, false, false, false) then spawnZombie() else doSummonCreature(zombie_config.monster_name, pos) doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_HITBYFIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_FIREAREA) doSendMagicEffect(pos, CONST_ME_MORTAREA) setGlobalStorageValue(zombie_config.storages[2], getGlobalStorageValue(zombie_config.storages[2]) <= 0 and 1 or getGlobalStorageValue(zombie_config.storages[2])+1) doBroadcastMessage("A zombie has spawned! There is currently " .. getGlobalStorageValue(zombie_config.storages[2]) .. " zombies in the zombie event!", MESSAGE_STATUS_CONSOLE_RED) addEvent(spawnZombie, zombie_config.timeBetweenSpawns *1000) end end end function CheckZombieEvent(delay) if getGlobalStorageValue(zombie_config.storages[1]) ~= (zombie_config.players.max+1) then if delay > 0 and getGlobalStorageValue(zombie_config.storages[1]) < zombie_config.players.max then doBroadcastMessage("Zombie event starting in " .. delay .. " minutes! The teleport will be closed when the event start!", MESSAGE_STATUS_WARNING) elseif delay == 0 and getGlobalStorageValue(zombie_config.storages[1]) < zombie_config.players.min then for _, cid in pairs(getPlayersInZombieEvent()) do doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT) end removeZombieTp() doBroadcastMessage("The Zombie event could not start because of to few players participating.\n At least " .. zombie_config.players.min .. " players is needed!", MESSAGE_STATUS_WARNING) ZerarStoragesZombie() elseif delay == 0 and getGlobalStorageValue(zombie_config.storages[1]) >= zombie_config.players.min then removeZombieTp() doBroadcastMessage("The Zombie event is now full [" .. getGlobalStorageValue(zombie_config.storages[1]) .. " players]! The event will soon start.") for _, var in pairs(getPlayersInZombieEvent()) do doPlayerSendTextMessage(var, MESSAGE_EVENT_ADVANCE, "The first zombie will spawn in " .. zombie_config.timeToStartEvent .. " seconds! Good luck!") end addEvent(spawnZombie, zombie_config.timeToStartEvent*1000) end addEvent(CheckZombieEvent, 60000, delay-1) end end]]></config> <event type="statschange" name="ZombieStats" event="script"><![CDATA[ domodlib('zombie_config') if isPlayer(cid) and isMonster(attacker) and getCreatureName(attacker) == zombie_config.monster_name then if isInRange(getPlayerPosition(cid), zombie_config.arena[1], zombie_config.arena[2]) then if #getPlayersInZombieEvent() > 1 then doBroadcastMessage(getPlayerName(cid) .. " have been eated by Zombies!", MESSAGE_STATUS_CONSOLE_RED) local corpse = doCreateItem(getPlayerSex(cid) == 1 and 3058 or 6081, 1, getPlayerPosition(cid)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), false) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT) if #getPlayersInZombieEvent() == 1 then local winner = getPlayersInZombieEvent()[1] doBroadcastMessage(getCreatureName(winner)..' has survived at zombie event!') local goblet = doPlayerAddItem(winner, zombie_config.rewards.trophy, 1) doItemSetAttribute(goblet, "description", "Awarded to " .. getPlayerName(winner) .. " for winning the Zombie event.") getZombieRewards(winner, zombie_config.rewards.items) doTeleportThing(winner, getTownTemplePosition(getPlayerTown(winner)), false) doSendMagicEffect(getPlayerPosition(winner), CONST_ME_TELEPORT) doBroadcastMessage(getPlayerName(winner).." won the Zombie event! Congratulations!") HaveCreatureZombie(zombie_config.arena, true) ZerarStoragesZombie() end else doBroadcastMessage("No one survived in the Zombie Event.", MESSAGE_EVENT_ADVANCE) HaveCreatureZombie(zombie_config.arena, true) ZerarStoragesZombie() end return false end end return true]]></event> <globalevent name="Zombie_Start" interval="60000" event="script"><![CDATA[ domodlib('zombie_config') function onThink(interval, lastExecution) if zombie_days[os.date("%A")] then local hrs = tostring(os.date("%X")):sub(1, 5) if isInArray(zombie_days[os.date("%A")], hrs) and getGlobalStorageValue(zombie_config.storages[3]) <= 0 then local tp = doCreateItem(1387, 1, zombie_config.teleport[1]) doItemSetAttribute(tp, "aid", 45110) CheckZombieEvent(zombie_config.CheckTime) setGlobalStorageValue(zombie_config.storages[1], 0) setGlobalStorageValue(zombie_config.storages[2], 0) HaveCreatureZombie(zombie_config.arena, true) end end return true end]]></globalevent> <event type="login" name="Zombie_Login" event="script"><![CDATA[ domodlib('zombie_config') function onLogin(cid) registerCreatureEvent(cid, "ZombieBattle") registerCreatureEvent(cid, "ZombieStats") if isInRange(getPlayerPosition(cid), zombie_config.arena[1], zombie_config.arena[2]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end return true end]]></event> <event type="combat" name="ZombieBattle" event="script"><![CDATA[ domodlib('zombie_config') if isPlayer(cid) and isPlayer(target) and isInRange(getPlayerPosition(cid), zombie_config.arena[1], zombie_config.arena[2]) then doPlayerSendCancel(cid, "You may not attack this player.") return false end return true ]]></event> <movevent type="StepIn" actionid ="45110" event="script"><![CDATA[ domodlib('zombie_config') function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if getPlayerAccess(cid) > 3 then return doTeleportThing(cid, zombie_config.teleport[2]) end if getPlayerLevel(cid) < zombie_config.min_Level then doTeleportThing(cid, fromPosition, true) doPlayerSendCancel(cid, "You need to be at least level " .. zombie_config.min_Level .. ".") doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return true end if getGlobalStorageValue(zombie_config.storages[1]) <= zombie_config.players.max then doTeleportThing(cid, zombie_config.teleport[2]) setGlobalStorageValue(zombie_config.storages[1], getGlobalStorageValue(zombie_config.storages[1])+1) doBroadcastMessage(getPlayerName(cid) .. " entered the Zombie event! Currently " .. getGlobalStorageValue(zombie_config.storages[1]) .. " players have joined!", MESSAGE_STATUS_CONSOLE_RED) if getGlobalStorageValue(zombie_config.storages[1]) == zombie_config.players.max then setGlobalStorageValue(zombie_config.storages[1], getGlobalStorageValue(zombie_config.storages[1])+1) removeZombieTp() doBroadcastMessage("The Zombie event is now full [" .. getGlobalStorageValue(zombie_config.storages[1])-1 .. " players]! The event will soon start.") for _, var in pairs(getPlayersInZombieEvent()) do doPlayerSendTextMessage(var, MESSAGE_EVENT_ADVANCE, "The first zombie will spawn in " .. zombie_config.timeToStartEvent .. " seconds! Good luck!") end addEvent(spawnZombie, zombie_config.timeToStartEvent*1000) end end return true end]]></movevent> <talkaction words="/zombiestart;!zombiestart" access="5" event="buffer"><![CDATA[ domodlib('zombie_config') if getGlobalStorageValue(zombie_config.storages[3]) > 0 then doPlayerSendCancel(cid, "The event is already starting.") return true elseif not param or not tonumber(param) then doPlayerSendCancel(cid, "Use only numbers.") return true end local param = tonumber(param) <= 0 and 1 or tonumber(param) local tp = doCreateItem(1387, 1, zombie_config.teleport[1]) doItemSetAttribute(tp, "aid", 45110) CheckZombieEvent(tonumber(param)) ZerarStoragesZombie() setGlobalStorageValue(zombie_config.storages[3], 1) HaveCreatureZombie(zombie_config.arena, true) ]]></talkaction> <globalevent name="ZombieDebug-Start" type="start" event="buffer"><![CDATA[ domodlib('zombie_config') ZerarStoragesZombie() return true]]></globalevent> </mod>  
    OBS: Quem serve em milesegundos, mude essa parte:

     
    <globalevent name="Zombie_Start" interval="60" event="script"><![CDATA[  
     
    para
     
    <globalevent name="Zombie_Start" interval="60000" event="script"><![CDATA[  
     
     
    ----------------------------------------------------- // --------------------------------------------------
     
    o monstro você instala em data/monsters
     
    zombie event.xml
    <?xml version="1.0" encoding="UTF-8"?> <monster name="Zombie Event" nameDescription="an zombie event" race="undead" experience="280" speed="100" manacost="0"> <health now="500" max="500"/> <look type="311" corpse="9875"/> <targetchange interval="5000" chance="50"/> <strategy attack="100" defense="0"/> <flags> <flag summonable="0"/> <flag attackable="0"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="1"/> <flag staticattack="90"/> <flag runonhealth="0"/> </flags> <attacks> <attack name="melee" interval="2000" min="-35000" max="-35000"/> </attacks> <defenses armor="15" defense="10"/> <immunities> <immunity paralyze="1"/> <immunity invisible="1"/> </immunities> <voices interval="5000" chance="10"> <voice sentence="You wont last long!"/> <voice sentence="Mmmmh.. braains!"/> </voices> <loot> <item id="2148" countmax="1" chance="100000"/><!-- gold coin --> </loot> </monster>  
     
    e a tag em monsters.xml
    <monster name="Zombie Event" file="zombie event.xml"/>  
     Configuração 
     
     
     
     
    Sistema
     
    zombie_config = {
        storages = {172100, 172101}, -- não edite
        players = {min = 2, max = 30}, -- número minimo e máximo para jogadores no evento
        rewards = {items ={{2160,10},{2494,1}}, trophy = 5805}, -- premiações do jogador
        timeToStartEvent = 30, -- segundos para começar o evento após dar start
        CheckTime = 5, -- tempo que o TP fica aberto para os jogadores adrentarem o evento
        teleport = {{x=145, y=50, z=7}, {x=176 , y=54, z=5}}, -- posiçãodo tp onde aparece, posição para onde o jogador vai ao entrar no tp
        arena = {{x=173,y=52,z=5},{x=179,y=56,z=6}}, -- posição começo e final da area do evento
        monster_name = "Zombie Event", -- nome do monstro que será sumonado
        timeBetweenSpawns = 20, -- a cada quantos segundos é dado o respaw time do zombie no evento
        min_Level = 20 -- level minimo para participar do evento
    }
     
     
    Dia e Horário
     

    zombie_days = {
        ["Monday"] = {"13:00","18:00","20:00","22:00"},
        ["Tuesday"] = {"13:00","18:00","20:00","22:00"},
        ["Wednesday"] = {"13:00","18:00","20:00","22:00"},
        ["Thursday"] = {"13:00","18:00","20:00","22:00"},
        ["Friday"] = {"13:00","18:00","20:00","22:00"},
        ["Saturday"] = {"13:00","18:00","20:00","22:00"},
        ["Sunday"] = {"13:00","18:00","20:00","22:00"}
    }
     
     
    ["Dia em inglês"] = {"horário do evento"}
     
     
    Configurando a área:
     

     
    zombie lua.rar
  14. Gostei
    ricardiitoohz deu reputação a Killua em Itens ganhando exp e upando (Upgrade System)   
    Como funciona?
    A cada monstro que vc mata, seus itens equipados ganham 1 de exp. Quando seus itens chegarem às quantidades de exp definidas, eles upam e ficam com o nome assim: Demon Helmet + 1. Helmets, armors, legs, e boots recebem 1 de arm a cada vez que upam. Armas recebem 1 de ataque e escudos 1 de defesa.
     
    Para o monstro contar, ele deve dar um mínimo de exp (definido no script). O número de exp a que me refiro é aquele um presente no arquivo .xml.
     
    Para instalar, crie Killua Items Upgrade.lua em data/creaturescripts/scripts e coloque:
      Em data/creaturescripts/creaturescripts.xml coloque essas duas tags:
    <event type="kill" name="Item level" event="script" value="Killua Items Upgrade.lua"/> <event type="login" name="Item levell" event="script" value="Killua Items Upgrade.lua"/> Configurando: Na tabela table_of_slots, coloque em quais slots os itens upam.
    min_exp é a experiência mínima que o monstro deve ter para contar exp para o item. Se vc colocar 500, somente os monstros que tem exp igual ou superior a 500 no arquivo.xml vão valer.
    exp_levels são os valores de exp que os itens devem atingir para upar. No meu caso, quando o item alcançar 50 de exp, ele upa para o level 1. Quando alcançar 50 de exp, upa para o level 2 e assim por diante.
  15. Gostei
    ricardiitoohz deu reputação a Micheel15 em [EVENTO] Dota Completo   
    @Yago Blind. amigo, eu tenho o DOTA EVENT, 
    vou estar disponibilizando pra você esta todo arrumado igual na imagem abaixo, basta apenas você colocar na pasta do seu servidor,
    peço apenas para que me repute 1+ pelo evento se te ajudar !!!
     
    segue a imagem abaixo:
     
     

  16. Gostei
    ricardiitoohz deu reputação a .HuRRiKaNe em Waterfall Ruims   
    Screen's:










    Download:
    http://www.mediafire...shkg03bp2ums3vb

    Scan:
    https://www.virustot...sis/1337652720/

    Créditos:
    Amsterdam
  17. Gostei
    ricardiitoohz deu reputação a .HuRRiKaNe em Ice Storm   
    Screen's:






    Download:
    http://www.mediafire...wpxhfmemi7ua7mw

    Scan:
    https://www.virustot...sis/1339299983/

    Créditos:
    Amsterdam
  18. Gostei
    ricardiitoohz deu reputação a Absolute em [Castle War 24H] Conquiste o trono!   
    Fala galera linduxa do TK; hoje trago a vocês o tão desejado CASTLE WAR 24 HORAS, isto gera disputa intensa entre as guilds de seu servidor, atraindo assim mais jogadores que se interessam por guerras e seus demais sistemas! Modificado e com funções diferentes, no tópico ensinarei como instalar e como funciona.
     
     

     
     
    Como funciona? WOOOOOOOOW!
     
    Há um portal 24h aberto em algum lugar do seu mapa que ficará com o castle disponível 24h (avá).
    Quando uma guild qualquer acessar o portal do castelo, irá aparecer para o servidor que a X guild está tentando dominar o castelo, então o líde da guild dominante atual irá dizer !gocastle para teleportar ao castelo e defende-lo.
    O Objetivo para conquista do mesmo é invadi-lo derrotar os defensor da guild atual para abrir passagem, digamos assim, e subir ao trono, quando um membro da guild invadir o templo do trono e subir no mesmo a antiga guild dominadora é teleportada para o templo e o castelo fica sob domínio da nova guild.
    Você poderá colocar como premiação acesso a áreas exclusivas do castelo, no caso hunts e cia. (Fica a vosso critério)
     
    Evento testado nas versões 8.6; 9.6; 9.83; 9.86!
     
    Observação: 
    Comando !gocastle faz com que o líder possa teleportar todos os membros da sua guild online para perto dele, desde que ele esteja no castle. Comando pode ser usado a cada 3 horas (exhausted).  
     
     
     
     
    Vamos aos scripts do sistema;
     
    Em data/actions/scripts crie um arquivo com o nome de naviocastle.lua e coloque dentro:
    function onUse(cid, item, fromPosition, itemEx, toPosition) if(item.actionid == 65500) then if getTopCreature({x=32464,y=32378,z=5}).uid > 0 then doTeleportThing(getTopCreature({x=32464,y=32378,z=5}).uid, {x=32526,y=32421,z=5}) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) else doPlayerSendCancel(cid, "Você precisa estar em cima do tapete.") return true end elseif (item.actionid == 65501) then if getTopCreature({x=32526,y=32421,z=5}).uid > 0 then doTeleportThing(getTopCreature({x=32526,y=32421,z=5}).uid, {x=32464,y=32378,z=5}) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) else doPlayerSendCancel(cid, "Você precisa estar em cima do tapete.") end end return true end


     
     
     
    Em actions.xml adicione a seguinte linha:
    <action actionid="65500-65501" event="script" value="naviocastle.lua"/> Pós feito isto, em data/lib crie um arquivo com o nome de 015-COH e adicione dentro dele:
    -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // COH_PUSHTIME = 10800 -- Tempo (em segundos) de exhausted para usar o comando !gocastle - Padrão (3 horas) COH_AREA = {{x = 32458, y = 32332, z = 7}, {x = 32558, y = 32429, z = 7}} -- Canto superior esquerdo / inferior direito do Castle -- // Não mexa daqui para baixo COH_STATUS = 201320111714 COH_PREPARE1 = 201320111715 COH_PUSHSTOR = 201320111716 COH_PREPARE2 = 201320111717 function doCastleRemoveEnemies() for index, creature in ipairs(getPlayersOnline()) do if isInArea(getThingPos(creature), COH_AREA[1], COH_AREA[2]) then if getPlayerGuildName(creature) ~= getGlobalStorageValue(COH_STATUS) then doTeleportThing(creature, getTownTemplePosition(getPlayerTown(creature))) end end end return true end Proximo passo, em data/monster.xml adicione a seguinte linha:
    <monster name="Castle Guardian" file="Castle Guardian.xml"/> Em data/monsters crie um arquivo com o nome de Castle Guardian.xml e adicione o seguinte:
    <?xml version="1.0" encoding="UTF-8"?> <monster name="Castle Guardian" nameDescription="a castle guardian" race="blood" experience="0" speed="0" manacost="0"> <health now="800000" max="800000"/> <look type="131" head="57" body="19" legs="57" feet="95" addons="1" corpse="6080"/> <targetchange interval="5000" chance="30"/> <strategy attack="100" defense="0"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="4"/> <flag staticattack="90"/> <flag runonhealth="800"/> </flags> <attacks> <attack name="melee" interval="2000" min="-60" max="-180"/> <attack name="physical" interval="1000" chance="35" range="7" min="-205" max="-385"> <attribute key="shootEffect" value="energy"/> </attack> <attack name="manadrain" interval="1000" chance="17" range="7" min="-205" max="-560"/> <attack name="speed" interval="1000" chance="12" range="7" speedchange="-600" duration="40000"> <attribute key="areaEffect" value="redshimmer"/> </attack> <attack name="fire" interval="2000" chance="45" range="7" radius="3" target="1" min="-250" max="-420"> <attribute key="shootEffect" value="burstarrow"/> <attribute key="areaEffect" value="firearea"/> </attack> <attack name="firefield" interval="1000" chance="20" range="7" radius="2" target="1"> <attribute key="shootEffect" value="fire"/> </attack> <attack name="energy" interval="2000" chance="25" length="8" spread="0" min="-265" max="-445"> <attribute key="areaEffect" value="energy"/> </attack> <attack name="speed" interval="6000" chance="10" range="5" speedchange="-600" duration="20000"> <attribute key="areaEffect" value="redshimmer"/> </attack> </attacks> <defenses armor="1" defense="1"/> <elements> <element firePercent="100"/> <element energyPercent="100"/> <element icePercent="100"/> <element earthPercent="90"/> <element holyPercent="-25"/> <element physicalPercent="-33"/> </elements> <immunities> <immunity paralyze="1"/> <immunity invisible="1"/> </immunities> <summons maxSummons="2"> <summon name="deathspawn" interval="1500" chance="0" max="0"/> </summons> <loot> <item id="2148" countmax="20" chance1="100000" chancemax="0"/> </loot> </monster> Pós isto;
     
     
    Em data/movements/scripts crie um arquivo com o nome de COH.lua e adicione o seguinte:
    -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // function onStepIn(cid, item, pos, fromPosition) local pos = getThingPos(cid) if item.actionid == 16203 then if not isPlayer(cid) then return true end if getGlobalStorageValue(COH_STATUS) == getPlayerGuildName(cid) then doSendMagicEffect(getThingPos(cid), 14) doSendAnimatedText(pos, "CoH", math.random(1, 255)) else doSendMagicEffect(getThingPos(cid), 2) doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "[CoH] Você não pertence á guild "..getGlobalStorageValue(COH_STATUS)..".") end return true end if item.actionid == 16202 then if not isPlayer(cid) then return true end if getPlayerGuildId(cid) > 0 then if (getGlobalStorageValue(COH_STATUS) ~= getPlayerGuildName(cid)) then doPlayerSendTextMessage(cid, 20, "[Castle of Honor] Você e sua guild estão no comando, os antigos donos ["..tostring(getGlobalStorageValue(COH_STATUS)).."] podem se vingar!") setGlobalStorageValue(COH_PREPARE1, -1) setGlobalStorageValue(COH_PREPARE2, -1) setGlobalStorageValue(COH_STATUS, getPlayerGuildName(cid)) doCastleRemoveEnemies() doBroadcastMessage("[Castle of Honor] O jogador ["..getCreatureName(cid).."] e sua guild ["..getPlayerGuildName(cid).."] estão no comando do castelo, vá dominar e impedir isso!") end else doSendMagicEffect(pos, 2) doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "[CoH] Você não possui uma guild.") end return true end if item.actionid == 16200 then if not isPlayer(cid) then return true end if getPlayerGuildId(cid) > 0 then doSendAnimatedText(pos, "CoH", math.random(1, 255)) if (getGlobalStorageValue(COH_PREPARE1) ~= getPlayerGuildName(cid)) and ((getGlobalStorageValue(COH_PREPARE2) ~= getPlayerGuildName(cid))) then setGlobalStorageValue(COH_PREPARE1, getPlayerGuildName(cid)) doBroadcastMessage("[Castle of Honor] Atenção! A guild "..getPlayerGuildName(cid).." está tentando dominar o castelo, preparem-se!") end else doSendMagicEffect(pos, 2) doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "[CoH] Você não possui uma guild.") return true end end if item.actionid == 16201 then if not isPlayer(cid) then return true end doSendAnimatedText(pos, "CoH", math.random(1, 255)) if (getGlobalStorageValue(COH_PREPARE2) ~= getPlayerGuildName(cid)) then setGlobalStorageValue(COH_PREPARE2, getPlayerGuildName(cid)) doBroadcastMessage("[Castle of Honor] Atenção! A guild "..getPlayerGuildName(cid).." está muito próxima do domínio, ataquem!") end end return true end Em data/movements/movements.xml adicione a seguinte linha:
    <movevent type="StepIn" actionid="16200-16203" event="script" value="COH.lua"/> Próximo passo:
     
    Em data/talkactions/scripts crie um arquivo com o nome de COHABSOLUTE.lua e adicione o seguinte:
    -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // function onSay(cid, words, param) if getPlayerGuildLevel(cid) == GUILDLEVEL_LEADER then if getPlayerStorageValue(cid, COH_PUSHSTOR) < os.time() then if getGlobalStorageValue(COH_STATUS) == getPlayerGuildName(cid) then if isInArea(getThingPos(cid), COH_AREA[1], COH_AREA[2]) then if #getMembersOnline(getPlayerGuildId(cid)) > 0 then for index, creature in ipairs(getMembersOnline(getPlayerGuildId(cid))) do if (getTileInfo(getThingPos(creature)).protection ~= true) then return doPlayerSendCancel(cid, "[CoH] Os membros devem estar em área PZ.") end doTeleportThing(creature, getThingPos(cid)) end setPlayerStorageValue(cid, COH_PUSHSTOR, os.time() + COH_PUSHTIME) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "[Castle of Honor] Você teleportou seus membros, comando pode ser usado a cada "..tostring(COH_PUSHTIME / 60).." minuto(s).") else doPlayerSendCancel(cid, "[CoH] Para executar isso, sua guild deve ter 2 ou mais membros online.") end else doPlayerSendCancel(cid, "[CoH] Você deve estar no castelo.") end else doPlayerSendCancel(cid, "[CoH] Sua guild não é dona do castelo.") end else doPlayerSendCancel(cid, "[CoH] Você deve aguardar "..tostring(math.ceil((getPlayerStorageValue(cid, COH_PUSHSTOR) - os.time()) / 60)).." minuto(s) para usar este comando.") end else doPlayerSendCancel(cid, "[CoH] Você deve ser líder de uma guild para executar este comando.") end return true end function getMembersOnline(id) local mbr = {} for index, creature in ipairs(getPlayersOnline()) do if getPlayerGuildId(creature) == id then if getCreatureSkullType(creature) < 3 then table.insert(mbr, creature) end end end return mbr or #mbr end Em data/talkactions/talkactions.xml adicione a seguinte linha:
    <talkaction words="!castlepush;!pushmembers;!gocastle" event="script" value="COHABSOLUTE.lua"/> Quem disponibiliza o mapa do castelo a vocês é nosso amigo ViitinG, segue o link do tópico para download do mesmo já adaptado para este Castle:
    http://www.tibiaking.com/forum/topic/35730-mapa-evento-war-castle/
     
     
     
    Explicação das actions e demais (caso não use o mapa disponibilizado pelo Viiting lembre de adicionar ao castelo);
    ActionID 16200 - No meio do caminho para o castelo, ActionID 16201 - Perto do castelo, ActionID 16202 - No piso, trono que faz com que domine, e ActionID 16203 - Para a passagem de acesso ás hunts / city exclusivas da guild vencedora. Importante: Para colocar uma passagem para as hunts ou o que for a premiação da guild vencedora, coloque um caminho único com os actionIDS 16203, assim só a guild dominante do castelo poderá passar neste local. É importante lembrar que este script é de autoria do Roksas Nunez, ex scripter da empresa chaitosoft, fiz simples modificações de otimização.
     
     
    Qualquer dúvida peço que entre em contato comigo e poste aqui no tópico.
     
     
     
    Créditos:
    Absolute
    Roksas
    ViitinG
     
     
    Espero que gostem, afinal raro alguém disponibilizar algo tão desejado e útil assim!
     
     
     
    Até o próximo sistema.
     
     
     
     
    Absolute on tibiaking =p
  19. Gostei
    ricardiitoohz deu reputação a ViitinG em [Castle War 24H] Conquiste o trono!   
    Fico foda em,espero que a galera goste do mapa !

Informação Importante

Confirmação de Termo