DuuhCarvalho 327 Postado Fevereiro 22, 2014 Share Postado Fevereiro 22, 2014 (editado) Spells, são magias , servem pra curar, atacar, e tem também tem as que dão suporte . Função : function onCastSpell(cid, var) -- função da magia. Exemplo de script : local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_BIGCLOUDS) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 5, 12) local area = createCombatArea(AREA_CROSS6X6) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Entendendo : Tipo de Spell : O que vai acontecer ao usar a spell. No caso a Spell é de attack. Então é um COMBAT_ de dano . setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) e para curar ? seria .. setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) percebesse que a unica coisa que mudou foi COMBAT_ . Efeito da magia : O efeito que sai quando você usa a magia . setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_BIGCLOUDS) Formula da magia : (aqui é onde você edita quanto vai atacar ou curar . setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 5, 12) Área da Spell : local area = createCombatArea(AREA_CROSS6X6) Para saber todas as área ou para adicionar novas áreas no seu spells . vá em DATA / SPELLS / LIB e abra o arquivo spells.lua. Nesse arquivo terá todas as áreas do seu server . Para Adicionar umas Nova área é so copiar uma já existente e coloque depois da ultima área. Agora é só mudar o nome da área e onde ela vai atingir . Ex : AREA_DUUH = { {1, 0, 0, 0, 1}, {0, 1, 0, 1, 0}, {0, 0, 3, 0, 0}, -- O 3 é Você , coloque 1 na área que a spells vai atingir. {0, 1, 0, 1, 0}, {1, 0, 0, 0, 1}, } obs: spells de healing e suporte não tem área . Função da Spell : Vai retornar oque está em local combat . function onCastSpell(cid, var) return doCombat(cid, combat, var) end Tag que vai em data / spells / spells.Xml : <instant name="Nome" words="WORD" lvl="55" mana="650" selftarget="1" prem="1" exhaustion="2000" needlearn="0" event="script" value="attack/rage of the skies.lua"> <vocation id="1"/> <vocation id="5"/> </instant> name = Nome da Magia. words = O que o Player Fala para a magia ser executada . ex : Exura Gran. level = Level necessário para usar a magia . mana = Quanto vai gastar de mana . exhaustion = tempo para executar novamente . value = NomedoArquivo.lua , se estiver detro de alguma pasta em scripts então use " \ " . Ex : healing/NomedoArquivo.lua . Vocation = Id da vocação que pode usar . Exemplo de Spell : Healing e Suporte . (Use Como Base) Healing : local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 5, 6) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Se a spell não é agressiva , ela pode ser usada em protect zone . setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) -- false ou true . TAG : <instant name="NOME" words="WORD" lvl="11" mana="70" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="healing/intense healing.lua"> <vocation id="1"/> </instant> name = Nome da Magia. words = O que o Player Fala para a magia ser executada . ex : Exura Gran. level = Level necessário para usar a magia . mana = Quanto vai gastar de mana . exhaustion = tempo para executar novamente . value = NomedoArquivo.lua , se estiver detro de alguma pasta em scripts então use " \ " . Ex : healing/NomedoArquivo.lua . Vocation = Id da vocação que pode usar . Suporte : local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_MANASHIELD) setConditionParam(condition, CONDITION_PARAM_TICKS, 200000) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Tempo que a spell demora para acabar : setConditionParam(condition, CONDITION_PARAM_TICKS, 200000) Tag : <instant name="NOME" words="WORD" lvl="14" mana="50" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/magic shield.lua"> <vocation id="1"/> </instant> name = Nome da Magia. words = O que o Player Fala para a magia ser executada . ex : Exura Gran. level = Level necessário para usar a magia . mana = Quanto vai gastar de mana . exhaustion = tempo para executar novamente . value = NomedoArquivo.lua , se estiver detro de alguma pasta em scripts então use " \ " . Ex : healing/NomedoArquivo.lua . Vocation = Id da vocação que pode usar . Efeitos : CONST_ME_DRAWBLOOD CONST_ME_LOSEENERGY CONST_ME_POFF CONST_ME_BLOCKHIT CONST_ME_EXPLOSIONAREA CONST_ME_EXPLOSIONHIT CONST_ME_FIREAREA CONST_ME_YELLOW_RINGS CONST_ME_GREEN_RINGS CONST_ME_HITAREA CONST_ME_ENERGYAREA CONST_ME_ENERGYHIT CONST_ME_MAGIC_BLUE CONST_ME_MAGIC_RED CONST_ME_MAGIC_GREEN CONST_ME_HITBYFIRE CONST_ME_HITBYPOISON CONST_ME_MORTAREA CONST_ME_SOUND_BLUE CONST_ME_SOUND_RED CONST_ME_POISONAREA CONST_ME_SOUND_YELLOW CONST_ME_SOUND_PURPLE CONST_ME_SOUND_BLUE CONST_ME_SOUND_WHITE CONST_ME_BUBBLES CONST_ME_CRAPS CONST_ME_GIFT_WRAPS CONST_ME_FIREWORK_YELLOW CONST_ME_FIREWORK_RED CONST_ME_FIREWORK_BLUE CONST_ME_STUN CONST_ME_SLEEP CONST_ME_WATERCREATURE CONST_ME_GROUNDSHAKER CONST_ME_NONE CONST_ANI_SPEAR CONST_ANI_BOLT CONST_ANI_ARROW CONST_ANI_FIRE CONST_ANI_ENERGY CONST_ANI_POISONARROW CONST_ANI_BURSTARROW CONST_ANI_THROWINGSTAR CONST_ANI_THROWINGKNIFE CONST_ANI_SMALLSTONE CONST_ANI_SUDDENDEATH CONST_ANI_LARGEROCK CONST_ANI_SNOWBALL CONST_ANI_POWERBOLT CONST_ANI_POISON CONST_ANI_INFERNALBOLT CONST_ANI_HUNTINGSPEAR CONST_ANI_ENCHANTEDSPEAR CONST_ANI_ASSASSINSTAR CONST_ANI_GREENSTAR CONST_ANI_ROYALSPEAR CONST_ANI_SNIPERARROW CONST_ANI_ONYXARROW CONST_ANI_PIERCINGBOLT CONST_ANI_WHIRLWINDSWORD CONST_ANI_WHIRLWINDAXE CONST_ANI_WHIRLWINDCLUB CONST_ANI_ENCHANTEDSPEAR CONST_ANI_WEAPONTYPE CONST_ANI_NONE COMBAT_ : COMBAT_NONE COMBAT_PHYSICALDAMAGE COMBAT_ENERGYDAMAGE COMBAT_POISONDAMAGE COMBAT_FIREDAMAGE COMBAT_UNDEFINEDDAMAGE COMBAT_LIFEDRAIN COMBAT_MANADRAIN COMBAT_HEALING COMBAT_DROWNDAMAGE CONDITION_ (condições) CONDITION_NONE CONDITION_POISON CONDITION_FIRE CONDITION_ENERGY CONDITION_LIFEDRAIN CONDITION_HASTE CONDITION_PARALYZE CONDITION_OUTFIT CONDITION_INVISIBLE CONDITION_LIGHT CONDITION_MANASHIELD CONDITION_INFIGHT CONDITION_DRUNK CONDITION_EXHAUSTED CONDITION_FOOD CONDITION_REGENERATION CONDITION_SOUL CONDITION_DROWN CONDITION_MUTED É isso pessoal Editado Março 19, 2014 por DuuhCarvalho Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/ Compartilhar em outros sites More sharing options...
AnjoCelestial 23 Postado Fevereiro 23, 2014 Share Postado Fevereiro 23, 2014 Muito bão!! Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/#findComment-1615771 Compartilhar em outros sites More sharing options...
duasrodas 5 Postado Fevereiro 24, 2014 Share Postado Fevereiro 24, 2014 Duhcarvalho,obrigado por este otimo tutorial,alias todos os seus tutoriais são muito bom,continue assim cara!! Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/#findComment-1616116 Compartilhar em outros sites More sharing options...
DuuhCarvalho 327 Postado Fevereiro 24, 2014 Autor Share Postado Fevereiro 24, 2014 (editado) Duhcarvalho,obrigado por este otimo tutorial,alias todos os seus tutoriais são muito bom,continue assim cara!! Agradeço , pretendo fazer ainda mais tutoriais pra ajudar os iniciantes . E também espero que os membros não venham só pedir e sim fazer . alguém pode fazer um script baseado no tutorial ... Editado Fevereiro 24, 2014 por DuuhCarvalho Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/#findComment-1616240 Compartilhar em outros sites More sharing options...
vital900 570 Postado Fevereiro 25, 2014 Share Postado Fevereiro 25, 2014 Tutorial aprovado, e movido. Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/#findComment-1616585 Compartilhar em outros sites More sharing options...
MersTurial 12 Postado Março 1, 2014 Share Postado Março 1, 2014 Cara gostei pra caramba, fácil de entender, e ainda deixou as varíaveis de combat e conditions, rep Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/#findComment-1617691 Compartilhar em outros sites More sharing options...
DuuhCarvalho 327 Postado Março 1, 2014 Autor Share Postado Março 1, 2014 Cara gostei pra caramba, fácil de entender, e ainda deixou as varíaveis de combat e conditions, rep Agradeço amigo, espero que te ajude ! Link para o comentário https://xtibia.com/forum/topic/229036-tutorial-b%C3%A1sico-spells/#findComment-1617703 Compartilhar em outros sites More sharing options...
Posts Recomendados