Venha conhecer o Xtibia!

Bem Vindo ao XTibia - Sua comunidade de Otserv e Tibia

Registre-se para utilizar nossas ferramentas e baixar conteúdos. Quando registrado e logado em sua conta, lhe garantimos uma experiência incrível em nossa comunidade!

    1. Recepção Xtibia

      1. Noticias

        Grrr... O que há de novo? 

         

        15,710
        posts
      2. Como usar o Xtibia?

        Leia estes tópicos interativos e repletos de informações que você talvez não saiba sobre a nossa comunidade!

        • No posts here yet
    2. Otserv

      1. OTServ Geral

        Esta seção é voltada para notícias, discussões e entrevistas OTServ, formação de equipes para desenvolvimento de OTs e eventos em geral.

        18,868
        posts
      2. Otservlist

        Anuncie seu servidor Open-PVP, Optional-PVP ou Hardcore-PVP e seja visto pela comunidade.

        6,782
        posts
      3. OTs

        Download de servidores normais, ats e oldschool.

        39,966
        posts
      4. Ferramentas

        Faça downloads de utilitários para seu server.
         

        5,622
        posts
      5. 49,305
        posts
      6. Mapas

        Mapas compatíveis com todas as versões

        4,654
        posts
      7. OT Clients

        Conteúdos de Tibia Clients, Open Tibia Clients, OTClients e derivados.

        1,039
        posts
      8. Websites

        Baixe Webistes prontos para uso em OTServ. Temos os Melhores Websites disponíveis para você.

        3,336
        posts
      9. Programação

        Poste aqui seus códigos já desenvolvidos. Todo conteúdo sobre programação Open Tibia disponível aqui.

        5,182
        posts
    3. Tutoriais e Suporte

      1. Tutoriais para Iniciantes

        Confira esta seção caso seja novo em OTServ e deseja aprender como ter seu próprio OT.

        77,675
        posts
      2. Tutoriais de Scripting

        Aprenda a fazer seus próprios scripts e desenvolva seu OT.

         

        70,478
        posts
      3. 27,964
        posts
      4. Tutoriais de Clients

        Obtenha tutoriais para configurar seu client para OTServ

        5,168
        posts
      5. Tutoriais de Spriting

        Tutoriais incríveis sobre spriting, pixel art e arte gráfica em geral, para Open Tibia.

        19,116
        posts
      6. Tutoriais de Websites

        Nesta seção você encontrará tudo que precisa para manutenção ou criação do seu website.

        12,524
        posts
      7. Tutoriais de Programação

        Tutoriais sobre programação, relacionado ou não a Open Tibia.

        6,697
        posts
      8. Tutoriais de Infraestrutura

        Veja aqui tutoriais de sistemas operacionais, redes e segurança, banco de dados e outros assuntos relacionados à infraestrutura.

        4,374
        posts
    4. Tibia

      1. Notícias e Discussões

        Espaço para as notícias e discussões do mundo de Tibia, onde nossa equipe de imprensa trará as novidades do que está rolando por aí.

        16,525
        posts
      2. Exposições de Characters

        Do you play Tibia? If you have an knight, paladin, druid or sorcerer, show us!

        1,714
        posts
    5. OFF-Topic

      1. Barzinho do Éks

        Tudo que não é ligado ao Tibia ou ao OTServ pode ser postado aqui.
        Compre uma cerveja pelo preço de duas e ganhe a segunda de graça!

        25,634
        posts
      2. Informática

        Seção para assuntos de Informática.

        13,523
        posts
    • Member Statistics

      296,276
      Total Members
      919
      Most Online
      BrunaF
      Newest Member
      BrunaF
      Joined
    • Latest Tutorials Comments

      • Daniel

        World of piece Open Source - completo!

        06/19/2016

        Clique na imagem acima para acessar o tópico ou entre no link abaixo:       MAIS IMAGENS        
      • Frenvius

        Procura-se: Programador

        06/13/2016

        Estamos a procura de programador para o projeto PokeHeores. Caso haja interesse, entre em contato conosco através de nossa página no Facebook.   http://fb.me/PokeHeroes
      • Danihcv

        Problemas com Double Post Corrigidos

        06/13/2016

        Problema corrigido! Agora não haverão mais double posts (caso ocorram, por alguma falha eventual, os posts duplos serão mesclados em apenas 1 só) e nem posts seguidos (estes ocasionavam flood/spam).
      • Daniel

        Seja Patrocinado, veja os benefícios:

        06/12/2016

        PROJETOS PATROCINADOS Leia abaixo para entender como funciona o nosso patrocínio:
        CICLO ENTRE PARCEIROS
        O xtibia caminha ao lado de outros dois projetos importantes, o nosso parceiro de berço OTPanel e a otservlist.me. É notável ressaltar que através dessa parceria formulamos regras para convivência dos projetos dentro da nossa comunidade. De certo modo, as normas presentes nesta resolução acompanham as definições já em funcionamento (disponíveis nas regras gerais da comunidade).

        A IMPORTÂNCIA DO PATROCÍNIO
        Os projetos patrocinados pelo xtibia já contribuíram muitas vezes mais que vice-versa. O objetivo principal desta resolução visa aumentar as chances de crescimento desses projetos que possuem potencial.

        PORQUE SER PATROCINADO?
        Estão previstos aqui, além de normas de conduta ou execução administrativa dos projetos, normas para benefícios e incentivo aos projetos. Sendo estas:

        • Fórum
        O projeto ganhará um fórum acessível por um menu no topo do site e localizado na primeira categoria da index. Este fórum poderá conter categorias e sub-categorias, prefixos, background próprio e logo própria. Os membros parceiros terão poderes administrativos neste fórum. Os projetos também poderão solicitar fóruns privados, acessíveis com senha. Estes fóruns farão parte do SEO do xtibia, sendo acessado por centenas de membros todos os dias.

        • Operação
        Visto que queremos incentivar os projetos a interagirem com a comunidade, os parceiros terão direitos a benefícios extras. Os membros participantes do projeto patrocinado terão o limite de mensagens privadas triplicado, assim como o limite de upload de arquivos. Ainda falando em limite, estes poderão trocar o nome em 50% menos tempo que membros comuns. Também serão donos de um rank de identificação diferenciado do padrão de membros da comunidade, junto a medalhas exclusivas para a categoria. Tudo isso visando dar ênfase aos desenvolvedores parceiros dentro da comunidade.  
        • Expansão
        A área de interação para com o público do projeto aumentará com a permissão para membros parceiros publicarem artigos na biblioteca do xtibia. Também terão apoio direto da equipe do xtibia, que deverá, acima de tudo, promover o incentivo ao publico para que acompanhe os conteúdos ou composições do projeto em discussão, do mesmo modo que incentivem diretamente estas ações.

        • Social
        O projeto quando patrocinado receberá total cobertura a seus conteúdos, principalmente nos meios sociais.

        • Promoção
        Todos os projetos terão direito a um sorteio para utilização de um slot de anúncio vago na comunidade, isto será válido entre um intervalo de 60 dias após o uso do benefício. Os projetos também participarão de sorteios mensais envolvendo nossos parceiros, Otpanel.com e OTServlist.me.

        • Facilidade
        Projetos patrocinados tem direito a 10% de desconto exclusivo na compra de anúncios no XTibia e na Otservlist.me (em qualquer slot).

        • Eventos
        Será discutido com os projetos, quinzenalmente, e juntamente com o coordenador de eventos da comunidade, a criação e execução de eventos entre os dois parceiros, visando beneficiar ambos.

        TENHA UMA CHANCE
        Qualquer projeto fundado em conceitos objetivos, com potencial para cumpri-los e executá-los ao longo do tempo poderá receber os benefícios. Mas não haverá espaço para projetos que não concordem com os termos primários, para manter tal parceria. Sendo estes:
          Projetos não podem ter outros patrocinadores além do xtibia. O projeto parceiro não deve divulgar outras empresas. Os membros do projeto deverão assumir um compromisso com a comunidade. Devem postar diariamente e participar desta. Deve ser adicionado 1 banner do xtibia no site do projeto.       Para proceder, entre em contato com o e-mail [email protected] e solicite uma avaliação.   Em seguida, o projeto deve preparar um relatório para apresentar contendo na reunião marcada: Informações Gerais do projeto: Nome/Integrantes/Estilo/Versão/Público-alvo/ Informações Sólidas: Conteúdos Prontos/Conteúdos sendo desenvolvidos/conteúdos a desenvolver/Objetivos/Metas/  
      • Daniel

        Hospede seus arquivos no Xtibia

        06/12/2016

        Saiba como hospedar suas imagens, vídeos e arquivos em geral em nossa comunidade:   Lembrete Cada membro possui 0,5 GB de espaço para guardar arquivos públicos, estes arquivos podem ser adicionados à tópicos em forma de anexo ou conteúdo gráfico; Há um limite máximo de 100 MB por post, para a postagem destes arquivos; Membros não podem deletar anexos, uma vez que anexado, poderá solicitar a remoção do arquivo na central de soluções da comunidade; Membros participantes de projetos patrocinados pela comunidade, tem espaço expandido para 2 GB.     Ao adicionar novo post, tópico ou artigo, sigas até o final do editor de texto e escolha os arquivos desejados:       ... Agora, selecione os arquivos. Você pode selecionar mais que 1 anexo, mas fique atento ao seu limite de uploads por post (100 MB):       Para anexar o arquivo/media ao post, clique no botão Inserir no Post:       Acesse o Painel de Arquivos, indo no menu da sua conta em: Meus Anexos       Aviso Arquivos que não corresponderem às regras da comunidade serão deletados e o membro poderá ter o espaço de arquivos zerado ou ser banido.  
    • Recent Status Updates

      • balla1009  »  garep

        vc sabe me ajudar nisso? 
         
        · 0 replies
      • samlecter  »  kaleudd

        Oi, não sei se já resolveu, não respondi no tópico pq está fechado
        " estou so com um problema de uma script de addon system,ao soltar um pokemon ja equipado com Addon nao aparece os moves dele no Cooldown Bar do Otc,porem funcionar de boa m1 a m12 no Hotkeys,Uso o Addon system do Stigal. "
        Ná época estava com o mesmo problema, mas consegui resolver, não lembro exatamente mas acho que coloquei isso aqui:
        if useKpdoDlls then doUpdateMoves(cid) end Ano passado, antes de estar funcionando com fly, surf e skills, cheguei a postar em outro fórum o addon incompleto(sem surf,fly,skills) porém com as correções para aparecer as spells na cd bar e mais algumas coisas eu acho, confere lá
        Link
        · 0 replies
      • miupinho  »  Daniel

        Olha skype lá gatomiau
        · 2 replies
      • Felipe Moraes  »  Daniel

        aceita minha solicitação no grupo do face
        · 1 reply
    • Posts

      • Galeria de ideias
        Galeria top @Skulls, seus códigos são bons demais. Seguindo.
      • Brush l lighter l filter
        Muito boa a técnica. Na minha opinião o efeito ficaria mais legal puxando pra um laranja.
      • Brush l lighter l filter
        Opa, valeu mano! Dps dos tutoriais que você postou tô procurando mais e tentando aprender D:

            Ficou legal
      • Prazer, peedbew
        Bem-vindo

        Vai trocando ideia com o pessoal pra enturmar
      • Multi damage wand
        Olá Xtibianos! Vim trazer este script bem criativo. Ele permite você mudar o elemento da wand/rod que escolher. Siga as instruções para que funcione corretamente.   Créditos: StrutZ (Otland) Jano (Otland) Non Sequitur (Otland)   EXPLICAÇÃO http://imgur.com/kvBzDh5   REQUISITOS     INFORMAÇÕES -- Config -- Set wand how the wand deals damage DamageTypeWand = { values = false, -- If this is set to true then it will use the min and max values. If set to false the wand will use the formula -- Damage Values min/max wandMinDam = 20, wandMaxDam = 50, -- Damage Formula formula = { wandMinDam = function(level, maglevel) return -((level / 5) + (maglevel * 1.4) + 8) end, wandMaxDam = function(level, maglevel) return -((level / 5) + (maglevel * 2.2) + 14) end, } } -- Modal window config and storage id local config = { storage = 10009, titleMsg = "Change Weapon Damage Type", mainMsg = "Choose a damage type from the list", -- End Config -- Damage Table [1] = {element = "Holy"}, [2] = {element = "Fire"}, [3] = {element = "Death"}, [4] = {element = "Poison"}, [5] = {element = "Energy"}, [6] = {element = "Earth"}, [7] = {element = "Ice"}, }   INSTALAÇÃO Instale o Modal Window Helper, citado acima  Registre o script /data/actions/actions.xml adicionando esta linha (Substituindo "ITEMID" com o item que você quiser usar: <action itemid="ITEMID" script="weapon_damage"/> <action actionid="ACTIONID" script="weapon_damage"/>   Crie um novo documento de texto em /data/actions/scripts e nomeie para "weapon_damage.lua" e cole o seguinte: -- Config -- Set wand how the wand deals damage DamageTypeWand = { values = false, -- If this is set to true then it will use the min and max values. If set to false the wand will use the formula -- Damage Values min/max wandMinDam = 20, wandMaxDam = 50, -- Damage Formula formula = { wandMinDam = function(level, maglevel) return -((level / 5) + (maglevel * 1.4) + 8) end, wandMaxDam = function(level, maglevel) return -((level / 5) + (maglevel * 2.2) + 14) end, } } -- Modal window config and storage id local config = { storage = 10009, titleMsg = "Change Weapon Damage Type", mainMsg = "Choose a damage type from the list", -- End Config -- Damage Table [1] = {element = "Holy"}, [2] = {element = "Fire"}, [3] = {element = "Death"}, [4] = {element = "Poison"}, [5] = {element = "Energy"}, [6] = {element = "Earth"}, [7] = {element = "Ice"}, } function onUse(player, item, fromPosition, itemEx, toPosition, isHotkey) player:sendDamageWindow(config) return true end   Adicione esta linha no seu global.lua: dofile('data/lib/weapon_damage.lua') Crie um novo documento de texto em /data/lib/ e renomeie para "weapon_damage.lua" e cole isto: function Player:sendDamageWindow(config) local function buttonCallback(button, choice) -- Modal window functionallity if button.text == "Confirm" then self:setStorageValue(10009, choice.id) end end -- Modal window design local window = ModalWindow { title = config.titleMsg, -- Title of the modal window message = config.mainMsg, -- The message to be displayed on the modal window } -- Add buttons to the window (Note: if you change the names of these you must change the functions in the modal window functionallity!) window:addButton("Confirm", buttonCallback) window:addButton("Cancel") -- Set what button is pressed when the player presses enter or escape window:setDefaultEnterButton("Confirm") window:setDefaultEscapeButton("Cancel") -- Add choices from the action script for i = 1, #config do local o = config[i].element window:addChoice(o) end -- Send the window to player window:sendToPlayer(self) end

        Registre o item em /data/weapons/weapons.xml Adicionando essa linha:
        Essa linha é para se você estiver usando wand <wand id="ITEM ID HERE" level="300" mana="20" script="weapon_damage.lua"><!-- Shadow's Sceptre --> <vocation name="Sorcerer" /> </wand>   Crie um novo documento de texto em /data/weapons/scripts e nomeie para "weapon_damage.lua" e cole:
          local DamageTypes = { [1] = {DamageType = COMBAT_HOLYDAMAGE, DamageEffect = CONST_ANI_HOLY}, [2] = {DamageType = COMBAT_FIREDAMAGE, DamageEffect = CONST_ANI_FIRE}, [3] = {DamageType = COMBAT_DEATHDAMAGE, DamageEffect = CONST_ANI_DEATH}, [4] = {DamageType = COMBAT_POISONDAMAGE, DamageEffect = CONST_ANI_POISON}, [5] = {DamageType = COMBAT_ENERGYDAMAGE, DamageEffect = CONST_ANI_ENERGY}, [6] = {DamageType = COMBAT_EARTHDAMAGE, DamageEffect = CONST_ANI_EARTH}, [7] = {DamageType = COMBAT_ICEDAMAGE, DamageEffect = CONST_ANI_ICE} } function onGetFormulaValues(player, level, maglevel) if DamageTypeWand.values == true then min = -(DamageTypeWand.wandMinDam) max = -(DamageTypeWand.wandMaxDam) else min = DamageTypeWand.formula.wandMinDam(level, maglevel) max = DamageTypeWand.formula.wandMaxDam(level, maglevel) end return min, max end local combat = {} for k, dam_Table in pairs(DamageTypes) do combat[k] = Combat() combat[k]:setParameter(COMBAT_PARAM_BLOCKARMOR, 1) combat[k]:setParameter(COMBAT_PARAM_BLOCKSHIELD, 1) combat[k]:setParameter(COMBAT_PARAM_TYPE, dam_Table.DamageType) combat[k]:setParameter(COMBAT_PARAM_DISTANCEEFFECT, dam_Table.DamageEffect) -- _G Is used to manually define 'onGetFormulaValues' in this loop in doesnt seem to be able to find the function. _G['onGetFormulaValues' .. k] = onGetFormulaValues combat[k]:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues" .. k) end function onUseWeapon(player, var) local value = player:getStorageValue(10009) local combatUse = combat[value] if not combatUse then return true end return combatUse:execute(player, var) end  
      • Modal window (tfs 1.2)
        Olá. Esse conteúdo foi desenvolvido pelo membro Non Sequitur, da Otland. Decidi trazer a vocês, então vamos lá.     MODAL WINDOW A forma atual que podemos implementar Modal Windows é bastante complicada, de acordo com Non Sequitur. Ter de criá-la em algum lugar, registrar um evento, adicionar botões de alguma forma estranha para fazer funcionar, sem falar que tem que ter em conta ids de janelas, botões, ids de escolha em algum arquivo diferente, etc...   O que você pode fazer com isto? -- The helper lib is used by passing a table value to the ModalWindow function local window = ModalWindow { title = 'Title', message = 'Please, choose the lowest number and press [Ok]' } local lowestChoice for i = 1, 5 do local value = math.random(1, 100) -- modalWindow:addChoice() returns the choice object that will be passed to the callbacks local choice = window:addChoice(value) -- This way we can pass extra information to the callback choice.value = value if not lowestChoice or lowestChoice.value > value then lowestChoice = choice end end lowestChoice.correct = true -- Add a button with a specific callback window:addButton('Ok', function(button, choice) if choice.correct then print('Player selected the correct option.') else print('Player selected the incorrect option.') end end ) -- Set this button as the default enter button window:setDefaultEnterButton('Ok') -- Add a button without a specific callback window:addButton('Close') window:setDefaultEscapeButton('Close') -- If a button without a specific callback is pressed, this fucntion will be called window:setDefaultCallback( function(button, choice) print('Default callback, button pressed: ' .. button.text .. ' player choice: ' .. choice.text) end ) window:sendToPlayer(player)   Você pode usar este exemplo em uma talkaction e testar por si mesmo. Diferente do que é mostrado no código acima, você também pode usar modalWindow: addbuttons (...) e modalWindow: addChoices (...) para adicionar vários botões / opções ao mesmo tempo.     INSTALANDO Em data/lib/lib.lua dofile('data/lib/modalwindow.lua')   Crie o arquivo data/lib/modalwindow.lua if not modalWindows then modalWindows = { modalWindowConstructor = ModalWindow, nextFreeId = 500, windows = {} } end local MT = {} MT.__index = MT function ModalWindow(...) local args = {...} if type(args[1]) == 'table' then local self = setmetatable(args[1], MT) local id = modalWindows.nextFreeId self.id = id self.buttons = {} self.choices = {} self.players = {} self.created = false modalWindows.nextFreeId = id + 1 table.insert(modalWindows.windows, self) return self end return modalWindows.modalWindowConstructor(...) end function MT:setDefaultCallback(callback) self.defaultCallback = callback end function MT:addButton(text, callback) local button = {text = tostring(text), callback = callback} table.insert(self.buttons, button) return button end function MT:addButtons(...) for _, text in ipairs({...}) do table.insert(self.buttons, {text = tostring(text)}) end end function MT:addChoice(text) local choice = {text = tostring(text)} table.insert(self.choices, choice) return choice end function MT:addChoices(...) for _, text in ipairs({...}) do table.insert(self.choices, {text = tostring(text)}) end end function MT:setDefaultEnterButton(text) self.defaultEnterButton = text end function MT:setDefaultEscapeButton(text) self.defaultEscapeButton = text end function MT:setTitle(title) self.title = tostring(title) end function MT:setMessage(message) self.message = tostring(message) end local buttonOrder = { [4] = {3, 4, 2, 1}, [3] = {2, 3, 1}, [2] = {1, 2}, [1] = {1} } function MT:create() local modalWindow = modalWindows.modalWindowConstructor(self.id, self.title, self.message) local order = buttonOrder[math.min(#self.buttons, 4)] if order then for _, i in ipairs(order) do local button = self.buttons[i] modalWindow:addButton(i, button.text) button.id = i if button.text == self.defaultEnterButton then modalWindow:setDefaultEnterButton(i) elseif button.text == self.defaultEscapeButton then modalWindow:setDefaultEscapeButton(i) end end end for _, choice in ipairs(self.choices) do modalWindow:addChoice(_, choice.text) choice.id = _ end self.modalWindow = modalWindow end function MT:sendToPlayer(player) if not self.modalWindow then self:create() end player:registerEvent('ModalWindowHelper') self.players[player:getId()] = true return self.modalWindow:sendToPlayer(player) end   Em data/creaturescripts/creaturescripts.xml <event type="modalwindow" name="ModalWindowHelper" script="modalwindowhelper.lua" />   Crie o arquivo data/creaturescripts/scripts/modalwindowhelper.lua function onModalWindow(player, modalWindowId, buttonId, choiceId) local modalWindow for _, window in ipairs(modalWindows.windows) do if window.id == modalWindowId then modalWindow = window break end end if not modalWindow then return true end local playerId = player:getId() if not modalWindow.players[playerId] then return true end modalWindow.players[playerId] = nil local choice = modalWindow.choices[choiceId] for _, button in ipairs(modalWindow.buttons) do if button.id == buttonId then local callback = button.callback or modalWindow.defaultCallback if callback then callback(button, choice) break end end end return true end    
      • Dh lever time (tfs 1.2)
        Bom conteúdo. Pra server mapa global é interessante colocar 24h pra ficar parecido com o original.
      • Spell e move healarea
        Salve galera, recentemente (depois de ter parado 5 vezes) comecei a mexer com a base Pokémon Dash (Antiga) e me deparei com a spell e move healarea, o que esta acontecendo? Bom ela apenas esta healando o Pokémon, gostaria que ela desse heal igual na pxg que no caso é tanto no player quanto no pokemon.   Código do move: elseif pokemon.x.spell == "Healarea" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) setCombatParam(COMBAT_HEALING, COMBAT_PARAM_AGGRESSIVE, FALSE) doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3)))) doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_HEALING, getThingPos(getCreatureSummons(cid)[1]), healarea, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 71) addEvent(doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 71),1) return 0 Se alguém puder ajudar agradeço.
      • [c++] passive system
        Seria interessante se o autor do código original pudesse vir aqui ajudar, tenho certeza que conseguiria resolver
      • Novidades juninas otpanel!
        Conheço a empresa de nome. Aparenta ter qualidade. Se alguém puder publicar algum material mostrando como funciona otpanel eu agradeço. ^^
      • Membro do mês | junho
        Parabéns ao membro e aos administradores por valorizarem tanto. 
      • Dh lever time (tfs 1.2)
        Olá, vim trazer à comunidade esse código. Ele permite adicionar tempo para resetar a dh quest. Ele foi postado originalmente pelo membro Lundrial, da otland. Bem, não há mais o que dizer.   DH LEVER TIME    lever.lua local timetoreset = 5 -- Time to reset the quest in minutes. local objectid = xxxx -- Id of the item Blocking the path local p = { Position(x, y, z), -- Position of the item blocking the path Position(x, y, z), -- Teleport Creation position Position(x, y, z) -- Position where it sends you } function onUse(cid, item, fromPosition, itemEx, toPosition, isHotkey) local stone = Tile(p[1]) local tp = Tile(p[2]) if item.itemid == 1945 then cid:sendTextMessage(MESSAGE_EVENT_ORANGE, 'The object in your path has been removed for ' .. timetoreset .. ' minutes.') doCreateTeleport(1387, p[3], p[2]) stone:getItemById(objectid):remove() p[1]:sendMagicEffect(CONST_ME_POFF) p[2]:sendMagicEffect(CONST_ME_TELEPORT) Item(item.uid):transform(1946) addEvent(function(stonePos) Game.createItem(objectid, 1, stonePos) stonePos:sendMagicEffect(CONST_ME_TELEPORT) p[2]:sendMagicEffect(CONST_ME_POFF) tp:getItemById(1387):remove() Tile(toPosition):getItemById(1946):transform(1945) end, timetoreset * 60000, stone:getPosition()) elseif item.itemid == 1946 then return false end return true end  
      • Prazer, peedbew
        Olá olá !   Sou Peedbew, me registrei a pouco. Sou Scripter iniciante, bom, espero melhorar meu conhecimento aqui na comunidade, tanto é que vim pra cá pra isso.  Como que faz pra se enturmar aqui? 
      • Ajuda pra compilar yatc
        Eu gostaria de pedir a ajuda de vocês pra compilar as sources do yatc, gostaria que me ensinassem como fazer no visual studio passo-a-passo se possivel, não sei o que por aonde, entende? Aqui o link das sources
      • [.obd] todos os held itens tier 1x7
        Sem bla bla bla, mimimi, nhéco nhéco... to sem tempo para tirar print dos itens no OBJECT BUILD então segue print da pasta e façam bom aproveitos meus amigos...   Held Itens.rar     Ah... e o scan  
      • [dxp] exclusivo poketibia opensource+cliente+site+db
        Quando eu adicionei coloquei nessas pasta tanto.  actions, monster, items, movements, configuration.lua, pokespell/lib,main dables/lib, pokemonstatus/lib ! tem algo faltando?
      • [TFS 1.x] Critical System
        tem como por o dodge e o critical por item diferente??
      • Mostrar a quantidade que morreu e que matou ao dar look no player
        funciona em tfs 1.2? se não... tem como adaptar? e somente a parte das mortes... vlw!
      • Gerador de Outfit para NPCs
        tem algum que funcione no tfs 1.2?
      • Snake System [TFS 1.X]
        tem como por recompensa por acertar tantas vezes ou acerta tudo?
      • [pda] pokemon shaman
        COPIEI MSM SÓ PARA AUMENTAR MEU REP <3  n gosto de pda então reporta ai ! 
      • Carding
        Nunca acredito nessas paradas não. Acho que é treta.

    Anuncie no Xtibia!

    Anuncie para obter mais acessos em seu servidor, entre em contato conosco: [email protected].