Ir para conteúdo

Featured Replies

Postado


Nome do Script:

magia que da varios hits
Tipo do Script:

mas quero que essa magia necessite de um item para ser usada(ex:arqueiro vai dar rajada de 10 flexas tem que consumir 10 flexas, mago vai dar varios hits em area e uma magia que precisa de uma pedra poderosa.)
Versão Utilizada:

9.1
Servidor Utilizado:

Cristal Server
Nível de Experiência:

kkkkk

sei editar se explicar mas se soubece fazer nao tava pedindo=nivel idiota
Informações Extras:

e lua uma magia no resto sei mudar parametros so quero essa parte de ter que usar um item

  • Respostas 5
  • Visualizações 1.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • GiovaniRodrigo
    GiovaniRodrigo

    Spell Paladin   Spell Mage   Efeitos para Spell Efeito a Distancia   Efeito Direto no Player   Testado e está 100% funcional. Dúvidas? Me avise.   (OBS: E

  • GiovaniRodrigo
    GiovaniRodrigo

    Não consome pois não configurei para consumir, achei que só precisava do item e não removia. Vou editar, copia a magia do mage de novo.   Att. Giovani Rodrigo

Postado

Nome do Script:

magia que da varios hits

Tipo do Script:

mas quero que essa magia necessite de um item para ser usada(ex:arqueiro vai dar rajada de 10 flexas tem que consumir 10 flexas, mago vai dar varios hits em area e uma magia que precisa de uma pedra poderosa.)

Versão Utilizada:

9.1

Servidor Utilizado:

Cristal Server

Nível de Experiência:

kkkkk

sei editar se explicar mas se soubece fazer nao tava pedindo=nivel idiota

Informações Extras:

e lua uma magia no resto sei mudar parametros so quero essa parte de ter que usar um item

 

Spell Paladin

Crie um arquivo chamado spellpally.lua na pasta data/spells/scripts/attack

local cfg = {
          effectSpell = CONST_ANI_ONYXARROW,
          itemId = 7365,
          count = 1,
          countNeed = 10
}
 
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, cfg.effectSpell)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 4, 6)
 
function onCastSpell1(parameters)
          doCombat(parameters.cid, combat, parameters.var)
          doPlayerRemoveItem(parameters.cid, cfg.itemId, cfg.count)
end
 
function onCastSpell(cid, var)
          local parameters = {cid = cid, var = var}
          if getPlayerItemCount(parameters.cid, cfg.itemId) >= cfg.countNeed then
                    addEvent(onCastSpell1, 100, parameters)
                    addEvent(onCastSpell1, 300, parameters)
                    addEvent(onCastSpell1, 500, parameters)
                    addEvent(onCastSpell1, 700, parameters)
                    addEvent(onCastSpell1, 900, parameters)
                    addEvent(onCastSpell1, 1000, parameters)
                    addEvent(onCastSpell1, 1200, parameters)
                    addEvent(onCastSpell1, 1400, parameters)
                    addEvent(onCastSpell1, 1500, parameters)
                    return addEvent(onCastSpell1, 1700, parameters)
          else
                    doPlayerSendTextMessage(cid, 18, 'You need '.. cfg.countNeed ..' '.. getItemNameById(cfg.itemId) ..' to use this spell')
          end
end

 

Configurando

 

local cfg = {
          effectSpell = CONST_ANI_ONYXARROW,
          itemId = 7365,
          count = 1,
          countNeed = 10
}

effectSpell                             //Efeito do spell

itemId                                    //Item que vai exigir e sumir quando soltar a spell

count                                     //Quantidade de item que irá sumir quando soltar a spell

countNeed                            //Quantidade de item que irá pedir para soltar a spell (no caso a spell vai dar 10 hits então o valor será 10)

 

Adicione a seguinte linha no arquivo spells.xml que se encontra na pasta data/spells

 

<instant name="Divine Arrow" words="exevo mas arrow" lvl="30" mana="40" prem="0" range="7" needtarget="1" exhaustion="4000" groups="1,2000" icon="57" blockwalls="1" needlearn="0" event="script" value="attack/spellpally.lua">
          <vocation id="3"/>
          <vocation id="7"/> 
</instant>

 

Spell Mage

Crie um arquivo chamado spellmage.lua na pasta data/spells/scripts/attack e cole isso

 

 
local cfg = {
          effectSpell1 = CONST_ME_BIGCLOUDS,
          effectSpell2 = CONST_ME_SMALLPLANTS,
          effectSpell3 = CONST_ME_ICETORNADO,
          item = 2260
          count = 1
}
 
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, cfg.effectSpell1)
setAttackFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 4, 8)
local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, cfg.effectSpell2)
setAttackFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 5, 10)
local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatParam(combat3, COMBAT_PARAM_EFFECT, cfg.effectSpell3)
setAttackFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 6, 12)
 
local area1 = createCombatArea(AREA_SQUARE1X1)
setCombatArea(combat1, area1)
local area2 = createCombatArea(AREA_CIRCLE3X3)
setCombatArea(combat2, area2)
local area3 = createCombatArea(AREA_CROSS5X5)
setCombatArea(combat3, area3)
 
function onCastSpell1(parameters)
          doCombat(parameters.cid, combat1, parameters.var)
