Duuhzinhow 30 Postado Março 19, 2014 Share Postado Março 19, 2014 (editado) Eae galerinha do xtibia, vim aqui hoje para ensinar uma coisa simples, mas que muitos nao sabem, e queriam aprender de uma forma bem facil. Vou ensinar á criar spells básicas de damage, de area, e alvo unico... Primeiro, irei ensinar uma de alvo unico. Vá em data/spells/scripts copie um arquivo .lua e renomeie para o que desejar: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 22) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -120.2, 1, -125.2, 1) function onCastSpell(cid, var) local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y, z=getThingPosition(getCreatureTarget(cid)).z} doSendMagicEffect(position1, 196) return doCombat(cid, combat, var) end Verde: é o tipo do dano, seja physical, fire, earth, ice, energy, lifedrain, manadrain, etc... setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 22) Vermelho: é o numero do efeito que irá até o alvo, voce pode escolher usando o comando "/x" setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -120.2, 1, -125.2, 1) Roxo: é o dano minimo, e maximo da spell. Baseado no level. doSendMagicEffect(position1, 196) Azul claro: Efeito que vai dar no target, quando o efeito "22" bater nele, voce pode escolher pelo comando "/z" E agora, vamos colocar sua spell no spells.xml: <instant name="Nome da spell" words="Nome da spell" lvl="Level necessario" mana="mana que ira gastar" aggressive="1" range="7" blockwalls="1" needtarget="1" exhaustion="1500" needlearn="0" event="script" value="Nome do arquivo.lua"> <vocation id="id da vocaçao"/> Agressive: se for para dar dano coloque "1" se nao for apra dano coloque "0" Blockwalls: se o jutsu pode atravessar paredes coloque "0", se nao atravessar coloque "1" Needtarget: se precisa estar atacando coloque "1" se nao, coloque "0" Exhaustion: Tempo de exalst, 1500 = 1,5 segundos. Bem, fazendo tudo isso certinho, sua spell estará pronta, agora vou explicar uma spell simples de area. ---------------------------------------------------------------------------------------------- Copie qualquer arquivo, e renomeie para o que desejar. Vou utilizar um script bem simples que eu criei agora, só para demonstraçao. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 214) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -93.5, 1, -106.5, 1) arr1 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end function onCastSpell(cid, var) local position1 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) return TRUE end setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) Essa parte, como expliquei na spell anterior, apenas mude o tipo de dano, á seu gosto. setCombatParam(combat1, COMBAT_PARAM_EFFECT, 214) Aqui, voce muda o efeito, que está o numero 214, voce pode modificar, vendo os numeros pelo comando "/z" setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -93.5, 1, -106.5, 1) Aqui, voce escolhe dano minimo e máximo, baseado no level. arr1 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0} } Essa seria a area da spell, os numeros: 3: local onde o player que executou a spell irá estar. (sempre no meio) 1: local onde sairá a spell, ou seja, onde ira sair o efeito, e ira dar dano. 0: nao sairá nada Agora, vamos coloca a tag da spell em spells.xml: <instant name="Nome da spell" words="Nome da spell" lvl="level necessario" needtarget="0" mana="mana que ira gastar" aggressive="1" exhaustion="1600" needlearn="0" event="script" value="Nome do arquivo.lua"> <vocation id="id da vocaçao"/> O resto ja expliquei na spell anterior. Bem galera, por enquanto é isso, muito simples né.. Estou aceitando criticas e dicas para o topico, que eu estarei editando... e, em breve farei um tutorial mais aprofundado .... Se gostou nao esqueça de deixar seu rep Editado Junho 6, 2019 por Duuhzinhow Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/ Compartilhar em outros sites More sharing options...
Naoviaja 0 Postado Março 19, 2014 Share Postado Março 19, 2014 Muito bom ! Valeu ! Agradeço ! Muito obrigado ! :3 Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/#findComment-1625724 Compartilhar em outros sites More sharing options...
Duuhzinhow 30 Postado Março 19, 2014 Autor Share Postado Março 19, 2014 Muito bom ! Valeu ! Agradeço ! Muito obrigado ! :3 ^^ de nada... Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/#findComment-1625726 Compartilhar em outros sites More sharing options...
vital900 570 Postado Março 19, 2014 Share Postado Março 19, 2014 Gostei, aprovado e movido! Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/#findComment-1625780 Compartilhar em outros sites More sharing options...
Duuhzinhow 30 Postado Abril 3, 2014 Autor Share Postado Abril 3, 2014 Gostei, aprovado e movido! Um "Gostei" Vindo de voce para mim é um grande incentivo, obrigado Vital!!! Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/#findComment-1632885 Compartilhar em outros sites More sharing options...
gumercindo26 0 Postado Abril 17, 2014 Share Postado Abril 17, 2014 2 perguntas, como eu adiciono mais efeitos do /z e /x e como eu descubro o id da vocação? Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/#findComment-1638118 Compartilhar em outros sites More sharing options...
Gr33n 0 Postado Dezembro 17, 2017 Share Postado Dezembro 17, 2017 da pra usar em poketibia mas atualizado? Link para o comentário https://xtibia.com/forum/topic/230354-tutorial-criar-spells-b%C3%A1sico-mesmo/#findComment-1725867 Compartilhar em outros sites More sharing options...
Posts Recomendados