First go to data/monsters and make files:
Skandian.xml
Skandian Skirl.xml
Skandian Jarl.xml
Oberjarl Ragnak.xml
Oberjarl Erak.xml
Into monsters.xml paste:
Now go to data/spells/scripts and make file Skandian.lua and paste:
Into spells.xml paste:
Sorry for my mistake.
Into data/spells/lib search spells.lua and paste:
And paste:Skandian.xml
Skandian Skirl.xml
Skandian Jarl.xml
Oberjarl Ragnak.xml
Oberjarl Erak.xml
Skandian.xml
Skandian Skirl.xml
Skandian Jarl.xml
Oberjarl Ragnak.xml
Oberjarl Erak.xml
Into monsters.xml paste:
PHP:
<monster name="skandian" file="skandian.xml"/>
<monster name="skandian skirl" file="skandian skirl.xml"/>
<monster name="skandian jarl" file="skandian jarl.xml"/>
<monster name="oberjarl ragnak" file="oberjarl ragnak.xml"/>
<monster name="oberjarl erak" file="oberjarl erak.xml"/>
Now go to data/spells/scripts and make file Skandian.lua and paste:
PHP:
function onTargetTile1(cid, pos)
local getPos = pos
getPos.stackpos = STACKPOS_TOP_CREATURE
local creatureFound = getThingFromPos(getPos)
if creatureFound.uid > 0 and (isInArray({"skandian","skandian skirl","skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(creatureFound.uid)) == false) and creatureFound.uid ~= cid then
doTargetCombatHealth(cid, creatureFound.uid, COMBAT_PHYSICALDAMAGE, -100, -150, CONST_ME_GROUNDSHAKER)
end
return true
end
function onTargetTile2(cid, pos)
local getPos = pos
getPos.stackpos = STACKPOS_TOP_CREATURE
local creatureFound = getThingFromPos(getPos)
if creatureFound.uid > 0 and (isInArray({"skandian","skandian skirl","skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(creatureFound.uid)) == false) and creatureFound.uid ~= cid then
doTargetCombatHealth(cid, creatureFound.uid, COMBAT_PHYSICALDAMAGE, -150, -200, CONST_ME_GROUNDSHAKER)
end
return true
end
function onTargetTile3(cid, pos)
local getPos = pos
getPos.stackpos = STACKPOS_TOP_CREATURE
local creatureFound = getThingFromPos(getPos)
if creatureFound.uid > 0 and (isInArray({"skandian","skandian skirl","skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(creatureFound.uid)) == false) and creatureFound.uid ~= cid then
doTargetCombatHealth(cid, creatureFound.uid, COMBAT_PHYSICALDAMAGE, -250, -300, CONST_ME_GROUNDSHAKER)
end
return true
end
function onTargetTile4(cid, pos)
local getPos = pos
getPos.stackpos = STACKPOS_TOP_CREATURE
local creatureFound = getThingFromPos(getPos)
if creatureFound.uid > 0 and isInArray({"skandian","skandian skirl","skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(creatureFound.uid)) == false and creatureFound.uid ~= cid then
doTargetCombatHealth(cid, creatureFound.uid, COMBAT_PHYSICALDAMAGE, -350, -400, CONST_ME_GROUNDSHAKER)
end
return true
end
local area1, combat1 = createCombatArea(AREA_CROSS1X1), createCombatObject()
setCombatArea(combat1, area1)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_GROUNDSHAKER)
setCombatCallback(combat1, CALLBACK_PARAM_TARGETTILE, "onTargetTile1")
local area2, combat2 = createCombatArea(AREA_PLAUGE_1), createCombatObject()
setCombatArea(combat2, area2)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_GROUNDSHAKER)
setCombatCallback(combat2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")
local area3, combat3 = createCombatArea(AREA_PLAUGE_2), createCombatObject()
setCombatArea(combat3, area3)
setCombatParam(combat3, COMBAT_PARAM_EFFECT, CONST_ME_GROUNDSHAKER)
setCombatCallback(combat3, CALLBACK_PARAM_TARGETTILE, "onTargetTile3")
local area4, combat4 = createCombatArea(AREA_PLAUGE_3), createCombatObject()
setCombatArea(combat4, area4)
setCombatParam(combat4, COMBAT_PARAM_EFFECT, CONST_ME_GROUNDSHAKER)
setCombatCallback(combat4, CALLBACK_PARAM_TARGETTILE, "onTargetTile4")
local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end
local function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.combat2, parameters.var)
end
local function onCastSpell3(parameters)
doCombat(parameters.cid, parameters.combat3, parameters.var)
end
local function onCastSpell4(parameters)
doCombat(parameters.cid, parameters.combat4, parameters.var)
end
function onCastSpell(cid, var)
local parameters = {cid=cid,var=var,combat1=combat1,combat2=combat2,combat3=combat3,combat4=combat4}
if isInArray({"skandian skirl","skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(cid)) then
addEvent(onCastSpell1, 0, parameters)
if isInArray({"skandian skirl","skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(cid)) then
addEvent(onCastSpell2, 200, parameters)
if isInArray({"skandian jarl","oberjarl erak","oberjarl ragnak"}, getCreatureName(cid)) then
addEvent(onCastSpell3, 400, parameters)
if isInArray({"oberjarl erak","oberjarl ragnak"}, getCreatureName(cid)) then
addEvent(onCastSpell4, 600, parameters)
end
end
end
end
return true
end
PHP:
<instant name="Skandian" words="Skandian" mana="10000" selftarget="1" event="script" value="Skandian.lua"/>
Sorry for my mistake.
Into data/spells/lib search spells.lua and paste:
PHP:
AREA_PLAUGE_1 = {
{0, 0, 1, 0, 0},
{0, 1, 0, 1, 0},
{1, 0, 3, 0, 1},
{0, 1, 0, 1, 0},
{0, 0, 1, 0, 0}
}
AREA_PLAUGE_2 = {
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 0, 1, 0},
{1, 0, 0, 3, 0, 0, 1},
{0, 1, 0, 0, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0}
}
AREA_PLAUGE_3 = {
{0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 1, 0, 0},
{0, 1, 0, 0, 0, 0, 0, 1, 0},
{1, 0, 0, 0, 3, 0, 0, 0, 1},
{0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 1, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0}
}
Last edited: