-
Posts
416 -
Joined
-
Last visited
-
Days Won
5
Reputation Activity
-
drakylucas got a reaction from Fiapera in [Pedido] Como criar um novo botão
cara, LUA de ot é diferente de LUA de otclient viu..
se vc tiver tipo uma action q faça isso, esquece pq nao vai funcionar..
caso contrario, se ja tem o mod pronto, pra criar o botao coloca isso em cima de function init()
local button
e dentro da function init()
button = modules.client_topmenu.addRightGameToggleButton('button', 'DEX' , 'SuaImagem.png', toggle)
e faça a função toggle abrir seu otui
(q depende do q vc usa, entao n posso mostrar corretamente)
-
drakylucas got a reaction from GM Kinagon in [Draky's Codes] - Tibia Spell Bar
Bom galera, o codigo nao está tão utilizavel (tibia contem muitas spells, e mesmo quando dividi em duas linhas, a spellbar continuou nao cabendo na minha tela)
Funciona melhor em servidores 9.50+ (só apartir do 9.50 que funciona o getVocation)
Nao recomendo utilizar do jeito que está, mas é uma excelente base para quem quer criar seus proprios códigos
Nao está tão perfeito, mas acredito que é o melhor que acharão até o final desse ano kk
Download - Clique Aqui
Extrair em Mods
Reiniciar o OTClient (reload nao funciona com esse mod)
Creditos: A maior parte meus, e um pouco o slicer que foi me ajudando por PM's em algumas duvidas...
Screenshot:
-
drakylucas got a reaction from gicu0220 in [Draky's Codes] - Tibia Spell Bar
Bom galera, o codigo nao está tão utilizavel (tibia contem muitas spells, e mesmo quando dividi em duas linhas, a spellbar continuou nao cabendo na minha tela)
Funciona melhor em servidores 9.50+ (só apartir do 9.50 que funciona o getVocation)
Nao recomendo utilizar do jeito que está, mas é uma excelente base para quem quer criar seus proprios códigos
Nao está tão perfeito, mas acredito que é o melhor que acharão até o final desse ano kk
Download - Clique Aqui
Extrair em Mods
Reiniciar o OTClient (reload nao funciona com esse mod)
Creditos: A maior parte meus, e um pouco o slicer que foi me ajudando por PM's em algumas duvidas...
Screenshot:
-
drakylucas got a reaction from Liwx in [Draky's Codes] - Tibia Spell Bar
Bom galera, o codigo nao está tão utilizavel (tibia contem muitas spells, e mesmo quando dividi em duas linhas, a spellbar continuou nao cabendo na minha tela)
Funciona melhor em servidores 9.50+ (só apartir do 9.50 que funciona o getVocation)
Nao recomendo utilizar do jeito que está, mas é uma excelente base para quem quer criar seus proprios códigos
Nao está tão perfeito, mas acredito que é o melhor que acharão até o final desse ano kk
Download - Clique Aqui
Extrair em Mods
Reiniciar o OTClient (reload nao funciona com esse mod)
Creditos: A maior parte meus, e um pouco o slicer que foi me ajudando por PM's em algumas duvidas...
Screenshot:
-
drakylucas got a reaction from verticos in [Draky's Codes] - Tibia Spell Bar
Bom galera, o codigo nao está tão utilizavel (tibia contem muitas spells, e mesmo quando dividi em duas linhas, a spellbar continuou nao cabendo na minha tela)
Funciona melhor em servidores 9.50+ (só apartir do 9.50 que funciona o getVocation)
Nao recomendo utilizar do jeito que está, mas é uma excelente base para quem quer criar seus proprios códigos
Nao está tão perfeito, mas acredito que é o melhor que acharão até o final desse ano kk
Download - Clique Aqui
Extrair em Mods
Reiniciar o OTClient (reload nao funciona com esse mod)
Creditos: A maior parte meus, e um pouco o slicer que foi me ajudando por PM's em algumas duvidas...
Screenshot:
-
drakylucas got a reaction from Survivor98130 in [Draky's Codes] - Tibia Spell Bar
Bom galera, o codigo nao está tão utilizavel (tibia contem muitas spells, e mesmo quando dividi em duas linhas, a spellbar continuou nao cabendo na minha tela)
Funciona melhor em servidores 9.50+ (só apartir do 9.50 que funciona o getVocation)
Nao recomendo utilizar do jeito que está, mas é uma excelente base para quem quer criar seus proprios códigos
Nao está tão perfeito, mas acredito que é o melhor que acharão até o final desse ano kk
Download - Clique Aqui
Extrair em Mods
Reiniciar o OTClient (reload nao funciona com esse mod)
Creditos: A maior parte meus, e um pouco o slicer que foi me ajudando por PM's em algumas duvidas...
Screenshot:
-
drakylucas got a reaction from Felipe Moraes in Saindo da "tela preta" e indo para a sua Janela em 5 minutos
pra quem realmente deseja seguir na área, tem um curso no site Udemy que eu indico e é muito bom...
Esse primeiro link é pro básico de Java, sem janelas, sem JFrame e tal
https://www.udemy.com/java-tutorial/?dtcode=lnDSMG32fc8u&siteID=d1Fh24.EiQI-kWZ7nzmoYK1F8Y3x7ee.8Q&LSNPUBID=d1Fh24*EiQI
Esse segundo link, ja é um curso pago usando a biblioteca Swing (q é uma poderosa biblioteca gráfica de Java, pra janelas)
https://www.udemy.com/java-swing-complete/
(lá pros 58 segundos do video de introdução tem a aplicação feita durante o curso, passo a passo)
(esse curso é pago, mas pra qm n tem condiçoes msm o cara até te da o curso se vc mandar um email pra ele explicando.. ou entao, tbm tem piratex na net os videos (porem sem legenda))
-
drakylucas reacted to Felipe Moraes in Saindo da "tela preta" e indo para a sua Janela em 5 minutos
Olá pessoal, boa tarde.
Sei que é muito chato programar e ver os resultados apenas naquele console preto e sem graça.
Por isso, vou ensinar pra vocês como criar uma janela em menos de 5 minutos, utilizando Java.
Primeiramente, vamos precisar de 2 classes.
Uma, será nossa Testadora, onde teremos o método main. A outra, que chamaremos de JanelaController teremos os componentes para exibir nossa janela.
Primeiramente, nossa classe Testadora ficará assim:
public class Testadora { public static void main(String args[]){ JanelaController janela = new JanelaController(); janela.abrirJanela(); } } Nada demais. Ela vai criar um objeto do tipo JanelaController, vai referencia-la como janela, e vai executar seu método chamado abrirJanela(), que veremos a seguir.
Em Java, possuimos bibliotecas nativas para a utilização de janelas. Em nosso tutorial, usaremos a biblioteca Swing. Seu caminho é "javax.swing;".
Primeira coisa, devemos importar essa biblioteca para nossa classe. Para isso, basta usar o comando import, antes da declaração da classe.
import javax.swing.*; public class JanelaController { private JFrame frame; // É o componente responsável por exibir a janea private JLabel texto; // Responsável por exibir um texto public void abrirJanela(){ // Devemos instanciar o objeto do tipo JFrame, para que possamos utiliza-lo em nossa classe. frame = new JFrame(); // Aqui, chamamos os métodos da classe do JFrame. Por exemplo: frame.setSize(400, 400); // Define o tamanho que terá nossa janela frame.setVisible(true); // Colocamos a janela como visível frame.setTitle("Minha Janela Funciona !"); // Inserimos um título para nossa janela // Você pode conferir mais métodos, dentro da própia classe JFrame. É só abri-la! // Aqui, instanciamos um objeto do tipo JLabel, e chamamos sua variável de texto. texto = new JLabel(); // Definimos também um texto para ele, através do método setText() da classe do JLabel. texto.setText("Hail Xtibia!"); // Essa parte é muito importante, pois é onde adicionamos nosso JLabel na janela. frame.add(texto); } } Perceberam o quanto é fácil ?
Se tiverem a curiosidade, podem pesquisar por mais componentes, para incrementar a janela de vocês.
Segue algumas:
JButton JCheckBox JMenu JProgressBar JTextField Entre muitos outros
Espero que tenham gostado desse rápido tutorial.
Abraços e até a próxima !
-
drakylucas got a reaction from Gabriel Netto in Draky's Show Off
Criador: Eu Draky Lucas
Sistema: distribuição de atributos e sistema de crítico (de acordo com o atributo dexterity + adicionais do set)
(ainda preciso arrumar as cores das labels e etc, mas isso vou fazendo com o tempo)
#update: http://www.xtibia.com/forum/topic/237948-drakys-show-off/?p=1676875
old:
Sistema foi feito inteiramente nas sources do servidor TFS 1.1 (que ja peguei com algumas modificações, como cast, por isso nao quis usar a do github 1,2) e em LUA + Sources do OTClient.
O char parece que está "andando" embora esteja parado porque o tibia.dat mudou recentemente, depois procurarei como resolver isso nas sources do OTClient ou usando algum dat editor.
-
drakylucas got a reaction from Gabriel Netto in Draky's Show Off
@up
Criação de characters pelo client:
Novo "design" da tela de atributos in-game:
(background da janela feito pelo Null)
-
drakylucas got a reaction from Survivor98130 in Aparecer X Y Z no minimap
em otclient-master/modules/game_minimap
altere o arquivo minimap.otui pra isso:
http://pastebin.com/Dr4RmvRL
e também altere o arquivo minimap.lua para isso:
http://pastebin.com/gf8ZDAp2
Atenção com os espaços.. copie corretamente.
de reload all e abra o minimap
PS: Nao funciona com minimap full (idk why)
-
drakylucas got a reaction from jeanflamengo in [Draky's Codes] - Tibia Spell Bar
Bom galera, o codigo nao está tão utilizavel (tibia contem muitas spells, e mesmo quando dividi em duas linhas, a spellbar continuou nao cabendo na minha tela)
Funciona melhor em servidores 9.50+ (só apartir do 9.50 que funciona o getVocation)
Nao recomendo utilizar do jeito que está, mas é uma excelente base para quem quer criar seus proprios códigos
Nao está tão perfeito, mas acredito que é o melhor que acharão até o final desse ano kk
Download - Clique Aqui
Extrair em Mods
Reiniciar o OTClient (reload nao funciona com esse mod)
Creditos: A maior parte meus, e um pouco o slicer que foi me ajudando por PM's em algumas duvidas...
Screenshot:
-
drakylucas got a reaction from kaleudd in [Mod - Sistema] Mensagens OFFLINE
Olá amiguinhos!
Peguei o sistema do Ghandi (de outro fórum, polones) e dei uma limpada nele, adaptando-o a meu gosto e agora vou posta-lo.
Créditos: Ghandi e Draky Lucas
Como funciona?
Apenas digite /msg NicknameDoPlayer, sua mensagem aqui
exemplo:
/msg Draky Lucas, iae carinha que mora logo ali, blz? saudades brother! ^^
dae o jogador Draky Lucas receberia isso:
14:34 [30.03.2013 14:30:40] Draky: iae carinha que mora logo ali,blz? saudades brother! ^^
(Draky é o nick do char que enviou a mensagem)
Instalação:
Em Mods, crie um arquivo chamado Msgoffline.xml e nele coloque isso:
Depois disso, na pasta Data/Logs crie uma pasta chamada offline_msg
Reinicie o servidor e teste! ^^
Gostou? REP+ e COMENTE!
-
drakylucas got a reaction from kaleudd in Aparecer X Y Z no minimap
em otclient-master/modules/game_minimap
altere o arquivo minimap.otui pra isso:
http://pastebin.com/Dr4RmvRL
e também altere o arquivo minimap.lua para isso:
http://pastebin.com/gf8ZDAp2
Atenção com os espaços.. copie corretamente.
de reload all e abra o minimap
PS: Nao funciona com minimap full (idk why)
-
drakylucas got a reaction from TuliohSilva in ERROR DESCONHECIDO
1º: vc ta tentando pegar a storage de um player que está offline, nesse caso o CID dele é inexistente. (isso pode estar ocorrendo em um addEvent, por exemplo, ou em um código mal feito q realmente quer tentar pegar a storage com o player offline.
2ª: o script está tentando ler uma tabela (provavelmente em um for, tipo for i,j in pairs(xx) do, porem o XX nao é uma tabela, é uma variavel boleana (true/false, 0/1)
-
drakylucas got a reaction from Marce Loko in (SoT) Script of Tales #01
concordo com o Killua, o evento é bom mas essa história está mais pra evento de mappers do que de scripters.. uma das únicas possibilidades de script é o de transformar todos em pedras.
-
drakylucas got a reaction from Administrador in Problema talkaction
Muda no login.lua
doPlayerSetVocation(cid,newvoc)
Pra doPlayerSetVocation(cid,newsvoc)
Se der esse erro de ficar sem vocação, vai em XML - > vocations e vê se as vocations ids são 5,6,7,8, caso contrário, volte na talkaction, nas primeiras linhas, mude os 5 6 7 8 pra id da sua nova vocação. Teste com um char que já tenha uma vocação normal, não com o gm.
E teste com um char que vc ainda não testou (pq se não já tem a storage, daí qlqr coisa vc tbm pode mudar a storage nos 2 arquivos, só deixar o msm número pra ambas)
-
drakylucas got a reaction from jvcasarin in Problema talkaction
Muda no login.lua
doPlayerSetVocation(cid,newvoc)
Pra doPlayerSetVocation(cid,newsvoc)
Se der esse erro de ficar sem vocação, vai em XML - > vocations e vê se as vocations ids são 5,6,7,8, caso contrário, volte na talkaction, nas primeiras linhas, mude os 5 6 7 8 pra id da sua nova vocação. Teste com um char que já tenha uma vocação normal, não com o gm.
E teste com um char que vc ainda não testou (pq se não já tem a storage, daí qlqr coisa vc tbm pode mudar a storage nos 2 arquivos, só deixar o msm número pra ambas)
-
drakylucas reacted to Administrador in Parsers
Apenas algumas ferramentas que o Codex NG reconstruiu em um interpretador Lua para obter certos valores a partir de arquivos.
Monster
local data = { ['monster'] = {'name', 'nameDescription', 'race', 'experience', 'speed', 'manacost', 'skull', 'script'}, ['health'] = {'min', 'max'}, ['look'] = { 'type', 'head', 'body', 'legs', 'feet', 'corpse', 'addons', 'typeex', 'mount'}, ['targethange'] = { 'interval', 'chance', 'speed'}, ['flag'] = {'summonable', 'attackable', 'hostile', 'illusionable', 'convinceable', 'pushable', 'canpushitems', 'canpushcreatures', 'staticattack', 'lightlevel', 'lightcolor', 'targetdistance', 'runonhealth', 'hidehealth'}, ['attack'] = {'name', 'interval', 'min', 'max', 'range', 'chance'}, ['attribute'] = {'key', 'value'}, ['defenses'] ={'armor', 'defense'}, ['element'] = {'physicalPercent', 'icePercent', 'poisonPercent', 'earthPercent', 'firePercent', 'energyPercent', 'holyPercent', 'deathPercent', 'drownPercent', 'lifedrainPercent', 'manadrainPercent'}, ['immunity'] = {'name', 'physical', 'energy', 'fire', 'poison', 'earth', 'drown', 'ice', 'holy', 'death', 'lifedrain', 'manadrain', 'paralyze', 'outfit', 'drunk', 'invisible', 'invisibility', 'bleed'}, ['voices'] = {'speed', 'interval', 'chance', 'sentence', 'yell'}, ['voice'] = {'speed', 'interval', 'chance', 'sentence', 'yell'}, ['summons'] = {'maxSummons'}, ['summon'] = {'name','interval','chance','speed'}, ['script'] = {'name'}, ['item'] = {'id','countmax','chance', 'chance1', 'subtype', 'actionId', 'text'} } local dir = 'data/monster/' local file = 'monsters.xml' for line in io.lines(dir..file) do if string.match(line, '<(%a-)%s* ') ~= nil then for lines in io.lines(dir..line:match('file="(.-)"') ) do if string.match(lines, '<(%a-)%s* ') ~= nil then local p = data[string.match(lines, '<(%a-)%s* ')] if p ~= nil then for i = 1, #p do local t = lines:match(p[i]..'="(.-)"') if t ~= nil then print(string.match(lines, '<(%a-)%s* '), p[i], t) end end end end end end end Items
local items = {} local para = { 'id', 'name', 'fromid', 'toid', 'key', 'value' } function Items() local file = 'data/items/items.xml' local k = {} for line in io.lines(file) do if string.match(line, '<(%a-)%s* ') ~= nil then local itemParam = string.match(line, '<(%a-)%s* ') if itemParam ~= nil then for type_ in line:gmatch(itemParam) do for i = 1, #para do if line:match(para[i]..'="(.-)"') then table.insert(k, para[i]..' = "'..line:match(para[i]..'="(.-)"')..'", ') end end local temp = '{'..table.concat(k) temp = temp:sub(1, #temp - 2)..'},' k = {} table.insert(items, temp) end end end end for k, v in pairs(items)do print(v) end end Items() Spells
local spells = {} local para = { 'group', 'spellid', 'name', 'words', 'lvl', 'mana', 'prem', 'range', 'needtarget', 'blockwalls', 'needweapon', 'exhaustion', 'groupcooldown', 'casterTargetOrDirection', 'aggressive', 'needlearn', 'selftarget', 'script', 'charges', 'maglv' } function parseSpells() local file = 'data/spells/spells.xml' local k = {} for line in io.lines(file) do if string.match(line, '<(%a-)%s* ') ~= nil then spellParam = string.match(line, '<(%a-)%s* ') if spellParam ~= nil then for type_ in line:gmatch(spellParam) do for i = 1, #para do if line:match(para[i]..'="(.-)"') then table.insert(k, para[i]..' = "'..line:match(para[i]..'="(.-)"')..'", ') end end local temp = '{'..table.concat(k) temp = temp:sub(1, #temp - 2)..'},' k = {} table.insert(spells, temp) end end end end for k, v in pairs(spells)do print(v) end end parseSpells() -
drakylucas reacted to Nu77 in Null's Show Off
Feito para um ATS inspirado em Naruto.
Autenticação totalmente server side, a única coisa que o Client faz é manipular o input do usuário.
Feedback's?
Postagem original: https://facebook.com/SpriteArtBrasil
-
drakylucas got a reaction from SamueLGuedes in Null's Show Off
Daora , design e programação (provavelmente)... Penso em fazer algo parecido com o meu futuro server, só não sei como comunicar direito com o servidor (enviar os pacotes e ler no servidor), dps da semana de prova na facul vou dar uma estudada melhor na comunicacao do otclient + server-side parabéns.
-
drakylucas got a reaction from Night Wolf in Sistema de Atribuição de Pontos - By Draky Lucas
Créditos: 100% Draky Lucas
O que é?
Cada level que você upa, você ganha uma quantidade de pontos configuráveis, que pode ser trocados por skills, vida e mana, porem sendo controlado o que pode ser trocado por vocação (assim. um knight, por exemplo, nao compraria ML)
PS: configurem vcs mesmos tudo na LIB
Funcionamento: Só colocar e ver oO
Video:
comandos:
/atributos
/atributos add, club
/atributos add, axe
/atributos add, sword
/atributos add, fist
/atributos add, shielding
/atributos add, distance
/atributos add, mana
/atributos add, vitality
/atributos reset
/atributos build
instalação:
em data/lib crie um arquivo chamado atributos.lua e nele adicione isso:
agora em data/talkactions/scripts crie uma pasta chamada drakylucas e nela crie um arquivo chamado atributos.lua , colocando isso nele:
agora em data/creaturescripts/scripts crie uma pasta chamada drakylucas e nela crie um arquivo chamado atributos.lua (sim, todos arquivos tem o mesmo nome.. cuidado nas pastas) e coloque isso:
agora em data/creaturescripts/scripts, abre o login.lua e coloque isso ANTES do último return true:
agora em data/talkactions/talkactions.xml coloque isso:
<talkaction words="/atributos" event="script" value="drakylucas/atributos.lua"/>
agora em data/creaturescripts/creaturescripts.xml coloque isso:
<event type="advance" name="avancarGanharPontos" event="script" value="drakylucas/atributos.lua"/>
reinicie o servidor e divirta-se.
PS: não sei se funciona com sqlite.. eu uso MYSQL como banco de dados.
Testado com TFS 0.4 Rev 3887 8.60
Por favor, nao deixem de comentar, desanima criar coisas e a cada 100 visitas, apenas um comentario.
EDIT: Arrumado bug do magiclevel! -
drakylucas got a reaction from Administrador in Draky's Show Off
Criador: Eu Draky Lucas
Sistema: distribuição de atributos e sistema de crítico (de acordo com o atributo dexterity + adicionais do set)
(ainda preciso arrumar as cores das labels e etc, mas isso vou fazendo com o tempo)
#update: http://www.xtibia.com/forum/topic/237948-drakys-show-off/?p=1676875
old:
Sistema foi feito inteiramente nas sources do servidor TFS 1.1 (que ja peguei com algumas modificações, como cast, por isso nao quis usar a do github 1,2) e em LUA + Sources do OTClient.
O char parece que está "andando" embora esteja parado porque o tibia.dat mudou recentemente, depois procurarei como resolver isso nas sources do OTClient ou usando algum dat editor.
-
drakylucas got a reaction from Mateusoo in Sistema de Atribuição de Pontos - By Draky Lucas
Créditos: 100% Draky Lucas
O que é?
Cada level que você upa, você ganha uma quantidade de pontos configuráveis, que pode ser trocados por skills, vida e mana, porem sendo controlado o que pode ser trocado por vocação (assim. um knight, por exemplo, nao compraria ML)
PS: configurem vcs mesmos tudo na LIB
Funcionamento: Só colocar e ver oO
Video:
comandos:
/atributos
/atributos add, club
/atributos add, axe
/atributos add, sword
/atributos add, fist
/atributos add, shielding
/atributos add, distance
/atributos add, mana
/atributos add, vitality
/atributos reset
/atributos build
instalação:
em data/lib crie um arquivo chamado atributos.lua e nele adicione isso:
agora em data/talkactions/scripts crie uma pasta chamada drakylucas e nela crie um arquivo chamado atributos.lua , colocando isso nele:
agora em data/creaturescripts/scripts crie uma pasta chamada drakylucas e nela crie um arquivo chamado atributos.lua (sim, todos arquivos tem o mesmo nome.. cuidado nas pastas) e coloque isso:
agora em data/creaturescripts/scripts, abre o login.lua e coloque isso ANTES do último return true:
agora em data/talkactions/talkactions.xml coloque isso:
<talkaction words="/atributos" event="script" value="drakylucas/atributos.lua"/>
agora em data/creaturescripts/creaturescripts.xml coloque isso:
<event type="advance" name="avancarGanharPontos" event="script" value="drakylucas/atributos.lua"/>
reinicie o servidor e divirta-se.
PS: não sei se funciona com sqlite.. eu uso MYSQL como banco de dados.
Testado com TFS 0.4 Rev 3887 8.60
Por favor, nao deixem de comentar, desanima criar coisas e a cada 100 visitas, apenas um comentario.
EDIT: Arrumado bug do magiclevel! -
drakylucas got a reaction from lucasromero0110 in Ajuda Doton Prision (Magic wall nao some)
pera é algo no for entao.. vou arrumar e ja edito kk
function isWalkable(pos, creature, pz, proj) if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end local creature = getTopCreature(pos) if creature.type > 0 then return false end if getTilePzInfo(pos) and not pz then return false end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end function onCastSpell(cid, var) local pos = getThingPosition(getCreatureTarget(cid)) for x = -1,1 do for y = -1,1 do posicao = {x = pos.x + x, y = pos.y + y, z = pos.z} if isWalkable(posicao) and posicao ~= {x = pos.x,y = pos.y,z = pos.z} then doCreateItem(5750,1,posicao) end end end addEvent(function() for x = -1,1 do for y = -1,1 do posicao = {x = pos.x + x, y = pos.y + y, z = pos.z} if getTileItemById(posicao, 5750).uid > 0 then doRemoveItem(getTileItemById(posicao, 5750).uid) end end end end,5*1000) return true end
teste agora
-
Recently Browsing 0 members
- No registered users viewing this page.