Ir para conteúdo

Ribeiro Foda

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Ribeiro Foda deu reputação a Rusherzin em (Resolvido)addEvent em CastSpell   
    Não tenho certeza se entendi exatamente o que tu querias que eu fizesse, mas... tenta dessa forma:
     
    local config = { mana = 0, seconds = 0, storage = 111313, semMana = "Você não tem mana suficiente.", msg = "Você precisa aguardar %d segundos para usar essa magia novamente.", } local area = createCombatArea(AREA_CIRCLE2X2) function onCastSpell(cid, var) local target = getCreatureTarget(cid) if(isCreature(target) == 0) then return true end if getPlayerStorageValue(cid, config.storage) == -1 then setPlayerStorageValue(cid, config.storage, os.time()-config.seconds) end if config.seconds-(os.time()-getPlayerStorageValue(cid, config.storage)) > 0 then doPlayerSendCancel(cid, string.format(config.msg, config.seconds-(os.time()-getPlayerStorageValue(cid, config.storage)))) return true end if getPlayerMana(cid) >= config.mana then doPlayerAddMana(cid, -config.mana) setPlayerStorageValue(cid, config.storage, os.time()) for x = 1, 40 do addEvent(furyAttackTarget,250*x+500,cid,target,{x = getCreaturePosition(target).x + math.random(-1,1), y = getCreaturePosition(target).y + math.random(-1,1), z = getCreaturePosition(target).z}) end else doPlayerSendCancel(cid, config.semMana) doSendMagicEffect(getPlayerPosition(cid),2) end return true end function furyAttackTarget(cid,target,pos) if isCreature(cid) == TRUE and isCreature(target) == TRUE then doSendDistanceShoot({x = getCreaturePosition(target).x - math.random(4,6), y = getCreaturePosition(target).y - 5, z = getCreaturePosition(target).z},pos,3) doAreaCombatHealth(cid,COMBAT_FIREDAMAGE,pos,area,-1,-200,36) doAreaCombatHealth(cid,COMBAT_FIREDAMAGE,pos,area,-1,-500,36) end end  
  2. Gostei
    Ribeiro Foda deu reputação a KotZletY em (Resolvido)addEvent em CastSpell   
    @Ribeiro Foda o que você quer fazer ? Você quer adiconar um addEvent, ou seja, você quer um time pra executar algo.
    Não está funcionando, porquê você ta colocando pro addEvent retorna o combat, sem ter o combat, isso da nem pra questionar. "Como usar algo, que não existe ?". 
  3. Gostei
    Ribeiro Foda deu reputação a Rusherzin em [AJUDA] Como dar acesso a missões.   
    Não tem o arquivo quests.xml? Acho que lá posso encontrar a storage e o valor certo para terminar cada missão..
  4. Gostei
    Ribeiro Foda deu reputação a Rusherzin em doTeleportThing(cid,Pos) ao usar Spell   
    local config = { mana = 0, seconds = 10, storage = 10, semMana = "Você não tem mana suficiente.", msg = "Você precisa aguardar %d segundos para usar essa magia novamente.", } local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 6) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 0, -3000, 0, -6000) function onCastSpell(cid, var) if getPlayerStorageValue(cid, config.storage) == -1 then setPlayerStorageValue(cid, config.storage, os.time()-config.seconds) end if config.seconds-(os.time()-getPlayerStorageValue(cid, config.storage)) > 0 then doPlayerSendCancel(cid, string.format(config.msg, config.seconds-(os.time()-getPlayerStorageValue(cid, config.storage)))) return true end if getPlayerMana(cid) >= config.mana then doPlayerAddMana(cid, -config.mana) setPlayerStorageValue(cid, config.storage, os.time()) local Target = getCreatureTarget(cid) local Pos = getCreaturePosition(Target) doTeleportThing(cid,Pos) addEvent(doCombat, 0, cid, combat, var) else doPlayerSendCancel(cid, config.semMana) doSendMagicEffect(getPlayerPosition(cid),2) end return true end  
  5. Gostei
    Ribeiro Foda deu reputação a Rusherzin em (Resolvido)[NPC] Erro ao criar NPC   
    Faltava um end.
     
    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 if(msgcontains(msg, 'castle') or msgcontains(msg, 'castelo')) then if os.date("%A") == "Saturday" then if (os.date("%X") >= "17:00:00") and (os.date("%X") <= "18:00:00") then pos = {x=849, y=995, z=7} doTeleportThing(cid,pos) talkState[cid] = 0 else selfSay('Desculpe, mas eu só posso teleporta-lo para o Castle aos Sabados entre as 17:00 e 18:00 horas.', cid) end end end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())  
  6. Gostei
    Ribeiro Foda recebeu reputação de Mixlort em Poketibia 9.60 by lazarocp   
    Aaaaaaaaaaaaaaa posta as mega evolução tioooo
  7. Gostei
    Ribeiro Foda deu reputação a Zanrix em NPC Perguntas   
    Não entendi se ele pode ficar perguntando até acertar ou se ele errar uma vez perde a chance, mas está aqui os dois jeitos:
    Pode tentar até acertar:

    Só uma chance de responder:
     
  8. Gostei
    Ribeiro Foda deu reputação a Zanrix em NPC Perguntas   
    Algo assim?
     
  9. Gostei
    Ribeiro Foda recebeu reputação de Alberto Silvano em Poketibia 9.60 by lazarocp   
    Aaaaaaaaaaaaaaa posta as mega evolução tioooo
  10. Gostei
    Ribeiro Foda recebeu reputação de Magalhaes92 em [creaturescripts] Aparecer OwNeD! ao matar player.   
    Olá pessoal do TK! Vim aqui hoje trazer 1 script bem básico, mas legal!
     
    Quando o character morre Aparece em cima do corpo OwNeD!
     
    1º Abra data\creaturescripts\scripts
     
    Agora crie 1 arquivo .LUA chamado: owned
     
    Agora cole isso:
    function onKill(cid, target) if isPlayer(cid) == TRUE and isPlayer(target) == TRUE then doSendAnimatedText(getCreaturePosition(target), "OwNeD!", 35) end return TRUE end 2º Abra creaturescripts.xml e coloque isso:
     
    Se for 8.40:
    <event type="kill" name="owned" script="owned.lua"/> Se for 8.54 para cima
    <event type="kill" name="owned" event="script" script="owned.lua"/> É isso aí pessoal! Eu não sei muito bem como colocar isso:  <event type="statschange" name="magmaboots" event="script" value="magmaboots.lua"/>
     
    (As coisas em verde,roxo, azul)
     
    Ai fiz do meu jeito!
     
    CRÉDITOS: Leonardo ( Criador do Black World 8.40)
     
    ATT: R1B31R0
     
    EDIT: Desculpe pelo erro no Título, não sei como mudar. Escrevi errado CreatureScripts, coloquei CreatureScripta. Desculpem!
  11. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em (Resolvido)Stunner Axe   
    Em weapons/scripts coloque mace.lua
     
     
  12. Gostei
    Ribeiro Foda deu reputação a luanluciano93 em [TFS 1.x] TK Vip System   
    Olá pessoal, estou desenvolvendo esse sistema vip para TFS 1.x, se precisarem de alguma função nova é só comentar, criei para usar em um servidor meu e resolvi postar, bom proveito a todos.
     
    É só ir no arquivo data/lib/core/player.lua e adicionar esse código no começo do script:
    -- ALTER TABLE `accounts` ADD `vip_time` BIGINT(20) NOT NULL DEFAULT 0; -- player:getVipTime() function Player.getVipTime(self) local resultId = db.storeQuery("SELECT `vip_time` FROM `accounts` WHERE `id` = '".. self:getAccountId() .."';") local time = resultId ~= false and result.getNumber(resultId, "vip_time") or 0 result.free(resultId) return time end -- player:isVip() function Player.isVip(self) return self:getVipTime() > os.time() and true or false end -- player:addVipDays(days) function Player.addVipDays(self, days) return(self:isVip() and tonumber((days * 86400))) and db.query("UPDATE `accounts` SET `vip_time` = '".. (self:getVipTime() + (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") or db.query("UPDATE `accounts` SET `vip_time` = '".. (os.time() + (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") end -- player:removeVipDays(days) function Player.removeVipDays(self, days) return(self:isVip() and tonumber((days * 86400))) and db.query("UPDATE `accounts` SET `vip_time` = '".. (self:getVipTime() - (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") or db.query("UPDATE `accounts` SET `vip_time` = '".. (os.time() - (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") end -- player:setVipDays(days) function Player.setVipDays(self, days) return db.query("UPDATE `accounts` SET `vip_time` = '".. (os.time() - (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") end -- player:removeVip() function Player.removeVip(self) db.query("UPDATE `accounts` SET `vip_time` = '0' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") end -- player:sendVipDaysMessage() function Player.sendVipDaysMessage(self) if self:isVip() then local vipTime = self:getVipTime() - os.time() local vipDays = 1 + (math.floor(vipTime / 86400)) return self:getVipTime() ~= false and self:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, 'You have '.. vipDays .. ' vip day(s) in your account.') end end -- player:checkVipLogin() function Player.checkVipLogin(self) if self:getVipTime() > 0 and not self:isVip() then return self:removeVip() and self:teleportTo(self:getTown():getTemplePosition()) end end  
     
    As funções são:
    • player:getVipTime() - Retorna o valor da tabela vip_time (igual esta na database).
    • player:isVip() - Retorna se o player é vip ou não.
    • player:addVipDays(days) - Usa-se em algum script para para adicionar dias de vip ao player (parâmetro de entrada "days").
    • player:removeVipDays(days) - Usa-se em algum script para para remover dias de vip do player (parâmetro de entrada "days").
    • player:setVipDays(days) - Usa-se em algum script para para mudar os dias de vip do player (parâmetro de entrada "days").
    • player:removeVip() - Usa-se em algum script para para remover todo tempo de vip do player.
    • player:sendVipDaysMessage() - Retorna uma mensagem no player mostrando os dias de vip que ainda restam ao player.
    • player:checkVipLogin() - Checa se a vip do player acabou, se sim teleporta ele para o templo.
     

    Qualquer dúvida ou erro/bug poste aqui.
  13. Gostei
    Ribeiro Foda recebeu reputação de mauroala em Poketibia 9.60 by lazarocp   
    Aaaaaaaaaaaaaaa posta as mega evolução tioooo
  14. Gostei
    Ribeiro Foda deu reputação a nookia em Rocky Boots   
    Nome: Rocky Boots Função: A cada 120 segundos "2 minutos", absorve metade de um dano acima de 1000. Autor: Nokia Ideia: FoxWorld Versão Testada: 8.40+ Bom, vamos a script.
     
    Em creaturescript.xml adicione:
    <event type="statschange" name="rockyBoots" script="rockyBoots.lua"/> Crie um arquivo em creaturescripts/scrips chamado rockyBoots.lua e adicione isso:
    function onStatsChange(cid, attacker, _type, combat, value) if isPlayer(cid) == TRUE then if getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid == 7891 then local value = value if (_type == STATSCHANGE_HEALTHGAIN) or (_type == STATSCHANGE_MANAGAIN) then if (value >= 1000) then local metade = math.floor(value/2) if getPlayerStorageValue(cid, 41234) > os.time() then else setPlayerStorageValue(cid, 41234, os.time() + 120) doTargetCombatHealth(0, cid, COMBAT_PHYSICALDAMAGE, -metade, -metade, CONST_ME_NONE) doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "A sua rocky boots absorveu " .. metade .. " de dano.") return FALSE end end end end end return TRUE end Em creaturescripts/scripts/login.lua adicione a seguinte linha para registra o script:
    registerCreatureEvent(cid, "rockyBoots") Agora para saber o tempo que vai absorver novamente:
     
    Em actions.xml adicione:
    <action itemid="7891" script="rockyBoots.lua" /> Crie um arquivo em actions/scrips chamado rockyBoots.lua e adicione isso:
    function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, 41234) > os.time() then doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Rocky boots carregando. Faltam "..getPlayerStorageValue(cid, 41234) - os.time().." segundos.") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Rocky boots protegendo.") end end No caso da bota seria a Magma Boots, imagem da bota em anexo.
    rocky boots.bmp
  15. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em Gran Castle Event (8.54+)   
    Olá pessoa, hoje vim trazer pra vocês um script bem requisitado que inclusive é vendido por alguns scripters. Algumas versões "pioradas" dessse script podem ser encontradas em servidores cópias do Fox World porém nenhum desses scripts chegará aos pés desse daqui que foi arrumado por mim.
    Eu não sou o criador do Script, eu peguei qualquer um na internet e só fui arrumando e adicionando coisas que as pessoas reclamavam que não tinha.
    O cara que criou a versão que eu editei é esse daqui:

    Não vou me prolongar e nem falar mal da versão do Roksas, apenas saibam que eu editei ela praticamente inteira e que agora está 100%.

    Aqui tem um pequeno vídeo de como funciona o evento:
     
     

    Explicação: Gran Castle é um evento para ser feito sozinho ou com a guild, há um limite configurável no script de membros que podem entrar da mesma guild. Em dias determinados é aberto o evento e os players podem entrar ao falar com o NPC Melkrapo. Uma vez dentro do castelo os players batalharão para subir os andares e chegar até a Gran Tower, um monstro lendário que dará glória para aqueles que o derrotarem. Será que você é capaz? Instale no seu server e descubra! Um evento para redefinir o conceito de PVP e onde o seu maior inimigo serão seus semelhantes.


    Sem mais delongas vamos começar  a instalar esse monstrinho.. porque ele é grande pra caralho.
     
     
     


    Agora crie um arquivo em creaturescripts\scripts chamado Gran Tower.lua e adicione o seguinte:

    em data\lib crie um arquivo chamado 046-Gran Tower.lua e adicione o seguinte dentro dele:
    Agora voltando aos creaturescripts crie um arquivo em scripts chamado Gran Aura.lua e adicione:


    E um arquivo chamado Barrier.lua na mesma pasta com o seguinte conteúdo:
    Agora em globalevents\globalevents.xml adicione a seguinte linha:
    <globalevent name="Gran Tower" interval="60" event="script" value="Gran Tower.lua"/> E adicione o script associado em globalevents\scripts com o nome de Gran Tower.lua:
    Agora na pasta monster procure o seu monsters.xml e adicione essas duas linhas:
    <monster name="Gran Tower" file="8.4/Gran Tower.xml"/> <monster name="Barrier" file="8.4/barrier.xml"/> Feito isso crie os monstros na pasta data\monster\8.4:
    O primeiro se chama barrier.xml e deverá conter:


    O segundo se chamará Gran Tower.xml e deverá conter:
    Agora vamos para NPC, vá em data\npc e crie um arquivo chamado Melkrapo.xml com o seguinte conteúdo:


    Agora em npc\scripts crie um arquivo chamado Melkrapo.lua e adicione o seguinte:

     
    Agora partindo pra spells vá em data\spells e adicione no spells.xml essas linhas:
  16. Gostei
    Ribeiro Foda recebeu reputação de leozynho123 em [PEDIDO TFS] PARA 8.4!   
    Galera alguem tem uma TFS 0.3.6 para servidor 8.4?
    Que leia mods!
  17. Gostei
    Ribeiro Foda recebeu reputação de fagnersantos em [PEDIDO TFS] PARA 8.4!   
    Galera alguem tem uma TFS 0.3.6 para servidor 8.4?
    Que leia mods!
  18. Gostei
    Ribeiro Foda deu reputação a vagnerkuntz em (Resolvido)[PEDIDO] Red Star Diferente   
    Ribeiro baixe a versão do TFS 0.3.2
    que é 8.40 e tem source disponível.
  19. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em (Resolvido)[PEDIDO] Red Star Diferente   
    é o mesmo esquema da gran aura, qnd logar faz a checagem e adiciona a função no player.
  20. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em (Resolvido)[PEDIDO] Red Star Diferente   
    fico feliz que você tenha conseguido resolver.
  21. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em (Resolvido)[PEDIDO] Red Star Diferente   
    o vídeo ficou uma bosta e não dá pra enxergar onde começa e onde termina mas em todo caso eu fiz essa função aqui  que deve funcionar da forma que vc quer
    function loopEffect(uid, effect, tempo) local pos = getCreaturePosition(uid) local effectPositions = { [1] = {x = pos.x - 1, y = pos.y - 1, z = pos.z, stackpos = 0}, [2] = {x = pos.x, y = pos.y - 1, z = pos.z, stackpos = 0}, [3] = {x = pos.x + 1, y = pos.y - 1, z = pos.z, stackpos = 0}, [4] = {x = pos.x + 1, y = pos.y, z = pos.z, stackpos = 0}, [5] = {x = pos.x + 1, y = pos.y + 1, z = pos.z, stackpos = 0}, [6] = {x = pos.x, y = pos.y + 1, z = pos.z, stackpos = 0}, [7] = {x = pos.x - 1, y = pos.y + 1, z = pos.z, stackpos = 0}, [8] = {x = pos.x - 1, y = pos.y, z = pos.z, stackpos = 0}, [9] = {x = pos.x, y = pos.y, z = pos.z, stackpos = 0} } doSendDistanceShoot(effectPositions[math.random(#effectPositions)], effectPositions[math.random(#effectPositions)], effect) addEvent(function() if isCreature(uid) then loopEffect(uid, effect, tempo) end end, 1000 * tempo) return true end  só colocar ela no final de data\lib\constant.lua e no script que vc quiser que adicione ela você coloca essa linha:

    loopEffect(cid, 18, 0.3)
  22. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em (Resolvido)[PEDIDO] Red Star Diferente   
    isso é uma função cara, vc põe onde vc quiser '-'
  23. Gostei
    Ribeiro Foda deu reputação a xWhiteWolf em (Resolvido)[PEDIDO] Red Star Diferente   
    @xarles, isso é considerado flood. Se você não tem nada a dizer que vá acrescentar algo ao tópico, apenas fique quieto. 

    @Topic: me manda um vídeo ou faz um desenho que eu tento fazer
  24. Gostei
    Ribeiro Foda recebeu reputação de geanzitxo em [ITEM.XML] Helmet dar vida e duration!   
    Olá pessoal fiz 1 tag para 1 helmet que da vida, achei bem legal é Igual do Fox World.
    O helmet da porcento de life e life, ele tem uma duration. Vamos lá!
     
    1º Abra seu items.xml e de Ctrl+f e procuro pelo ID 2342 ( Ancient Helmet ) 
     
    2º Substitua oque está escrito por isso: ( P.S: Eu uso o nome como pharao helmet )
    <item id="2342" article="a" name="pharao helmet"> <attribute key="description" value="The power of the ancients converted into health. (hitpoints 100+2%)."/>                                       <attribute key="weight" value="2760"/>                                       <attribute key="armor" value="8"/>                                       <attribute key="maxhealthpoints" value="+100" />                                       <attribute key="maxhealthpercent" value="+105" />                                       <attribute key="slotType" value="head"/> Ele é simples assim. Despois procure no ID abaixo 2343. ( Eu coloquei o nome de blessed pharao helmet)   <item id="2343" article="a" name="blessed pharao helmet"> <attribute key="description" value="The power of the ancients converted into health. (hitpoints 200+4%)."/>                                       <attribute key="weight" value="2760"/>                                       <attribute key="armor" value="10"/>                                       <attribute key="slotType" value="head"/>                                       <attribute key="maxhealthpoints" value="+150." />                                                    <attribute key="maxhealthpercent" value="+110." />                                       <attribute key="duration" value="9800"/>                                       <attribute key="showduration" value="1"/>                                       <attribute key="decayTo" value="2342"/>  
    Ou seja ele vai durar 1 hora e 38 minutos, depois ele volta para o Pharao Helmet.
     
    Agora vai em movements/movements.xml
     
    e Adicione isso: 
                        <movevent event="Equip" itemid="2342" slot="head" function="onEquipItem" />                     <movevent event="DeEquip" itemid="2342" slot="head"  function="onDeEquipItem" />   E depois
     <movevent event="Equip" itemid="2343" slot="head" function="onEquipItem" />                    <movevent event="DeEquip" itemid="2343" slot="head"  function="onDeEquipItem" />   Pronto está feito!   Agora vem a pergunta como eu coloco o brilho vermelho denovo?  É simples apenas colocar 1 comando em talkactions\scripts. Crie 1 arquivo blessed.LUA e coloque isso:   function onSay(cid, words, param)  if doPlayerRemoveMoney(cid, 0) == TRUE then doPlayerAddItem(cid,2343, 1)  pos = getPlayerPosition(cid)  doSendAnimatedText(pos, "BLESSED", TEXTCOLOR_RED)  elseif(doPlayerRemoveMoney(cid,0) == FALSE) then doPlayerSendCancel(cid, "Você nao tem dinheiro.")  end return TRUE  end   Depois vai em talkactions.xml   <talkaction words="!blessed" script="blessed.lua"/>  
    É isso ai! Acabou agora paladin não vai morrer "Facil" !
    Esse é meu primeiro tutorial, desculpe pela desorganização!
  25. Gostei
    Ribeiro Foda recebeu reputação de geanzitxo em [creaturescripts] Aparecer OwNeD! ao matar player.   
    Olá pessoal do TK! Vim aqui hoje trazer 1 script bem básico, mas legal!
     
    Quando o character morre Aparece em cima do corpo OwNeD!
     
    1º Abra data\creaturescripts\scripts
     
    Agora crie 1 arquivo .LUA chamado: owned
     
    Agora cole isso:
    function onKill(cid, target) if isPlayer(cid) == TRUE and isPlayer(target) == TRUE then doSendAnimatedText(getCreaturePosition(target), "OwNeD!", 35) end return TRUE end 2º Abra creaturescripts.xml e coloque isso:
     
    Se for 8.40:
    <event type="kill" name="owned" script="owned.lua"/> Se for 8.54 para cima
    <event type="kill" name="owned" event="script" script="owned.lua"/> É isso aí pessoal! Eu não sei muito bem como colocar isso:  <event type="statschange" name="magmaboots" event="script" value="magmaboots.lua"/>
     
    (As coisas em verde,roxo, azul)
     
    Ai fiz do meu jeito!
     
    CRÉDITOS: Leonardo ( Criador do Black World 8.40)
     
    ATT: R1B31R0
     
    EDIT: Desculpe pelo erro no Título, não sei como mudar. Escrevi errado CreatureScripts, coloquei CreatureScripta. Desculpem!

Informação Importante

Confirmação de Termo