Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 01/29/13 em todas áreas
-
Aula 2 - Listas ordenadas, listas não-ordenadas, listas de definição
LuckOake e 3 outros reagiu a Lordfire por um tópico no fórum
Se você não acompanhou a aula anterior, faça isso agora: http://www.xtibia.co...inks-e-imagens/ Para organizar as coisas, o HTML nos permite estruturas básicas de listas e tabelas. Vou começar pelas listas: Listas As listas são divididas em 3 tipos: temos as listas ordenadas (que são tipo 1, 2, 3 ou i, ii, iii); temos as listas não-ordenadas, que são as com pontinho na frente; e temos as listas de definição, que são listas de itens e suas descrições. Listas ordenadas A tag da lista ordenada é <ol> (ordered list), e cada um dos itens é um elemento <li> (list item). Assim: <ol> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ol> O resultado é este: As listas ordenadas tem 5 tipos diferentes de ordem: por números, letras maiúsculas, letras minísculas, números romanos maiúsculos, e números romanos minúsculos. Também existem diversos outros tipos especiais, como ideogramas japoneses, números armênios, letras gregas... mas só vou tratar destes 5. Você pode me perguntar se quiser outro. Para alterar, você tem que colocar, no atributo style, o código list-style-type: <tipo>. Nos 5 tipos, na ordem: <ol style="list-style-type: decimal"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ol> <ol style="list-style-type: upper-latin"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ol> <ol style="list-style-type: lower-latin"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ol> <ol style="list-style-type: upper-roman"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ol> <ol style="list-style-type: lower-roman"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ol> Usar o atributo style é, essencialmente, usar CSS. Então, que isso sirva como introdução para nossas aulas futuras Listas não-ordenadas Já as listas não-ordenadas tem apenas 3 tipos: círculo, disco e quadrado. Da mesma forma que nas listas ordenadas, você usará o list-style-type, só que a tag é <ul> (unordered list): <ul style="list-style-type: circle"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> <ul style="list-style-type: disc"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> <ul style="list-style-type: square"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> Em ambos os casos, tanto listas ordenadas quanto listas não-ordenadas, você pode definir list-style-type como none para não ter nenhuma marcação: <ul style="list-style-type: none"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> Listas de definição O terceiro tipo de lista, a lista de definição (<dl>), é diferente: você tem um item (<dt> (definition topic)), e debaixo dele adiciona a(s) descrição(ões) (<dd> (definition description)). Assim: <dl> <dt>Café</dt> <dd>Quente</dd> <dd>Preto</dd> <dt>Leite</dt> <dd>Frio</dd> <dt>Chocolate</dt> <dd>Melhor se quente</dd> <dd>Marrom</dd> </dl> Pode ter quantas descrições forem necessárias. O recuo é automático e não há configuração. Não vou definir uma tarefa pra essa aula, mas testem, mexam com as listas, insiram uma lista dentro da outra pra ver como fica, vejam os resultados, pratiquem! qualquer dúvida, responderei de prontidão.4 pontos -
Aula City #1
ramonmoreti e 3 outros reagiu a vital900 por um tópico no fórum
Muralhas! Introdução Para se iniciar esta primeira aula sobre cidades, proponho um tema de nível não tão básico. Porém de extrema necessidade e de grande importância, O Grande Portão de entrada de uma cidade, as Muralhas! Materiais Você pode usar diversos tipos de materiais, irei fazer este tutorial demonstrando 2 tipos, e farei apenas uma muralha, do tipo que eu acho mais ‘fascinante’ a entrada de um reino, com vários tipos de proteção (arqueiros de vigília, guardiões, entre outros). Veja os itens que usaremos e que podemos usara para construir a estrutura : Madeira / X / Pedra Fazendo a base da muralha Como eu irei fazer ‘a cara’ (entrada) da muralha primeiro, aqui vai um exemplo de como fazê-la. Fazendo a base Primeiro eu decoro, usando itens como (estatuas, tochas, cadeiras, etc..) para depois ‘colocar o piso’. Montando o chão, com seus efeitos (o chão por ser de madeira permite ao mapper o uso de rachaduras, musgos [fungos/lodo] e até mesmo algumas gramas [as mais fracas]) usando algum destes detalhes citados, você dá um maior ar de RPG para com o seu mapa. Segundo piso Ponha o piso a sua escolha (eu fui meio infeliz em minha escolha, porém não totalmente). Coloque as bordas nos locais necessários. Agora dê o ‘acabamento’ (colocar paredes, e outros 'mini-detalhes') deste andar. Detalhe-o de sua forma. Você pode optar por fazê-lo de uma forma mais limpa, ou; -FOTO 1- Você pode optar por fazê-lo de uma forma mais 'suja' (detalhado). -FOTO 2- Terceiro piso Siga os mesmos passos, feitos até então (monte a base, ponha os detalhes e finalmente o piso). Colocarei só como ficou o resultado deste meu andar e depois o da minha muralha. Extras/Adicionais Fazendo a prolongação da muralha. Para prolongar a muralha, você deve abusar de sua criatividade, assim como em todas as áreas de seu map. Lembre-se uma área quanto mais criativa e coerente mais bela se apresentará! Vamos la! Você deve criar uma porta que dê para um corredor (opcional), para fazê-lo tirei a planta. Agora basta por o chão e detalha-lo Agora o que fazer quando para se seguir com a muralha você se depara com este impasse Têm varias formas de sair desta situação como: A que eu mais prefiro \/ Bom isto é tudo por enquanto, até a próxima aula galera. Espero que eu tenha os ajudado! Créditos: 100% vital9004 pontos -
Tibia .dat e .spr limpos (sem nada)
Noninhouh e 3 outros reagiu a danilinho79 por um tópico no fórum
Fala galera, aqui é o danilonilo/danilinho79 e eu estou oferecendo um .dat e um .spr limpos, sem nenhum sprite, só com as bases dos itens, que me parece ser impossível deletar, eu demorei muito pra deletar todas sprites e queria a colaboração de vocês, se inscrevam no meu canal do youtube (http://youtube.com/danilonilo8) na minha página do facebook (https://www.facebook.com/pages/Danilonilo-Songs/291152341006088) Download: http://www.4shared.com/rar/kdnwrmOu/Tibia_Dat_e_Spr_Limpos.html? Scan: https://www.virustotal.com/file/b50ce9a4f9bf130bfe5a5f43de85ad45e9e0f3046ac3fea891fe8c1617e205d9/analysis/1356465760/4 pontos -
Assinatura da Semana #77
Alexclusive e 2 outros reagiu a Tonynh por um tópico no fórum
ASSINATURA DA SEMANA #77 Faaaaaaaaaaaaala galera! Estou hoje reativando oficialmente a Assinatura da Semana! Depois de muito tempo, estamos de volta! Tema da ADS #77: LIVRE Para sugerir um tema ( Clique Aqui) 1. Qualquer pessoa pode participar da ADS. (*) 2. A dimensão máxima para uma assinatura é 500x300 ou 300x500. 3. Não é permitido participar da mesma edição mais de uma vez por pessoa. 4. É proibido reaproveitar trabalhos antigos. 5. Um post sem ser o seu trabalho (Exemplo: Duvida ou comentário de alguma sign) será excluído e se continuar você perdera 1 ponto de reputação. 6. Se o post for editado após 5 minutos depois de ter postado, o membro podera ser desqualificado. 7. Em caso de comprovação de RIP (Cópia total ou parcial de um trabalho) o membro será banido e desqualificado. 8. Uma assinatura fora do tema será ignorada e o membro será desqualificado. 9. Pedidos entregues depois da data de término do concurso serão ignorados. 10. Usuários que forem pegos com contas falsas durante a votação, serão banidos sem aviso prévio. *Nota: NENHUM (incluindo o meu) voto vai valer se o mesmo for feito depois da data do Termino da Votação (encontrada mais abaixo no calendário), para evitar confusões. Premiação 1° Colocado - 3 Reps + sign 2° Colocado - 2 Reps + sign 3° Colocado - 1 Rep + sign Datas: Concurso: 29/01/2013 até 05/01/2013 (23:59) Votação: 05/02/2013 até 12/02/2013 (23:59) Resultado: 12/02/2013 ou 13/02/2013. Dúvidas: Clique aqui AS IMAGENS DEVEM SER POSTAS NESTE TÓPICO ATÉ A DATA MARCADA. Espero muitos participantes!3 pontos -
[8.54] Naruto Legend V2.0 - Novo Mapa com Teleports!
alef0000 reagiu a Animal Pak por um tópico no fórum
[8.54] Naruto Legend V2.0 - Com Teleports! Informações: - Novo Mapa RPG, com teleports (Com Levels); - Novas Organizações (Akatsuki, anbu, sannin, shippuden, hokage, etc); - Novas Transformações; - 24 Vocações; - Novos Jutsus; - Novos Itens; - Novos Sistemas e comandos; - Novos Monstros; - 3 Vilas; - Ajeitei o servidor para rodar em sqlite (Account Manager já configurado). - Sistema Premium (Com Premium Zone). - Servidor 100% estável; - E mais! Screen's: Download Servidor & Scan: Download: http://adf.ly/UA7a9 Scan: https://www.virustot...sis/1355872674/ Download Distro & Dll's: OBS: Os vírus encontrados são falso positivos ou seja são dll's não reconhecidas que são acusadas como vírus, use-os caso você não tenha nenhum outro de sua confiança para usar Download: http://adf.ly/UA7fX Scan: https://www.virustotal.com/file/7f0c9ae8dbb26b2019aac3147e8aaebcbe37fbc226b5c5fd402cef2f7e9f17f8/analysis/1355915844/ Download Client & Scan: Incluso tibia.spr e tibia.dat! Download: http://www.mediafire...9fdj1y9nc4ta1fy Scan: https://www.virustot...sis/1355873069/ Créditos: Tfs Team Uffox Wono-CJ SmoOkeR1 ponto -
Bom galera pra queles que estão procurando site para poketibia esta aqui o design foi eu que modifiquei eu achei bom não sei vocês espero que gostem, esse site eh totalmente modificado para servidores de poketibia como andei procurando e não achei resolvi modificar o Modern AAC pois achei mais facil o uso. estarei mostrano algumas imagens do site para todos vocês Web Site Poketibia 1.0 Web Site Poketibia 1.0 Scan Virus Total Web Site Poketibia 2.0 Web Site Poketibia 2.0 Log da versão 2.0 Scan Virus Total Tutorial 1º passo aconselho versão mais nova do Xampp 1.7.7 pelo menos e a versão que estou usando mais segura e não tive neum problema com ele ate o momento. depois que instalou o Xampp entre no phpmyadmin do xampp Criar novo Banco de Dados com o nome que preferir de sua escolha carregue o arquivo mysql que geralmente vem com seu servidor de poketibia depois que carregar pegue o arquivo do web site poketibia 1.0 extrair dentro da pasta htdocs dentro do Xampp pronto o resto agora e facil. 2º passo va no navegador e coloque http://localhost automaticmente ele vai pra pagina de instalação do site 1º imagem 2º imagem pronto instação completa vamus configurar o restante abre o config.lua de dentro da pasta do web site poketibia 1.0 altere essa linha pois e a coordenada onde o char vai nascer obs: o Web site Poketibia 1.0 so suporta ser a configuração do config.lua do seu servidor de poketibia tiver em versão criptografada Sha1 então altere para Sha1 e mysql alte tambem remova o as linhas do config.lua do seu servidor que contenha "--" na frente do nome pode remover não vai aver neum problema na remoção não esqueça de desativar o acc manager do config lua tb pois vai bugar os char e não vão poder entra no servidor a instalação não contem senha de administrador do site precisa mudar o acesso de pagina direto do banco de dados qualquer duvida podem pergunta espero que gostem do site qualquer bug pode posta que tentaremos corrigir o mais rapido possivel gostaria muito da opinião de todos vocês Creditos a equipe do Modern Acc por disponibilizar o script do site pra podemos modificar para Poketibia Nibelins Uso exclusivo do Xtibia1 ponto
-
[8.54] Naruto Seven / Client Descompilado [Download]
superboy0008 reagiu a Stigal por um tópico no fórum
• NARUTO SEVEN - DOWNLOAD • Tópico e Links atualizados: 27/02/17 • Menu: ├ Informações; ├ Jutsus; ├ Prints; ├ Download; └ Creditos. • Informações Basicas • • Jutsus Do Servidor • • PrintScreen • • Download's • Servidor 8.54 + Cliente (MediaFIRE) http://www.mediafire.com/file/99upszbnbb7aklb/Nrtao V.2.rar Senha Para Entrar No Server / (Do GOD): god / god • Creditos • Stigal, Avuenja.1 ponto -
[Pokemon] Servidor Gabrieltxu e suas Versões
Silvaninho reagiu a Gabrieltxu por um tópico no fórum
Conteudo Retirado.1 ponto -
Vip System by Sqlite
SnakevL reagiu a Lukeskywalker por um tópico no fórum
Bom pessoal enfim eu consegui lançar o script arrumado para TFS 0.3.6 e 0.4 Mais dessa vez eu fiz ele de uma maneira muito mais facil de usar e 100% funcional você apenas vai colocar os arquivos na pasta MODS de sua TFS para que ele funcione ele se instala sozinho em sua Database Vip Sistem TFS 0.3.6.rar Vip Sistem TFS 0.4.rar O script possibilita você ver quantos dias de vip restam nas contas quando elas são atualizadas em tempo real aparece no console a quantidade de dias que restam nas contas vip quando são atualizadas alem de que o player mesmo pode ver quantos dias restante ele tem de vip aparece para o player logo que ele entra em seu character a quantidade de dias vip Bom para saber como usar é simples para adicionar a vip la vai um explo de adicionar 30 dias no player Luke sky walker /addvip Luke sky walker, 30 Esse script tem um sistema para aqueles que usam ROOKGUARD no servidor é facil configurar caso você usar o sistema de rookguard é so você configurar no vip_sys.xml é facil logo abaixo tera uma explicação <config name="Rook_Config"><![CDATA[RookSistem = "yes"RookTempleID = 1MainTempleID = 2]]></config> Aqui o sistema de rook está ativado mais caso você queira desativar!!! você coloca RookSistem = "no" e as configs logo abaixo de RookSistem são apenas os ID dos templo o RookTempleID você coloca o ID do templo de rook e MainTempleID você coloca o ID preferencial de uma cidade de Main O tile que você quiser que so VIP passe coloque a ActionID 7777 Caso você ache bugs postem aqui mais creio que não tenha nenhum bug pois testei tudo. OBS: Ele foi projetado para TFS ORIGINAL caso você esteja usando uma versão ja editada por outras pessoas não garanto o FUNCIONAMENTO Por favor não tirem os creditos deste script! Gostou??? Não esqueça de deixar um comentario e nao esqueça do REP++ Obrigado. Vip Sistem TFS 0.3.6.rar Vip Sistem TFS 0.4.rar1 ponto -
[9.60] Azeroth RPG
Arisen Trapzer reagiu a Vmspk por um tópico no fórum
Azeroth Server Updated 28/01/2013: v2.0 by Vmspk Este servidor foi disponibilizado para você gratuitamente, nunca retire os créditos Versões Anteriores: v1.0 [8.70]: http://www.xtibia.co...server-updated/ v1.1 [8.60]: http://www.xtibia.co...oth-rpg-reborn/ Versão: 9.60 Distro: TFS 0.4 Mapa Base: Yourots Edited e Mix Yourots Features: > 7 Cidades: Azeroth Avalon Zatur Liberty Bay Gloria Sand Trap Tiquanda > Mapa RPG bem detalhado para Ots Low e Mid rate. > Inúmeras invasões automáticas, Low e High lvl (ou iniciadas pelo comando /raid "nome"). > NPCs de Travel/Boat diferentes para cada cidade. > Mais de 100 quests (além das principais) espalhadas pelo mapa. > Quests especiais com NPCs > Arena PvP sem perda de items. > Sistema de Guerras pelo Castelo [entre guilds] (mais detalhes abaixo) > Sistema de Refinamento e Slot (mais detalhes abaixo). > Sistema de Mineração (mais detalhes abaixo) > Scripts e sistemas aprimorados para o servidor > Distro SEM erro algum > Equipamentos 9.60 funcionando corretamente > Novas Hunts > Raids de bosses 9.60 > Montarias por quest > Principais Quests: Annihilator Blue Legs Pits of Inferno MMS The Inquisition The Death FireWalker Boots Demon Helmet Draken Hell Conquer Prismatic Armory Deepling Abismal > 27 Raids Automáticas e configuradas: > Sistema de Guerras pelo Castelo [Honor Castle, a oeste de Azeroth] Evento automático. Quando a guerra é anunciada as guilds podem batalhar pelo controle do castelo, dando use no monumento do último andar e permanecendo assim até a guerra acabar. O último jogador a ter o controle do castelo antes do tempo acabar será o vencedor, e sua guild se tornará dona do castelo. Todos os membros da Guild ganharão uma recompensa e poderão acessar o mapa do subsolo. Os membros de outras Guilds serão teleportados para o templo e não poderão acessar o castelo. O sistema envia mensagens a todos antes de o evento começar, quando começar, quando o dono do castelo muda, antes de se finalizar e ao finalizar, relatando o conquistador do castelo e a guild vencedora. Imagens: Raids Honor Castle War Upgrade & Slot System > Histórico: V 0.2 V 0.3 V 0.4 V 1.0 V 1.1 V 2.0 Não há teleports diretos para hunts ou quests. Não há items ou monstros editados(além dos trainers). Não há sistema VIP, VIP 2, VIP 3, VIP 345456364. Não há raids com monstros excessivamente fortes nas cidades iniciais. Créditos: < Unknow YourOts Edited >< Mix Yourots Team >< Crystal Server Team >< Tryller >< Mock >< TFS Team >< TonyHanks >< Centera World >< SmoOker >< Mappers Xtibia e OtservBr >< Vmspk > (Este servidor foi disponibilizado para você gratuitamente, nunca retire os créditos) DOWNLOADS > Opcionais Utilitários - Source *Utilitários inclui: SQLite Studio + Otland Ipchanger > Servidor Azeroth Server v2.0 [MEDIAFIRE] Para entrar no servidor sem usar a internet, ponha no ipchanger localhost Se você estiver usando sqlite, vá até o config.lua e mude ingameGuildManagement = false para ingameGuildManagement = true > Scan Acc do GOD: vmspk/222222 Comandos: !war para executar a guerra pelo castelo manualmente, !reset para interromper o funcionamento da war e !castle para limpar todos os dados, ou seja, o castelo volta a ser terra de ninguém. !info para saber mais sobre as novidades do Azeroth Server. Editável na pasta do Ot, em Notícias. Comando !bless e !rank disponíveis. Para saber os IDs das pedras e outras coisas vá ao Histórico, na versão 1.0. Se acha que ter um OtServ é só baixar, abrir e largar lá, ou ainda editar chars e equipamentos para você mesmo jogar e fazer o que quiser, garanto-lhe que não vai durar 2 dias. Conheça o mapa, crie eventos, interaja com os jogadores, faça torneios Pvp, marque datas para a Honor Castle, faça updates no mapa, crie monstros, hunts e quests, dê suporte e, o mais importante, mantenha o HELP aberto, sempre. Contato: vmspk@hotmail.com Os arquivos dos ots 9.60 estavam muito errados e incompletos, ou melhor, podres. Não duvido que a maioria desses 9.60 postados aqui ou nos outros fóruns estejam infestados de bugs e coisas que não funcionam. Loots errados, monstros copiados, escadas sem registros, novos equipamentos sem movements (propriedades não faziam efeito), bordas de mapas 9.60 fora do lugar, scripts simples como os de Locked Doors em conflito com a lib, etc, etc. Tive um trampo do cão pra arrumar tudo isso. Do meu suor eu digo a vocês, dou-lhes o melhor servidor 9.60 (pelo menos por enquanto) Conheça também o 4Fun Server 9.11 ponto -
http://i.imgur.com/fixB0a5.jpg http://i.imgur.com/b2w5e9R.png Pack Optical Flares =http://www.mediafire...n51g1q569n7vv0z1 ponto
-
Criando Um Cliente 100% Proprio
LuisMatheuziin reagiu a Tony por um tópico no fórum
Olá pessoal do Xtibia! Hoje vou ensinar a vocês como criar um cliente 100% próprio para seu servidor de tibia. :forward: Créditos :back: :star2: Jakiin :star2: Trazer ao x-tibia :star2: TiraDuvidas :star2: Fazer o Tutorial Este tópico recebeu destaque em nosso portal!1 ponto -
Pet System OOP
PostadorHunter reagiu a Oneshot por um tópico no fórum
Pet System OOP Boa tarde, pessoal. Depois de ver muitos sistemas de pet para Tibia, resolvi desenvolver o meu próprio sistema de pets. O diferencial do meu sistema é que ele é orientado a objetos. Sim, ele trata o pet do jogador como um objeto em Lua e suas ações como métodos. Essa ainda é uma versão básica, que irei aprimorar aos poucos, igual fiz com meu Forge System e Refine System. Por se tratar de uma biblioteca orientada a objetos, ele pode ser usado por qualquer scripter em diversos sistemas, e se bem adaptado, dá até para fazer um Poketibia orientado a objetos. Aliás, os comandos estão bastante semelhantes a Pokétibia. Instalação 1. Crie um arquivo em data/lib com o nome pet-system.lua e cole o conteúdo abaixo: -- This script is part of Pet System -- Copyright (C) 2013 Oneshot -- -- 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/>. -- storages for pet system PET_UID = 80001 PET_SPECIE = 80002 PET_LEVEL = 80003 PET_EXPERIENCE = 80004 PET_HEALTH = 80005 PET_HEALTHMAX = 80006 PET_MANA = 80007 PET_MANAMAX = 80008 PET_EXHAUST = 80009 PET_ALIVE = 80010 Pets = {} -- class for pet species PetSpecie = { type = "", basehp = 0, basemp = 0, gainhp = 0, gainmp = 0, spells = {}, evolution = "", evolve = 0, } -- class for pets Pet = { it = nil, attributes = nil, level = 0, experience = 0, health = 0, healthmax = 0, mana = 0, manamax = 0, } -- create new instances of PetSpecie function PetSpecie:new(type, basehp, basemp, gainhp, gainmp, spells, evolution, evolve) local new_specie = { type = type, basehp = basehp, basemp = basemp, gainhp = gainhp, gainmp = gainmp, spells = spells, evolution = evolution, evolve = evolve, } local obj = setmetatable(new_specie, {__index = self}) Pets[type:lower()] = obj return obj end -- create new instances of Pet function PetSpecie:create() local new_pet = { it = nil, attributes = self, level = 1, experience = 0, health = self.basehp, healthmax = self.basehp, mana = self.basemp, manamax = self.basemp, } return setmetatable(new_pet, {__index = Pet}) end -- summon a player pet for the first time function Pet:hatch(cid) if getCreatureStorage(cid, PET_SPECIE) ~= -1 then return doPlayerSendCancel(cid, "You already have a pet.") end local pet = doCreateMonster(self.attributes.type, getCreaturePosition(cid)) if not pet then return false end if not doConvinceCreature(cid, pet) then doRemoveCreature(pet) return false end self:setit(pet) setCreatureMaxHealth(pet, self.healthmax) doCreatureAddHealth(pet, self.healthmax) doCreatureSetStorage(cid, PET_SPECIE, self.attributes.type) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your new pet has born.") self:save() doSendMagicEffect(getCreaturePosition(pet), CONST_ME_HOLYDAMAGE) return self end -- make player pet say something function Pet:say(strt) doCreatureSay(self.it, strt, TALKTYPE_ORANGE_1) end -- gather a summoned player pet back function Pet:back() self:save() doSendMagicEffect(self:position(), CONST_ME_POFF) doCreatureSay(getCreatureMaster(self.it), "It's enough, ".. getCreatureName(self.it)) doRemoveCreature(self.it) end -- free a player pet forever function Pet:release() local cid = getCreatureMaster(self.it) doCreatureSay(cid, "Good bye, ".. getCreatureName(self.it) .."... :'(") doCreatureSetStorage(cid, PET_UID, -1) doCreatureSetStorage(cid, PET_SPECIE, -1) doCreatureSetStorage(cid, PET_LEVEL, -1) doCreatureSetStorage(cid, PET_EXPERIENCE, -1) doCreatureSetStorage(cid, PET_HEALTH, -1) doCreatureSetStorage(cid, PET_HEALTHMAX, -1) doCreatureSetStorage(cid, PET_MANA, -1) doCreatureSetStorage(cid, PET_MANAMAX, -1) doSendMagicEffect(self:position(), CONST_ME_POFF) doRemoveCreature(self.it) end -- add experience to player pet function Pet:addexperience(value) local prevLevel = self.level local nextLevelExp = getExperienceForLevel(self.level + 1) self.experience = self.experience + value while self.experience >= nextLevelExp do self.healthmax = self.healthmax + self.attributes.gainhp self.manamax = self.manamax + self.attributes.gainmp self.level = self.level + 1 nextLevelExp = getExperienceForLevel(self.level + 1) end if prevLevel ~= self.level then self.mana = self.manamax self.health = self.healthmax doPlayerSendTextMessage(getCreatureMaster(self.it), MESSAGE_STATUS_CONSOLE_BLUE, "Your pet advanced from level ".. prevLevel .." to level ".. self.level ..".") setCreatureMaxHealth(self.it, self.healthmax) doCreatureAddHealth(self.it, getCreatureMaxHealth(self.it)) self:save() if self.attributes.evolution then if self.attributes.evolve and self.level >= self.attributes.evolve then doCreatureSay(getCreatureMaster(self.it), "What's happening?!") addEvent(function() local cid = getCreatureMaster(self.it) local position = self:position() doRemoveCreature(self.it) local pet = doCreateMonster(self.attributes.evolution, position) if not doConvinceCreature(cid, pet) then doRemoveCreature(pet) call_pet(cid) return end doCreatureSetStorage(cid, PET_UID, pet) setCreatureMaxHealth(pet, self.healthmax) doCreatureAddHealth(pet, getCreatureMaxHealth(pet)) doSendMagicEffect(getCreaturePosition(pet), CONST_ME_MORTAREA) doCreatureSetStorage(cid, PET_SPECIE, self.attributes.evolution) end, 100) end end end end -- make pet cast a spell function Pet:cast(index) local cid = getCreatureMaster(self.it) if not self.attributes.spells[index] then return doPlayerSendCancel(cid, "This spell is unknown.") end local spell = self.attributes.spells[index] if self.level < spell.level then doPlayerSendCancel(cid, "Your pet doesn't have enough level to cast this spell.") return end if self.mana < spell.mana then doPlayerSendCancel(cid, "Your pet doesn't have enough mana to cast this spell.") return end if getCreatureStorage(cid, PET_EXHAUST) > os.clock() then doSendMagicEffect(self:position(), CONST_ME_POFF) doPlayerSendCancel(cid, "Your pet is exhausted.") return end if spell.target then local target = getCreatureTarget(self.it) if target == 0 then doPlayerSendCancel(cid, "First, select a target.") return end spell.range = spell.range or 1 if getDistanceBetween(self:position(), getCreaturePosition(target)) > spell.range then doPlayerSendCancel(cid, "Too far to cast spell.") return end doSendDistanceShoot(self:position(), getCreaturePosition(target), spell.shooteffect) doTargetCombatHealth(self.it, target, spell.type, -spell.min, -spell.max, spell.effect) else doAreaCombatHealth(self.it, spell.type, self:position(), (spell.area or 0), -min, -max, spell.effect) end self.mana = self.mana - spell.mana doCreatureSetStorage(cid, PET_EXHAUST, os.clock() + (spell.exhaust / 1000)) doCreatureSay(cid, getCreatureName(self.it) ..", use ".. spell.name .."!") self:say(spell.name) end -- set pet uid function Pet:setit(uid) self.it = uid end -- get player pet position function Pet:position() return getCreaturePosition(self.it) end -- move player pet to a direction function Pet:move(direction) local toPosition = getPosByDir(self:position(), direction, 1) if getCreatureStorage(getCreatureMaster(self.it), PET_EXHAUST) > os.clock() then doSendMagicEffect(self:position(), CONST_ME_POFF) doPlayerSendCancel(cid, "Your pet is exhausted.") return end if queryTileAddThing(self.it, toPosition) == RETURNVALUE_NOERROR then doMoveCreature(self.it, direction) doCreatureSetStorage(cid, PET_EXHAUST, os.clock() + 0.5) doCreatureSay(cid, "Move, ".. getCreatureName(self.it) .."!") end end -- save player pet attributes function Pet:save() local cid = getCreatureMaster(self.it) doCreatureSetStorage(cid, PET_UID, self.it) doCreatureSetStorage(cid, PET_SPECIE, getCreatureName(self.it)) doCreatureSetStorage(cid, PET_LEVEL, self.level) doCreatureSetStorage(cid, PET_EXPERIENCE, self.experience) doCreatureSetStorage(cid, PET_HEALTH, self.health) doCreatureSetStorage(cid, PET_HEALTHMAX, self.healthmax) doCreatureSetStorage(cid, PET_MANA, self.mana) doCreatureSetStorage(cid, PET_MANAMAX, self.manamax) end -- get player pet and return instance function get_pet(cid) local uid, it = getCreatureStorage(cid, PET_UID) for _, pet in ipairs(getCreatureSummons(cid)) do if pet == uid then it = pet break end end if not it then return false end local this_pet = { it = it, attributes = Pets[getCreatureName(it):lower()], level = getCreatureStorage(cid, PET_LEVEL), experience = getCreatureStorage(cid, PET_EXPERIENCE), health = getCreatureHealth(it), healthmax = getCreatureMaxHealth(it), mana = getCreatureStorage(cid, PET_MANA), manamax = getCreatureStorage(cid, PET_MANAMAX), } return setmetatable(this_pet, {__index = Pet}) end -- summon a existing player pet function call_pet(cid) if get_pet(cid) then return doPlayerSendCancel(cid, "You cannot summon your pet more than one time.") end if getCreatureStorage(cid, PET_SPECIE) == -1 then return doPlayerSendCancel(cid, "You don't have a pet.") end if getCreatureStorage(cid, PET_ALIVE) == 0 then return doPlayerSendCancel(cid, "You need to revive your pet") end local pet = doCreateMonster(getCreatureStorage(cid, PET_SPECIE), getCreaturePosition(cid)) if not pet then return false end if not doConvinceCreature(cid, pet) then doRemoveCreature(pet) return false end local health, healthmax = getCreatureStorage(cid, PET_HEALTH), getCreatureStorage(cid, PET_HEALTHMAX) setCreatureMaxHealth(pet, healthmax) doCreatureAddHealth(pet, healthmax) doCreatureAddHealth(pet, (health - healthmax)) doCreatureSay(cid, "Go, ".. getCreatureName(pet) .."!") doSendMagicEffect(getCreaturePosition(pet), CONST_ME_MAGIC_GREEN) doCreatureSetStorage(cid, PET_UID, pet) return true end -- is pet function is_pet(cid) return getCreatureMaster(cid) == 0 and false or isPlayer(getCreatureMaster(cid)) end dofile(getDataDir() .."/lib/pet-spells.lua") Pet_Rat = PetSpecie:new("Rat", 20, 0, 5, 5, {[1] = Rock_Throw, [2] = Dark_Bite}, "Cave Rat", 14) Pet_Cave_Rat = PetSpecie:new("Cave Rat", 40, 20, 10, 10, {[1] = Dark_Bite}, "Munster", 32) Pet_Munster = PetSpecie:new("Munster", 100, 50, 20, 20, {[1] = Dark_Bite}, false, false) 2. Crie um arquivo em data/lib com o nome pet-spells.lua e cole o código abaixo: -- This script is part of Pet System -- Copyright (C) 2013 Oneshot -- -- 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/>. dofile("data/spells/lib/spells.lua") Dark_Bite = { name = "Dark Bite", level = 1, mana = 100, type = COMBAT_PHYSICALDAMAGE, effect = CONST_ME_BLOCKHIT, shooteffect = CONST_ANI_SMALLSTONE, target = true, range = 1, min = 300, max = 500, area = 0, exhaust = 1000, } Rock_Throw = { name = "Rock Throw", level = 1, mana = 10, type = COMBAT_PHYSICALDAMAGE, effect = CONST_ME_BLOCKHIT, shooteffect = CONST_ANI_NONE, target = true, range = 1, min = 20, max = 25, area = 0, exhaust = 1000, } 3. Crie um arquivo em data/talkactions/scripts, chamado pet-talkactions.lua e cole o conteúdo abaixo: -- This script is part of Pet System -- Copyright (C) 2013 Oneshot -- -- 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, channel) param = string.explode(param, ":") if param[1]:lower() == "go" then if getTilePzInfo(getCreaturePosition(cid)) then return doPlayerSendCancel(cid, "You cannot call your pet at protection zone.") end local pet = get_pet(cid) if pet then return doPlayerSendCancel(cid, "You cannot call your pet two times.") end call_pet(cid) return true elseif param[1]:lower() == "back" then local pet = get_pet(cid) if not pet then return doPlayerSendCancel(cid, "Please call your pet first.") end pet:back() return true elseif param[1]:lower() == "release" then local pet = get_pet(cid) if not pet then return doPlayerSendCancel(cid, "Please call your pet first.") end pet:release() return true elseif param[1]:lower() == "cast" then local pet = get_pet(cid) if not pet then return doPlayerSendCancel(cid, "Please call your pet first.") end local index = tonumber(param[2]) or 1 pet:cast(index) return true elseif param[1]:lower() == "say" then local pet = get_pet(cid) if not pet then return doPlayerSendCancel(cid, "Please call your pet first.") end pet:say(param[2]) return true elseif param[1]:lower() == "move" then local pet = get_pet(cid) if not pet then return doPlayerSendCancel(cid, "Please call your pet first.") end if not isInArray({"north", "south", "east", "west"}, param[2]:lower()) then return doPlayerSendCancel(cid, "Invalid direction.") end pet:move((_G[param[2]:upper()] or NORTH)) return true elseif param[1]:lower() == "addexp" then local pet = get_pet(cid) if not pet then return doPlayerSendCancel(cid, "Please call your pet first.") end if getPlayerGroupId(cid) < 3 then return doPlayerSendCancel(cid, "You cannot use this command.") end pet:addexperience(tonumber(param[2]) or 0) return true end return true end 4. No talkactions.xml <talkaction words="/pet" event="script" value="pet-talkactions.lua"/> 5. Crie um arquivo em data/creaturescripts/scripts com o nome pet-creaturescripts.lua e adicione o conteúdo abaixo: -- This script is part of Pet System -- Copyright (C) 2013 Oneshot -- -- 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 onKill(cid, target, lastHit) local pet = get_pet(cid) if not isMonster(target) or getMonsterInfo(getCreatureName(target)) and getMonsterInfo(getCreatureName(target)).experience == 0 then return true end if not pet then return true end pet:addexperience(getMonsterInfo(getCreatureName(target)).experience) return true end function onDeath(cid, corpse, deathList) if not is_pet(cid) then return true end local master = getCreatureMaster(cid) doPlayerSendTextMessage(master, MESSAGE_EVENT_ADVANCE, "Your pet is dead.") doCreatureSetStorage(master, PET_ALIVE, 0) doCreatureSetStorage(master, PET_HEALTH, getCreatureMaxHealth(cid)) return true end 6. No arquivo login.lua de data/creaturescripts/scripts, adicione: registerCreatureEvent(cid, "PetKill") 7. No arquivo creaturescripts.xml, adicione: <event type="kill" name="PetKill" event="script" value="pet-creaturescripts.lua"/> <event type="death" name="PetDeath" event="script" value="pet-creaturescripts.lua"/> 8. Em cada arquivo XML de cada monstro que servirá como pet, adicione: <script> <event name="PetDeath"/> </script> 9. Mude o flag convinceable de cada monstro que será um tipo de pet. <flag convinceable="1"/> 10. Crie um arquivo chamado pet trainer.lua em data/npc/scripts, adicione: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} local petState = {} 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 local PetPrices = { ["rat"] = {1000, 200}, } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_PRIVATE and 0 or cid if msgcontains(msg, "sell") then local say = "I can offer you these pet species: " for pet_name, k in pairs(PetPrices) do local first = true if Pets[pet_name] then say = say .. (first == true and "" or ", ") .."{".. pet_name .. "}" first = false end end selfSay(say, cid) talkState[talkUser] = 1 elseif msgcontains(msg, "revive") then if getCreatureStorage(cid, PET_SPECIE) == -1 then selfSay("You don't have a pet", cid) return true end if getCreatureStorage(cid, PET_ALIVE) == 0 then if doPlayerRemoveMoney(cid, PetPrices[getCreatureStorage(cid, PET_SPECIE):lower()][2]) then selfSay("Your pet is now alive.", cid) doCreatureSetStorage(cid, PET_ALIVE, 1) else selfSay("Sorry, you need ".. PetPrices[getCreatureStorage(cid, PET_SPECIE)][2] .." gold.", cid) end else selfSay("Sorry, your pet is alive.", cid) end elseif talkState[talkUser] == 1 then if PetPrices[msg] then selfSay("A good choice, so do you want to buy a ".. msg .." pet? It will cost ".. PetPrices[msg][1] .." gold.", cid) talkState[talkUser] = 2 petState[talkUser] = msg else selfSay("Sorry, I don't know this pet specie", cid) end elseif talkState[talkUser] == 2 then if msgcontains(msg, "yes") then if get_pet(cid) or getCreatureStorage(cid, PET_SPECIE) ~= -1 then selfSay("Sorry, you already have a pet.", cid) return true end local pet = petState[talkUser] if getPlayerMoney(cid) < PetPrices[pet][1] then selfSay("Sorry, you don't have enough money", cid) return true end selfSay("This is your new pet, take care of it.", cid) Pets[pet]:create():hatch(cid) elseif msgcontains(msg, "no") then selfSay("Then not.", cid) talkState[talkUser] = 0 end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) 11. Crie um arquivo chamado Pet Trainer.xml em data/npc, adicione: <?xml version="1.0" encoding="UTF-8"?> <npc name="Pet Trainer" script="pet trainer.lua" walkinterval="0" floorchange="0"> <health now="100" max="100"/> <look type="128" head="17" body="54" legs="114" feet="0" addons="2"/> <parameters> <parameter key="message_greet" value="Hello |PLAYERNAME|, I {sell} and {revive} pets."/> </parameters> </npc> Configuração O Pet System OOP é todo orientado a objetos. Para criar novas raças de pet é muito, mas muito simples mesmo. Basta uma linha: PetSpecie:new("Rat", 20, 0, 5, 5, {[1] = Rock_Throw, [2] = Dark_Bite}, "Cave Rat", 14) Como segue o modelo abaixo: PetSpecie:new(NOME_DO_MONSTRO, HP_INICIAL, MP_INICIAL, HP_POR_LEVEL, MP_POR_LEVEL, {[1] = MAGIA_1, [2] = MAGIA_2, [3] = MAGIA_3, ...}, NOME_DA_EVOLUÇÃO, LEVEL_DA_EVOLUÇÃO) Caso você não queira que o pet evolua, coloque os dois parâmetros como false. E para criar novas magias, é só seguir o mesmo modelo das duas magias padrão dentro de pet-spells.lua. Demonstração Este sistema está no Github sob a licença Gnu GPL v3. Você pode baixar os scripts aqui. Abraços.1 ponto -
Olá galera. Hoje eu irei explicar como colocar outfits em seu ot u.u Entre na pasta do seuot/data/XML/ e clique com o botão direito no outfits e abra com NotePad, bloco de notas ou programas similares. O primeiro outfit que irá achar é o do Citizen. <outfit id="1"> <list gender="0" lookType="136" name="Citizen"/> <list gender="1" lookType="128" name="Citizen"/> </outfit> Adicione isso: Agora vamos a parte complexa. O que estiver nesta cor você coloca o ultimo número de outfit que tiver no teu server + 1, no meu caso o ultimo número é 24 + 1 = 25. O que estiver nesta cor você coloca o Sexo da pessoa (1 = Male (Masculino) , 0 = Female (Feminino). O que estiver nesta cor você coloca a nova outfit (newtype) da pessoa. EX: 250 (Pinguim). O que estiver nesta cor você coloca o nome da outfit male ou female. O que estiver nesta cor você coloca o Sexo da pessoa (1 = Male (Masculino) , 0 = Female (Feminino). O que estiver nesta cor você coloca a nova outfit (newtype) da pessoa. EX: 3 (War Wolf). O que estiver nesta cor você coloca o nome da outfit male ou female. Pronto! Sua outfit ficara mais ou menos assim : <outfit id="25"> <list gender="0" lookType="250" name="Pinguim"/> <list gender="1" lookType="3" name="War Wolf"/> </outfit> SS : Creditos : [GOD] Its Me Mario ( EU ) Krhiegen ( Peguei este tutorial dele, só expliquei mais um pouco. ) EXERCICIO : Criar uma nova outfit chamada Assustador = Male Assustadora = Female Com o LookType Male > 259 Com o LookType Female > 260 Postem o resultado ! Algum erro postar aqui... Atenciosamente, [GOD] Its Me Mario.1 ponto
-
Como Criar um ID de um Item Poketibia
gabrielbsales reagiu a Gabrieltxu por um tópico no fórum
Fala ai galera Eu Gabrieltxu,Nesse video venho Mostrar como criar um Item com ID Proprio Espero que Gostem se Gostou da um REP+ ai e Vlw ^^ breve mais Tutoriais Se Tiver uma Critica fala ai que na Minha Próxima Video Aula Eu Arrumo1 ponto -
Galera, estou aqui para ensinar vcs a criarem um Teleport Falante. 1º Vão a pasta Data/Globalevents e abram o globalevents.xml e adicionem essa linha Abaixo. 2° vão a pasta Data/Globalevents/Scripts criem um arquivo lua, e renomeie para teleports, apague tudo que está dentro e escreva isto: Explicação: Vermelho: É a posição do TP Verde: é oq estará escrito. Notem q do lado do nome do tp " Hydra [1], Hydra [2]... está escrito pos ou pos1... o Hydra [1] é o 1º la nas coordenadas por q dentro do parenteses está escrito Pos, se estivesse escrito pos1 seria o 2º Azul: A cor do TP Se quiserem adicionar mais tps é só copiar e colar e muda as coordenadas Comentem ;D Obs:Este Script não foi Testado se tiver algum bug Reportem Para baiak.lula@hotmail.com ou ou envie aqui para o post.1 ponto
-
E ai GENTE!! eu fiz um botão, pra um site do mario ai.. e eu qria q vcs avaliassem se ficou legal.. OBS:eles almentaram muito a imagem, e ponha o mause em cima do botão! O BOTÃO AQUI!1 ponto
-
Baiak Edited [8.60]
CainanQuit233rio reagiu a Rafu por um tópico no fórum
Olá Galera!! Vim Trazer Meu Mapa Baiak Oq mudou: Vip City Area Teleports Vip Etc. Imagens: Novo link:http://www.mediafire.com/?74tcofy6p2ybq5b ______________________________________________________________________________________________________________________________________________________________ Gostou Da Rep Custa Nada..1 ponto -
[Tutorial] Criando papel de parede com efeito - Parte 1
narutomaniacos reagiu a AlexandreKG por um tópico no fórum
Boa noite amigos do XTibia,venho em mais um tutorial de design.Vou dividir este tutorial em partes está no caso é a primeira.O objetivo do tutorial é fazer um papel de parede profissional (estilo de fumaça no fundo).Este tutorial serve para fazer possíveis fundos de sites,logotipos entre outros. Primeiro de tudo abra seu PhotoShop eu estou usando o PhotoShop CS6.Logo após crie um novo documento com as dimensões 700 x 450 de preferência.Após aberto vá na Ferramenta Degradê,conforme a imagem! Selecionando a Ferramenta Degradê,olhe la encima as novas ferramentas de opções.E selecione o ícone Radial,conforme a imagem! E depois,na caixa ao lado esquerdo selecione as cores que quer usar no seu papel de parede.No meu caso eu vou escolher azul e preto. Definições: Preto - Fundo Azul - Circulo Central No meu caso ficou exatamente assim: Na sua area de trabalho do PhotoShop,faça o tracejado da ferramenta dessa maneira.Traçando do ponto A ao ponto B.Igual mostra a figura abaixo. Após largar o mouse,ficará assim! É um resultado extremamente lindo de se ver,isso não é todo dia que acontece <risos> Duplique a camada,usando as teclas de atalho:CTRL+J! Depois selecione a camada copiada,e mude o tipo para Subexposição de Cores,conforme a imagem abaixo! Dará um novo efeito a imagem,ficando mais ou menos assim: Bom,esta parte esta finalizada. Agora,crie uma nova camada.Vá em Filtro > Acabamento > Nuvens ! OBS:As cores la embaixo tem que ser preto e branco,respectivamente. Note que dará um efeito de nuvem,após fazer isso.Selecione a camada das nuvems e mude o tipo para Sobrepor,assim como a imagem. Dará um efeito bem legal.Após fazer isso selecione a segunda camada e diminua a opacidade para 70%,para dar um retoque. Agora,é só você escrever algo no meio,e depois mudar o tipo para Sobrepor.Vou dar um exemplo de como ficou o meu. Eu gostei do resultado,espero que vocês também gostem. Links Úteis: Dicionário de Layers Parte 2:Em Breve1 ponto -
[Ajuda Técnica] Fuso Horário
vital900 reagiu a FelipeGorreri por um tópico no fórum
Bom dia XTibianos tudo bem? Então hoje eu vou postar um tutorial bem simples que vi no TibiaBR e resolvi postar aqui. Então, esse tutorial é importante para vocês que querem adquirir uma casa, participar de promoções é interessante. Então vamos lá Autores: GrYllO Revisores: Ninguém Categoria: Ajuda Técnica Conteúdo: Para vocês que usam Windows 7 ou superior, cliquem no relógio, que fica no canto superior inferior da tela. Agora clique em Alterar configurações de data e hora... E faça igual as configurações acima! Pronto, relógio configurado. E lembrando que ele muda automaticamente quando é horário de verão. Fonte: TibiaBR1 ponto -
Tutorial - Desbloquiando Portas 7171,7172 E 8090
marcos3210 reagiu a Kindred por um tópico no fórum
Blz galerinha do XTibia vim trazer mais um tutorial pra vocês espero que gostem. Este tutorial ensina como desbloquiar as portas 7171,7172 e 8090 server para deixar um ot server online e um site de account também. fiz um vídeo ensinando espero que gostem. Modem: DSL-500B VÍDEO AULA: Pronto depois disso crie seu ip no site www.no-ip.com e bote o ip do site www.meuip.com.br no config.lua do seu ot server. depois edita o xampp para 8090 e seu site e ot server esta online. <RECOMENDAÇÂO> Eu recomendo esse ot server: Tópico: [8.6] Global Full War System (CREDITO)<GicoxD> Eu Recomendo esse site: WEB SITE (ELE ESTA NO TÓPICO GLOBAL FULL... SE QUISER BAIXAR POR LA ACESSE O LINK , ACIMA DO SERVER QUE EU RECOMENDO. é isso galera, comentem e se gostarem deem REP + CRÉDITOS: Allcohol (100%) Tutorial e Vídeo.1 ponto -
1 ponto
-
1 ponto
-
TibiaHof entrou no programa de fansite
Gabriel Couto reagiu a FelipeGorreri por um tópico no fórum
Hoje dia 29/01 o TibiaHof entrou no programa de fansites do Tibia. Se vocês estão procurando um site de upload de imagem em conjunto com vários recursos da comunidade da uma olhadinha por lá. É isso galera :* Fonte: Tibia1 ponto -
[Encerrado] [Duvida] Poketibia
humberto25 reagiu a Djonga por um tópico no fórum
ok , troque tudo isso por isso: ao mudar, voce precisa mudar aqui olha: não se esqueça do rep+ ok? valeu !1 ponto -
Nossa, que preguiça de ler o script, muito bagunçado. Mas ai, só fazer assim: if #getCreatureSummons(cid) < MaximoSummon then doPlayerSendCancel(cid, "Você só pode ter no máximo 2 summons.") return true end1 ponto
-
1 ponto
-
[Encerrado] Como editar Headbutt do pda?
Kagefighter reagiu a Slicer por um tópico no fórum
eu n fiz esse tpw de verificaçao... todos os pokes com lvl maior q 15 podem dar headbutt.. oq podes fazer eh ir em actions/scripts/order.lua e achar isso.. if item2.itemid == 12591 and getPokemonLevel(mysum) >= 15 then e trocar para algu como.. local allow_head = {"Raticate", "Venusaur", "Blastoise"} if item2.itemid == 12591 and isInArray(allow_head, getCreatureName(mysum)) then1 ponto -
Primeiramente , seja bem vindo a seção =P Bom já que é a primeira sign , primeira coisa, evite de pegar imagens já prontas diminui-lá e colocar seu nome, tente começar fazer sign usando algo que se chama "Render" que é uma imagem recortada, que já vem pronta para o trabalho do designer. E Um Background que é uma imagem de fundo, tudo isso pode-se encontrar aqui na área de design na parte de recursos. No começo será um pouco complicado, claro, pois ninguém nasceu sabendo. Quando você já estiver com uma render e um background, já está pronto para "Fazer" uma sign.. Umas dicas que eu lhe dou é de sempre usar Fonts simples, fonts desses tipos são desagradáveis.. Irei montar uma lista que irá ajudar em uma boa parte no seu desempenho. Aqui é onde contém tutoriais compartilhado por membros =P http://www.xtibia.com/forum/forum/654-tutoriais-photoshop/ Aqui é onde tem Recursos =P Renders, Backgrounds, C4ds ( Para efeitos etc.) http://www.xtibia.com/forum/forum/534-recursos-para-design/ Bom vou fazer a lista agora dos melhores tutoriais e recursos Os que eu que eu recomendo que veja primeiro são esses : http://www.xtibia.com/forum/topic/203459-tutoriais-signs/ http://www.xtibia.com/forum/topic/203019-efeitos-de-curva-no-texto/ http://www.xtibia.com/forum/topic/203564-renderizando-uma-imagem/ http://www.xtibia.com/forum/topic/205829-tutorial-sign-sem-recursos/ http://www.xtibia.com/forum/topic/203144-iniciante-dicas-de-tipografia/ http://www.xtibia.com/forum/topic/203549-sign-monsters-inc/ Dai se quiser se aprofundar mais. http://www.xtibia.com/forum/topic/205442-tutorial-sign-clean-bleach/ http://www.xtibia.com/forum/topic/203119-tutorial-como-criar-sign-com-borda-modelada-iniciante-medio/ http://www.xtibia.com/forum/topic/203159-como-aplicar-c4d/ http://www.xtibia.com/forum/topic/203993-pokemon-collage-sign/1 ponto
-
Preview: 01. Pressione Ctrl+O e abra uma foto qualquer, no caso deste tutorial usaremos a foto abaixo. 02. Pressione Ctrl+J para duplicar a camada, pressione Ctrl+Shift+U para retirar a saturação da imagem, pressione Ctrl+J para duplicar a camada novamente, vá em Imagem> Ajustes> Brilho/Contraste, defina os valores de +28 para Brilho e +27 para Contraste e pressione Ok, vá em Imagem > Ajustes> Equilíbrio de cores e defina os valores abaixo. 03. Sua imagem deverá ficar como a da foto abaixo. 04. Pressione Ctrl+Shift+Alt+N para criar uma nova camada, pressione a letra D do teclado para resetar as cores de Foreground e Background para preto e branco, pressione a letra X do teclado para alternar as cores de Foreground e Background, sua cor de Foreground deve ser a branca, pressione a letra B do teclado para selecionar a Brush Tool, escolha um brush de tamanho pequeno e crie algumas linhas como na foto abaixo. 05. Diminua a opacidade da layer para 65% e mude o modo de blend para Luz Indireta, sua imagem deverá ficar como a da foto abaixo. Créditos : Tutoriaisphotoshop.1 ponto
-
Aula 2 - Listas ordenadas, listas não-ordenadas, listas de definição
DiogoTemporario reagiu a Lordfire por um tópico no fórum
Usando âncora só pra localizar pela página não precisa fechar. Nesse link tu só fez uma coisa errada, colocar o link por fora dos <dd>, link deve ficar o mais interno possível.1 ponto -
1 ponto
-
Links Úteis http://www.w3schools.com/cssref/pr_list-style.asp http://www.w3schools.com/cssref/pr_list-style-type.asp1 ponto
-
Vou mostra logo o rsultado final (Sem texto é claro) Você pode mudar isso a qlqer momento Para começar vamos criar um novo documento no Photoshop. Como a intenção é utilizar a imagem como papel de parede, escolhi o tamanho 1920 x 1200. 1 - Utilizando a Ferramenta Gradiente vamos aplicar um Gradiente Radial com as cores verde-amarelo (#ABDF41) e um verde mais escuro (#328a26). Em alguns tutoriais de Photoshop que andei lendo, aprendi que um bom tutorial sempre começa com um Gradiente Radial. (Link da textura do jornal no final do topico) Depois que abrir a textura de jornal pressione Ctrl+Shift+U. Esse passo é essencial para obtermos o resultado esperado. 3 - Defina o modo de mesclagem da camada como "Sobrepor" (Overlay). Para quem é iniciante no Photoshop essa opção está na janela de Camadas ou Layer para quem usa um versão em inglês. Depois altere o valor da Opacidade (Opacity) para 70%. Não iria colocar a imagem aqui, mas como sei que muitas vezes fica difícil de encontrar os campos mencionados ai vai. 4 - Duplique a camada, gire 180° e altere a Opacidade para 20%. Adicione outra textura de jornal sobreponha sobre as outras camadas. 5- Para finalizar duplique a camada que está com o Gradiente e coloque acima de todas as outras camadas deixando a Opacidade com 20% e o modo de mesclagem para Multiplicação. Resultado final Link pra download da textura Créditos: Mozark001 (Ideia) Brincardecriar(Tutorial)1 ponto
-
Caso não abra : http://fc08.devianta...jow-d4eloej.png Créditos : Grimmjow1 ponto
-
Sistema que da Exp Ao matar um Player
Geleia30 reagiu a rogeriomatx por uma questão
Procure essa linha no config.lua e edite a seu gosto a exp.. rateExperienceFromPlayers = 01 ponto -
[Encerrado] Como Almentar Cath do meu Serve
casulo12 reagiu a Heinekennn por um tópico no fórum
Daew manolo vai em Data/Actions/Scripts/Catch Independente do Sv Vai tar Assim local ballcatch = { [2394] = {cr = 15, on = 24, off = 23, ball = 11826, send = 47}, [2391] = {cr = 50, on = 198, off = 197, ball = 11832, send = 48}, [2393] = {cr = 75, on = 202, off = 201, ball = 11835, send = 46}, [2392] = {cr = 110, on = 200, off = 199, ball = 11829, send = 49}, } Voce Esta Olhando Essa Parte ?? {cr = 110, o "{cr = 110, representa a rate de Caught da Ultra Ball dai vc tem q editar e.e agora no pda [2392] = {cr = 60, on = 200, off = 199, ball = 11829, send = 49, typeee = "ultra"}, é a mema COisa vc tem q mudar o cr = para mais alto assim oc catch funfa vllw ae irmao se ajudei REP+! seria bom kkk1 ponto -
Vou fazer e posto aqui. @Gears ele não queria que modificasse, queria que aumentasse o tamanho. @Edit tae =P não fico identico mais acho que ficou legal kk PNG :1 ponto
-
experimenta no lugar de: doCreatureAddMana(cid, getInstantSpellInfo("Water Spin").mana) usar addEvent, assim: addEvent(doCreatureAddMana, 1, cid, getInstantSpellInfo("Water Spin").mana) porque a mana só é gasta depois do return true, então se você testar com mana full, vai gastar mana pra não permitir que use a magia caso não esteja perto dos itens, é só fazer: if not match then return false end resumindo, troca essa parte: if match then doCreatureAddMana(cid, getInstantSpellInfo("Water Spin").mana) end por essa: if match then addEvent(doCreatureAddMana, 1, cid, getInstantSpellInfo("Water Spin").mana) else doPlayerSendCancel(cid, "Alguma mensagem de erro!") return false end1 ponto
-
[Pedido] Outfit com Assas
RadioJovemTp reagiu a Plfmoura por uma questão
Oque acha desse xD! meu feinho mas já foi usado por ADMS do meu Servidor1 ponto -
Aula 1 - Tags? Cabeçalhos, parágrafos, links e imagens!
guilhermeip reagiu a Lordfire por um tópico no fórum
O HTML5 é baseado num padrão em que todas as tags devem ser minúsculas, e as tags que não são fechadas (como br, img e futuramente vou ensinar input) devem terminar com />, e o espaço antes é útil pra facilitar a leitura. Tanto faz o jeito que você escreve, mas por padrão deve ser assim.1 ponto -
Letras com Efeito de neon + Site com milhares de tutoriais
Gabriel Couto reagiu a masdead por um tópico no fórum
01. Pressione Ctrl+N para criar um novo documento, defina o tamanho em 600x350 pixels, 72 dpi´s e modo de cor em RGB, pressione Ok, pressione a letra D do teclado para resetar as cores de Foreground e Background para preto e branco, pressione Alt+Backspace (a tecla acima do Enter) ou pressione a letra G do teclado para selecionar a Paint Bucket Tool e clique no documento para preencher a layer com a cor escolhida, pressione a letra X do teclado para alternar as cores de Foreground e Background, sua cor de Foreground deve ser a branca, pressione a letra T do teclado para selecionar a Horizontal Type Tool e escreva uma palavra qualquer. 02. Vá em Layer> Layer Style> Outer Glow e defina os valores abaixo. 03. Com a tecla Ctrl pressionada clique sobre a miniatura da layer de texto para ativar a seleçao ao redor da palavra, pressione Ctrl+Shift+Alt+N para criar uma nova layer, vá em Select> Modify> Expand, defina o valor de 10 pixels e pressione Ok, escolha a cor que desejar e pressione Alt+Backspace (a tecla acima do Enter) ou pressione a letra G do teclado para selecionar a Paint bucket Tool e clique dentro da seleção para preencher com a cor escolhida. 04. Mude o modo de blend da layer para Color. 05. No final sua palavra estará como a da foto abaixo. Créditos: Tutoriais Photoshop1 ponto -
[9.80/9.81] Global Compacto - Com Nova Venore!
onofrao reagiu a ThiagoGimenes por um tópico no fórum
cara, não ta dando para editar o mapa com aquele editor que você passou, eu fiz as alterações, e continua dando pau. olha o erro: Tem alguma ideia do que possa ser? Esse erro da quando eu uso o "Open" se eu der "import", as vezes vai, mas o distro não reconhece o mapa.1 ponto -
[Tutorial] Como fazer letras de fogo no photoshop CS6
Gabriel Couto reagiu a Overpower por um tópico no fórum
Galera eu gostei para caramba desse tutorial e resolvi trazer para vocês os créditos estão lá em baixo. http://www.youtube.com/watch?v=3qam8e1IaVE Créditos: allanportilho1 ponto -
Obrigado.. Pode ser que eu fça outra versãõ;vlw.1 ponto
-
Valeu, galera. Tô fazendo o possível pra reviver o espíto scripter da área de scripting, hoje em dia aparece muito conteúdo inútil que uns ainda tem coragem de dizer que é bom por não saberem scriptear. Antigamente, cada dia apareciam sistemas ótimos e inovadores, e tá faltando isso atualmente. E Oneshot, tô precisando muito da sua ajuda com uma função nas sources. Se puder, me mande uma PM, aqui não tá dando pra te enviar. (E você conhece a família Oake e o Subwat )1 ponto
-
obrigado, hora de evoluir moçadinha! stigal is a good boy vlw? kkkkkkk' \../1 ponto
-
[Encerrado] Error
lucasdurais reagiu a Sinos por um tópico no fórum
Bom mano, tava com esse problema e concertei, fazendo o seguinte: Na aba do config.lua: sqlType = "mysql" sqlHost = "localhost" sqlPort = 3306 sqlUser = "root" sqlPass = "" sqlDatabase = "teste" sqlFile = "" sqlKeepAlive = 0 mysqlReadTimeout = 10 mysqlWriteTimeout = 10 encryptionType = "sha1" Mude o que está de vermelho para "127.0.0.1" Se ajudei dê um rep+ ai, bom jogo!1 ponto -
EAE GALERA VOU POSTAR UM SERVER QUE EU EDITEI CHAMADO EBOT ELE TEM BASTANTE RPG ALEM DE SER PRA EXP ALTA PRIMEIRO OS CREDITOS Hagar157Vortex PELO MAPA SCRIPTS E SQMS E ETC... GabrielSv EU POR EDITAR SOBRE ELE : *TFS Alissow 0.4.1. *Versão 8.60. *98% Sem Bugs. *Mapa Editado com duas cidades. *Novos monstros. Ghost Alien (loot: Alien Armor, armadura extremamente rara). Alien Alien Tentacle Bug Alien Alien Destructor Entre outros *Stages Ativados *Novos Itens *Casas *Novas Runas: -Mr -Super Mr -Ultra Mr -Mega Mr Imperia Mr (vip) OQUE TEM NELE : Super Uh Ultra Uh Mega Uh Imperia Uh (vip) *Novos Weapons *Snake System *VIP System por vip scroll *Bomb System *Chaos Bangle *Novas Spells *Eventos: Corrida Dog Event Battle PVP (Azul & Verde) Zombie Event E MUITO MAIS... SS's DO QUE EU EDITEI : TEMPLO : TELEPORT'S : TEMPLO VIP : TELEPORT'S VIP : QUEST'S VIP : AREA DE EVENTOS : DOWLOAD http://www.mediafire...395lpheuopch5yx SCAN1 ponto
-
[Encerrado] [Pokemon] Dúvidas? - Pda
Drk Shadow reagiu a Slicer por um tópico no fórum
@BLACKHERT sorry mano esqueci de um detalhe.. tenta esse aki.. actions/scripts/potions.lua Soh pode usar um potion por vez nos pokes... @lastdemon eu fiz assim... ;p lembrando q ta configurado pra 1% chance vira shiny para pokes normais.. e 0.1% pra pokes raros.. mas dai eh soh modificar como quiser... creaturescripts/scripts/spawn.lua Systema pokes virando shiny pelo "onSpawn"... @jeffe000 ja arrumei fly, surf e teu dive... soh q o RIDE vai da o demo pra arruma.. ;x -lembrando q nas minhas correçoes os pokes ficam mortos.. tirando DIVE neh.. ;p- RIDE vai da o bixo pq n tem como verificar se o player morreu ;x -pelo q intendi o brun123 mexeu em algu na source pra teleportar o player pra town quando ele morre... ;x- segue teu dive.. depois posto o meu login.lua se eu conseguir arruma todos.. ;x @all sorry se der algum problema.. eu so meio q lokin e as vezes esqueço de algum pequeno detalhe... ;p1 ponto