end
function onCastSpell2(parameters)
          doCombat(parameters.cid, combat2, parameters.var)
end
function onCastSpell3(parameters)
          doCombat(parameters.cid, combat3, parameters.var)
end
 
function onCastSpell(cid, var)
          local parameters = {cid = cid, var = var}
          if getPlayerItemCount(cid, cfg.item) >= cfg.count then
                    doPlayerRemoveItem(parameters.cid, cfg.item, cfg.count)
                    addEvent(onCastSpell1, 100, parameters)
                    addEvent(onCastSpell2, 600, parameters)
                    return addEvent(onCastSpell3, 1100, parameters)
          else
                    doPlayerSendTextMessage(cid, 18, 'You need '.. cfg.count ..' '.. getItemNameById(cfg.item) ..'.')
          end
end

 

Configurando

 

local cfg = {
          effectSpell1 = CONST_ME_BIGCLOUDS,
          effectSpell2 = CONST_ME_SMALLPLANTS,
          effectSpell3 = CONST_ME_ICETORNADO,
          item = 2260
}

effectSpell                             //Efeito do spell

item                                       //Item necessário para usar a spell

count                                     //Quantidade que irá consumir

 

No arquivo spells.xml que se encontra na pasta data/spells adicione essa linha

 

<instant name="Combo Max" words="exevo mas combo" lvl="90" mana="1500" prem="0" selftarget="1" exhaustion="8000" groups="4,4000" icon="118" needlearn="0" event="script" value="attack/spellmage.lua">
          <vocation id="1"/>
          <vocation id="2"/>
          <vocation id="5"/>
          <vocation id="6"/>
</instant>

 

Efeitos para Spell

Efeito a Distancia

SPEAR = 0

BOLT = 1

ARROW = 2

FIRE = 3

ENERGY = 4

POISONARROW = 5

BURSTARROW = 6

THROWINGSTAR = 7

THROWINGKNIFE = 8

SMALLSTONE = 9

DEATH = 10

LARGEROCK = 11

SNOWBALL = 12

POWERBOLT = 13

POISON = 14

INFERNALBOLT = 15

HUNTINGSPEAR = 16

ENCHANTEDSPEAR = 17

REDSTAR = 18

GREENSTAR = 19

ROYALSPEAR = 20

SNIPERARROW = 21

ONYXARROW = 22

PIERCINGBOLT = 23

WHIRLWINDSWORD = 24

WHIRLWINDAXE = 25

WHIRLWINDCLUB = 26

ETHEREALSPEAR = 27

ICE = 28

EARTH = 29

HOLY = 30

SUDDENDEATH = 31

FLASHARROW = 32

FLAMMINGARROW = 33

SHIVERARROW = 34

ENERGYBALL = 35

SMALLICE = 36

SMALLHOLY = 37

SMALLEARTH = 38

EARTHARROW = 39

EXPLOSION = 40

CAKE = 41

AWEAPONTYPE = 254

 

Efeito Direto no Player

DRAWBLOOD = 0

LOSEENERGY = 1

POFF = 2

BLOCKHIT = 3

EXPLOSIONAREA = 4

EXPLOSIONHIT = 5

FIREAREA = 6

YELLOW_RINGS = 7

GREEN_RINGS = 8

HITAREA = 9

TELEPORT = 10

ENERGYHIT = 11

MAGIC_BLUE = 12

MAGIC_RED = 13

MAGIC_GREEN = 14

HITBYFIRE = 15

HITBYPOISON = 16

MORTAREA = 17

SOUND_GREEN = 18

SOUND_RED = 19

POISONAREA = 20

SOUND_YELLOW = 21

SOUND_PURPLE = 22

SOUND_BLUE = 23

SOUND_WHITE = 24

BUBBLES = 25

CRAPS = 26

GIFT_WRAPS = 27

FIREWORK_YELLOW = 28

FIREWORK_RED = 29

FIREWORK_BLUE = 30

STUN = 31

SLEEP = 32

WATERCREATURE = 33

GROUNDSHAKER = 34

HEARTS = 35

FIREATTACK = 36

ENERGYAREA = 37

SMALLCLOUDS = 38

HOLYDAMAGE = 39

BIGCLOUDS = 40

ICEAREA = 41

ICETORNADO = 42

ICEATTACK = 43

STONES = 44

SMALLPLANTS = 45

CARNIPHILA = 46

PURPLEENERGY = 47

YELLOWENERGY = 48

HOLYAREA = 49

BIGPLANTS = 50

CAKE = 51

GIANTICE = 52

WATERSPLASH = 53

PLANTATTACK = 54

TUTORIALARROW = 55

TUTORIALSQUARE = 56

MIRRORHORIZONTAL = 57

MIRRORVERTICAL = 58

SKULLHORIZONTAL = 59

SKULLVERTICAL = 60

ASSASSIN = 61

STEPSHORIZONTAL = 62

BLOODYSTEPS = 63

STEPSVERTICAL = 64

YALAHARIGHOST = 65

BATS = 66

 

Testado e está 100% funcional.

Dúvidas? Me avise.

 

(OBS: Estou criando a spell do mage, daqui a pouco eu posto)

 

Att.

Giovani Rodrigo

Editado por GiovaniRodrigo (veja o histórico de edições)

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo