-
Total de itens
750 -
Registro em
-
Última visita
-
Dias Ganhos
8
Tudo que dalvorsn postou
-
A parte de lua está corretissima, só faltou a indentação. Só tem uma especificidade do tfs/opentibia que é quanto ao return aos callbacks, eles geralmente tem alguma função. No caso do onStepIn não notei nenhum, mas fique atento a outros principalmente as creature scripts
-
Tu ta viajando ... Faz o seguinte, executa isso: local newTable = {1,2,5,33} print(newTable) O que vai printar é um algo como: 'table: 0x000A3' A variavel que guarda a tabela, não guarda os seus valores, e sim um endereço de memoria, e não seus valores. E a menos que você edite atraves da função setmetatable o metametodo __eq para fazer a comparação dos elementos da tabela, ela vai compara é os endereços, pois é isso que a variavel grava para tabelas É esse espaçamento de tabulação que se dá no código, ele ajuda a definir onde iniciam e terminam os blocos, e deixa mais organizado. Joga no google para mais detalhes Bom, com oeu disse, position é uma tabela. Para acessa elementos de uma tabela você pode fazer das seguintes formas: -- atraves da função rawget que não invoca metametodos rawget(table, index) -- atraves do metametodo __index -- forma padrão: table[index] -- sintax suggar table.index Bom, como pode ver acima, ao usar p.x você acessa o index x da tabela p, e pos.x é a mesma coisa Traduzindo o if a uma definição logica, seria mais ou menos assim: "Se o index x da tabela p for igual ao index x da tabela pos e o index y da tabela p for igual ao index y da tabela pos e o index z da tabela p for igual ao index z da tabela pos então execute esse bloco:"
-
vai no em data/XML/groups.xml la fala tudo sobre a configuração de seus grupos
-
Tem alguns erros, e algumas coisas desnecessárias. mF7VUE2Z[/pastebin] Primeira coisa, identação é de suma importância, adquira esse habito. Bom, existem erros lógicos e de sintaxe. 1º erro lógico: if getCreaturePosition(cid) == pos then Positions são do tipo table, quando compara uma tabela com outra através do metametodo __eq(==) você está comparando seus endereços na memoria, e não seus valores. o correto seria: local p = getCreaturePosition(cid) if p.x == pos.x and p.y == pos.y and p.z == pos.z then 2º erro lógico: doTeleportThing(cid,tele) Lua é case-sensitivy, a variavel 'tele' não foi previamente declara, e sim 'Tele'. Lembre-se: "Lua diferencia maiusculas de minusculas" Correção: doTeleportThing(cid,Tele) 1º erro sintatico: Na linha 10 tem um else perdido, não entendi bem o que tu queria fazer else só podem ser usados dentro do bloco de um if ou elseif, e deve-se ter um end ao final do bloco desse else if true then -- bloco if elseif false then -- bloco elseif else -- bloco else end --ou if true then -- bloco if else -- bloco do else end --ou if true then --bloco do if elseif false then -- bloco do elseif end Obs.: o elseif pode ser repetido varias vezes, o if e o else não onStepIn é um move event, voce coloca em movements
-
o do pxg até tem sim, ele tem um efeito dos items e quantidade que são pegos aparecendo no topo da tela, mas da pra fazer sem isso mas acho que eles criaram um callback novo, provavelmente um onOpenContainer, não sei se da pra fazer daquela forma por onUse
-
Cara, é besteira usar outro otui, é só você fazer todos os paineis em um otui só, e ao invez de dar display, da importStyle g_ui.importStyle('otuiname') Ao fazer isso, voce pode usar a função g_ui.createWidget com os novos uis feitos no seu otui, ai é só manipular a visibilidade de cada janela, por exemplo, no meu otui tem um button: ButtonSample < Button width: 70 height: 20 anchors.bottom: parent.bottom margin-top: 10 margin-bottom: 5 Ai no script lua eu usaria assim: g_ui.importStyle('otuiname') button = g_ui.createWidget('ButtonSample', modules.game_interface.getRootPanel()) obs.: voce só precisa importar o otui uma vez no script.
-
Você com certeza tem funções correspondentes no tfs 0.3.6pl1, da uma olhada na pasta doc dele que tu acha
-
Na vapus tem com sources e tudo mais.
-
Qual versão do distro? Quanto a função de actionid, ela está aparentemente correta, pelo menos em distros 0.4 ela está presente Já em a outra, ela é customizada, mas provavelmente ela apenas checa se o itemid do parametro está dentro de um array(sendo esse uma tabela onde voce coloca todos os ids de agua)
-
[Tutorial] A arte do pontinho - Outline 1.01
tópico respondeu ao Insaend de dalvorsn em Tutoriais de Spriting
Não era uma armadura, e sim uma criatura '-'- 47 respostas
-
- insaend
- outlien item
-
(e 2 mais)
Tags:
-
faz um moveevent onstepin e coloca um if getPlayerLevel(cid) < x then, e bota um doTeleportThing pra fromprosition
-
Não, as é fácil implementar isso no proprio items.xml. Na arvore queimada bota um decayTo pra arvore nova, e no script da startdecay depois eu mostro melhor como fazer
-
• Autor: Dalvo • Versão testada: TFS 0.4_rev3884 • Descrição: O script como o próprio nome diz, é um sistema de incêndio em florestas, você da use com um item que tem a caracteristica useable no items.otb(que tem with chross hair) numa arvore que esteja configurada para queimar, ela começa a queimar e o fogo vai se alastrando para todas as arvores ao redor, numa distancia de 1sqm, e as arvores que forem sendo queimadas também alastram o fogo nas mesmas condições, até que acabem todas as arvores "coladas". Graças a um bug do tfs não ficou muito bonito o código, tive que trabalhar com posições para pegar uid, isso não foi muito legal, mas está bem funcional. O código é livre para uso de qualquer um, só peço que mantenham os créditos. Obs.: Créditos a loManoMano(deragon) pela idéia do script. System Of Fire In Forests • Crie um arquivo lua em actions, defina a tag colocando o(s) itemid(s) dos item(s) que poderão iniciar incendios), e coloque isso no arquivo lua: 7tkyCN79[/pastebin] Configuração local burningTrees = { [TreeId] = BurningTreeId, } TreeId -> Id de um item que pode ser queimado; BurningTreeId -> Id do item ao qual será o resultado do TreeId queimado; Bem, é isso, espero que gostem. No mais qualquer duvida, bugs ou sugestões postem no tópico.
-
[Tutorial] A arte do pontinho - Outline 1.01
tópico respondeu ao Insaend de dalvorsn em Tutoriais de Spriting
Tentei fazer a out do busto de um minotauro, ve se fico mais ou menos kk- 47 respostas
-
- insaend
- outlien item
-
(e 2 mais)
Tags:
-
pedido Fazer bixo desaparecer automaticamente depois de certo tempo
pergunta respondeu ao xSkyFrostx de dalvorsn em Scripts
amigo desculpa pela demora mais não pude testar a script ontem, testei hj fiz td certo e ta dando isso aki: [09/04/2013 07:50:45] data/creaturescripts/scripts/boss.lua:5: attempt to call global 'getCreatureStorage' (a nil value) [09/04/2013 07:50:45] stack traceback: [09/04/2013 07:50:45] data/creaturescripts/scripts/boss.lua:5: in function <data/creaturescripts/scripts/boss.lua:3> [09/04/2013 07:50:46] Lua Script Error: [CreatureScript Interface] [09/04/2013 07:50:46] data/creaturescripts/scripts/boss.lua:onKill [09/04/2013 07:50:46] data/creaturescripts/scripts/boss.lua:5: attempt to call global 'getCreatureStorage' (a nil value) [09/04/2013 07:50:46] stack traceback: [09/04/2013 07:50:46] data/creaturescripts/scripts/boss.lua:5: in function <data/creaturescripts/scripts/boss.lua:3> [09/04/2013 07:50:47] Lua Script Error: [CreatureScript Interface] [09/04/2013 07:50:47] data/creaturescripts/scripts/boss.lua:onKill [09/04/2013 07:50:47] data/creaturescripts/scripts/boss.lua:5: attempt to call global 'getCreatureStorage' (a nil value) [09/04/2013 07:50:47] stack traceback: [09/04/2013 07:50:47] data/creaturescripts/scripts/boss.lua:5: in function <data/creaturescripts/scripts/boss.lua:3> comecei a atacar o bixo da arena, dai ele me deixa com 0 de HP e buga, tipo eu não morro eu fico vivo e o bixo n me hita mais e fica dando esse erro ai :S e tentei a sua script tb mais aqui n foi o bixo continuou vivo ao passar o tempo determinado mais tb não deu erro algum '-' que distro ta usando? parece que não tem a função getCreatureStorage -
[Tutorial] A arte do pontinho - Outline 1.01
tópico respondeu ao Insaend de dalvorsn em Tutoriais de Spriting
Onde você salvou sua sprite deve ter transformado em jpg tome cuidado. sua sprite a lamina esta bem feita porem o efeito de dente vc pode fazer quando estiver pintando. A guarda esta mais o menos porem o cabo esta muito curto tente aumentar mais. Edit: Veja se fico a gosto? agora tente vc! Hmm, copyded To salvando em png normal, é que o paint que to usando é o do windows 7, é mo bosta mesmo '-' enfim, tentei fazer o que tu disse, ve se ta melhor- 47 respostas
-
- insaend
- outlien item
-
(e 2 mais)
Tags:
-
[Tutorial] A arte do pontinho - Outline 1.01
tópico respondeu ao Insaend de dalvorsn em Tutoriais de Spriting
Muito bom o tutorial. Estarei seguindos as aulas. Ps.: não ria ok?! kk Eu queria ter feito ela mais curva atrás, mas nem consegui '-'- 47 respostas
-
- insaend
- outlien item
-
(e 2 mais)
Tags:
-
pedido Fazer bixo desaparecer automaticamente depois de certo tempo
pergunta respondeu ao xSkyFrostx de dalvorsn em Scripts
Faz assim: 9ye0jm43[/pastebin] -
creatureevent [SIMPLE] Anti-attack yourself
tópico respondeu ao Skymagnum de dalvorsn em Globalevents e Spells
Tem duas falhas nesse script que vão impossibilitar que ele funcione adequadamente e que não bugue o jogo. Primeiro é que pra uma criatura usar uma creature script, ela tem que ser registrada nela. E monstro não executam login, logo eles nunca vão receber o registro como tu está fazendo. O segundo é que você não dá return true no script, logo o retorno passa a ser nil, isso causa o cancelamento do dano para todas as criaturas que usam do evento. A dica é a seguinte: use a creaturescript onCreatureApper para registrar nos monstros a onStatsChange, e apos o bloco do if do seu script, antes do end, dê return true. #edit Pensando melhor, não adianta usar onCreatureApper, o unico jeito mesmo é registrar no xml dos monstros. -
action O Genio Da Lampada By Notle
tópico respondeu ao notle2012 de dalvorsn em Actions e Talkactions
Seria interessante se fizesse o npc também, com diversas opções de pedidos. Só uma dica, dependendo da criatura que for invocada ai, ela pode ser morta, e esse addEvent da função genios ta completamente desprotegido, faz um verificação se cid é uma criatura. -
teu dev-cpp não tem packmanager não? é so procurar pela crypto++ la, baixar e instalar, isso pelo proprio dev mesmo
-
Cara as ultimas versões do tfs são compativeis com o extended opcodes do otclient, paga premmy na otland e baixa la, só vai precisar compilar, nada mais.
-
<?xml version="1.0" encoding="UTF-8"?> <groups> <group id="1" name="Player"/> <group id="2" name="Tutor" flags="16809984" customFlags="2" access="1" violationReasons="0" nameViolationFlags="0"/> <group id="3" name="Senior Tutor" flags="68736352256" customFlags="14" access="2" violationReasons="0" nameViolationFlags="0" statementViolationFlags="0" maxVips="200"/> <group id="4" name="GameMaster Tellus" flags="3808558964575" customFlags="257215" access="3" violationReasons="0" nameViolationFlags="0" statementViolationFlags="0" depotLimit="3000" maxVips="300" outfit="75"/> <group id="5" name="GameMaster Tellus" flags="3840774348794" customFlags="781823" access="4" violationReasons="0" nameViolationFlags="0" statementViolationFlags="0" depotLimit="4000" maxVips="400" outfit="266"/> <group id="6" name="Master Tellus" flags="3845069447162" customFlags="2097151" access="5" violationReasons="23" nameViolationFlags="170" statementViolationFlags="213" depotLimit="5000" maxVips="500" outfit="302"/> </groups>
-
A flag é essa: PLAYERFLAG_CANANSWERRULEVIOLATIONS = 38 O valor dela é 2^38 Vá em data/XML/groups.xml e subtraia esse valor dos groups que tem esse acesso ao rule violation, no node 'flags', porem observe que as flags não podem ser negativas.
-
As talkactions é como o carinha de cima disse, já aquele painel do ctrl + r, esse é ajustando as flags do groups.xml
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.