Index: Absorbing_Kiss.lua =================================================================== --- Absorbing_Kiss.lua (revision 0) +++ Absorbing_Kiss.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Absorbing Kiss +-- +-- Description: Randomly steals an enemy's attributes. +-- Type: Magical +-- Utsusemi/Blink absorb: Ignores shadows +-- Range: Melee +-- Notes: Only used by Pepper and Bloodguzzler. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Anti_Gravity.lua =================================================================== --- Anti_Gravity.lua (revision 0) +++ Anti_Gravity.lua (working copy) @@ -0,0 +1,32 @@ +--------------------------------------------------- +-- Anti Gravity +-- For single gear mobs +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_BIND; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,60);--power=1;tic=0;duration=60; + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 4,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Anti_Gravity2.lua =================================================================== --- Anti_Gravity2.lua (revision 0) +++ Anti_Gravity2.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------------- +-- Anti Gravity +-- For Gear clusters +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_BIND; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,1,0,30);--power=1;tic=0;duration=30; + end + local dmgmod = 3; + local accmod = 50; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Aqua_Fortis.lua =================================================================== --- Aqua_Fortis.lua (revision 0) +++ Aqua_Fortis.lua (working copy) @@ -0,0 +1,51 @@ +--------------------------------------------------- +-- Queasyshroom +-- Additional effect: Poison. Duration of effect varies with TP. +-- Range is 13.5 yalms. +-- Piercing damage Ranged Attack. +-- Secondary modifiers: INT: 20%. +-- Additional Effect: Poison is 3 HP/tick. +-- Poison effect may not always process. +-- Removes all Shadow Images on the target. +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_POISON; + local poisontime = 180; + if(target:hasStatusEffect(typeEffect) == false) then + local accrand = math.random(1,2); + if(accrand == 1) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,3); + if(resist > 0.5) then + local mobTP = mob:getTP(); + if(mobTP <= 100) then + local poisontime = 60; + elseif(mobTP <= 200) then + local poisontime = 120; + else + local poisontime = 180; + end + target:addStatusEffect(typeEffect,1,3,poisontime); + end + end + end + + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_DMG_VARIES,1,2,3); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WATER,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Artificial_Gravity.lua =================================================================== --- Artificial_Gravity.lua (revision 0) +++ Artificial_Gravity.lua (working copy) @@ -0,0 +1,33 @@ +--------------------------------------------------- +-- Artificial Gravity +-- For Single Gear mobs +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_WEIGHT; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,4); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,30,0,180); + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 4,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; + Index: Artificial_Gravity2.lua =================================================================== --- Artificial_Gravity2.lua (revision 0) +++ Artificial_Gravity2.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------------- +-- Artificial Gravity +-- For Gears mobs (3 gear cluster) +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_WEIGHT; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,40,0,120);--power=40;tic=0;duration=120; + end + local dmgmod = 3; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; + Index: Atomic_Ray.lua =================================================================== --- Atomic_Ray.lua (revision 0) +++ Atomic_Ray.lua (working copy) @@ -0,0 +1,24 @@ +--------------------------------------------------- +-- Atomic Ray +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 30; + local dmgmod = 2; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Auroral_Wind.lua =================================================================== --- Auroral_Wind.lua (revision 0) +++ Auroral_Wind.lua (working copy) @@ -0,0 +1,32 @@ +--------------------------------------------------- +-- Auroral Wind +-- Deals Wind damage to enemies within a fan-shaped area originating from the caster. Additional effect: Silence. +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_SILENCE; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,4); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,30,0,60); -- Not sure if it works correctly + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Autumn_Breeze.lua =================================================================== --- Autumn_Breeze.lua (revision 0) +++ Autumn_Breeze.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------- +-- Healing Breeze +-- +-- Description: Restores HP for party members within area of effect. +-- Type: Magical (Wind) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local m = math.random(1,4)+6; + local base = (mob:getMaxHP()/100)* m; + local mobHP = mob:getHP(); + local mobMaxHP = mob:getMaxHP(); + if(mobHP+base > mobMaxHP) then + base = mobMaxHP - mobHP; --cap it + end + skill:setMsg(MSG_SELF_HEAL); + mob:addHP(base); + return base; +end; Index: Backlash_Tail.lua =================================================================== --- Backlash_Tail.lua (revision 0) +++ Backlash_Tail.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Barofield.lua =================================================================== --- Barofield.lua (revision 0) +++ Barofield.lua (working copy) @@ -0,0 +1,31 @@ +--------------------------------------------------- +-- Barofield +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_WEIGHT; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,4); + if(resist > 0.1) then + target:addStatusEffect(typeEffect,20,0,180); + end + end + + local dmgmod = 3; + local accmod = 30; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Bionic_Boost.lua =================================================================== --- Bionic_Boost.lua (revision 0) +++ Bionic_Boost.lua (working copy) @@ -0,0 +1,39 @@ +--------------------------------------------- +-- Feather Barrier +-- +-- Description: Enhances evasion. +-- Type: Magical (Wind) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + + +function OnMobWeaponSkill(target, mob, skill) + + + local message = MSG_MISS; + local typeEffect = EFFECT_NAME; -- Add effect name here + + if(target:hasStatusEffect(typeEffect) == false) then + local accrand = math.random(1,2); + if(accrand == 1) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + message = MSG_ENFEEB_IS; + target:addStatusEffect(typeEffect,1,0,60); -- Please set power,tic and duration. Defaults power = 1, tic = 0 duration = 60 + end + end + else + message = MSG_NO_EFFECT; + end + skill:setMsg(message); + return typeEffect; +end; \ No newline at end of file Index: Biotic_Boomerang.lua =================================================================== --- Biotic_Boomerang.lua (revision 0) +++ Biotic_Boomerang.lua (working copy) @@ -0,0 +1,35 @@ +--------------------------------------------- +-- Biotic Boomerang +-- +-- Description: AoE Plague, absorbed by 2 Shadow Images +-- Type: Physical (Slashing) +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PLAGUE; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,8); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,300);--power=1;tic=0;duration=300; + end + end + + local numhits = 2; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_DMG_VARIES,1,2,3); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_SLASH,info.hitslanded); + target:delHP(dmg); + return dmg; +end; Index: blind_ii.lua =================================================================== --- blind_ii.lua (revision 0) +++ blind_ii.lua (working copy) @@ -0,0 +1,68 @@ +----------------------------------------- +-- Spell: Blind_II +-- Spell accuracy is most highly affected by Enfeebling Magic Skill, Magic Accuracy, and INT. +-- Accuracy down is calculated with the formula (Caster_INT - Target_MND + 100) / 4, +----------------------------------------- + +require("scripts/globals/status"); +require("scripts/globals/magic"); + +----------------------------------------- +-- OnSpellCast +----------------------------------------- + +function onSpellCast(caster,target,spell) + + -- Pull base stats. + dINT = (caster:getStat(MOD_INT) - target:getStat(MOD_INT)); + bonus = AffinityBonus(caster,spell); + + -- Base power. May need more research. + power = math.floor((dINT + 100) / 4); + if(power < 10) then + power = 10; + end + + -- Duration, including resistance. Unconfirmed. + duration = 220 * applyResistance(caster,spell,target,dINT,35,bonus); + + if(100 * math.random() >= target:getMod(MOD_BLINDRES)) then + if(duration >= 110) then --Do it! + -- Try to erase a weaker blind. + blind = target:getStatusEffect(EFFECT_BLINDNESS) + if(blind ~= nil) then + if(blind:getPower() < power) then + target:delStatusEffect(EFFECT_BLINDNESS); + target:addStatusEffect(EFFECT_BLINDNESS,power,0,duration); +-- if(spell:isAOE() == false) then +-- spell:setMsg(237); +-- else + spell:setMsg(267); +-- end + else + spell:setMsg(75); + end + else + target:addStatusEffect(EFFECT_BLINDNESS,power,0,duration); +-- if(spell:isAOE() == false) then +-- spell:setMsg(237); +-- else + spell:setMsg(267); +-- end + end + else +-- if(spell:isAOE() == false) then +-- spell:setMsg(85); +-- else + spell:setMsg(284); +-- end + end + else +-- if(spell:isAOE() == false) then +-- spell:setMsg(85); +-- else + spell:setMsg(284); +-- end + end + return EFFECT_BLINDNESS; +end; \ No newline at end of file Index: Blind_Vortex.lua =================================================================== --- Blind_Vortex.lua (revision 0) +++ Blind_Vortex.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------- +-- Blind Vortex +-- +-- Description: Sends a blinding storm at a single target. +-- Type: Magical +-- Utsusemi/Blink absorb: 1 shadow +-- Range: Melee +-- Notes: +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WATER,MOBPARAM_1_SHADOW); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Calcifiying_Mist.lua =================================================================== --- Calcifiying_Mist.lua (revision 0) +++ Calcifiying_Mist.lua (working copy) @@ -0,0 +1,35 @@ +--------------------------------------------- +-- Baleful Gaze +-- Description: Petrifies opponents with a gaze attack. +-- Type: Gaze +-- Utsusemi/Blink absorb: Ignores shadows +-- Range: Single gaze +-- Notes: Nightmare Cockatrice extends this to a fan-shaped AOE. +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PETRIFICATION; + if(target:hasStatusEffect(typeEffect) == false and target:isFacing(mob)) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,2); + if(resist > 0.5) then + skill:setMsg(MSG_ENFEEB_IS); + target:addStatusEffect(typeEffect,1,0,180);--power=1;tic=0;duration=180; + else + skill:setMsg(MSG_MISS); -- resist ! + end + else + skill:setMsg(MSG_NO_EFFECT); -- no effect + end + return typeEffect; +end; Index: Cataclysmic_Vortex.lua =================================================================== --- Cataclysmic_Vortex.lua (revision 0) +++ Cataclysmic_Vortex.lua (working copy) @@ -0,0 +1,24 @@ +--------------------------------------------------- +-- Cataclysmic Vortex +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(1000); + return 1000; +end; \ No newline at end of file Index: Cosmic_Breath.lua =================================================================== --- Cosmic_Breath.lua (revision 0) +++ Cosmic_Breath.lua (working copy) @@ -0,0 +1,32 @@ +--------------------------------------------------- +-- Cosmic Breath +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_ATTACK_DOWN; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,40,0,60);--power=40;tic=0;duration=60; + end + local typeEffect = EFFECT_PLAGUE; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,5,3,60);--power=5;tic=3;duration=60; + end + local numhits = 1; + local accmod = 50; + local dmgmod = 2; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_EARTH,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Counterspore.lua =================================================================== --- Counterspore.lua (revision 0) +++ Counterspore.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Crystaline_Cocoon.lua =================================================================== --- Crystaline_Cocoon.lua (revision 0) +++ Crystaline_Cocoon.lua (working copy) @@ -0,0 +1,36 @@ +--------------------------------------------- +-- Crystaline Cocoon +-- Shell and Protect. +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + SpawnMob(16912877):updateEnmity(target); --Respawn a Wyvern + currenthp = mob:getHP(); + currentmaxhp = mob:getMaxHP(); + + if (currenthp / currentmaxhp) < .11 then --If AV's HP is Less than 11%... + SpawnMob(16912878):updateEnmity(target); --Spawn a 2nd wyvern. + end + + + local typeEffect = EFFECT_SHELL; + skill:setMsg(MSG_BUFF); + mob:delStatusEffect(typeEffect); + mob:addStatusEffect(typeEffect,-128,0,60);--power=-128;tic=0;duration=60; + + skill:setMsg(MSG_BUFF); + local typeEffect = EFFECT_PROTECT; + mob:delStatusEffect(typeEffect); + mob:addStatusEffect(typeEffect,50,0,30); -- 50% + return typeEffect; +end; \ No newline at end of file Index: Darkmatter.lua =================================================================== --- Darkmatter.lua (revision 0) +++ Darkmatter.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------------- +-- Darkmatter +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_TERROR; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,1,0,45);--power=1;tic=0;duration=45; + end + local numhits = 1; + local accmod = 30; + local dmgmod = 2; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_DARK,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Decollation.lua =================================================================== --- Decollation.lua (revision 0) +++ Decollation.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Deep_Kiss.lua =================================================================== --- Deep_Kiss.lua (revision 0) +++ Deep_Kiss.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------- +-- Deep Kiss +-- +-- Description: Steals an enemy's status effect. +-- Type: Magical +-- Utsusemi/Blink absorb: Ignores shadows +-- Range: Melee +-- Notes: Only used by Phoedme. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Depuration.lua =================================================================== --- Depuration.lua (revision 0) +++ Depuration.lua (working copy) @@ -0,0 +1,19 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; + Index: Dire_Whorl.lua =================================================================== --- Dire_Whorl.lua (revision 0) +++ Dire_Whorl.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Dire Whorl +-- +-- Description: Spins around, damaging targets in an area of effect. +-- Type: Physical +-- Utsusemi/Blink absorb: Unknown +-- Range: Unknown radial +-- Notes: Used only by King Goldemar's merchandise. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Discharge.lua =================================================================== --- Discharge.lua (revision 0) +++ Discharge.lua (working copy) @@ -0,0 +1,25 @@ +--------------------------------------------------- +-- Discharge +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PARALYSIS; + target:addStatusEffect(typeEffect,65,0,30);--power=55;tic=0;duration=30; + local dmgmod = 2; + local accmod = 10; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_THUNDER,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; + +end \ No newline at end of file Index: Discoid.lua =================================================================== --- Discoid.lua (revision 0) +++ Discoid.lua (working copy) @@ -0,0 +1,23 @@ +--------------------------------------------------- +-- Discoid +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,info.hitslanded); + target:delHP(500); + return 500; +end; \ No newline at end of file Index: Dread_Storm.lua =================================================================== --- Dread_Storm.lua (revision 0) +++ Dread_Storm.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------------- +-- DreadStorm +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_STUN; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,1,0,10);--power=1;tic=0;duration=10; + end + local dmgmod = 2; + local accmod = 10; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_THUNDER,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Earthshock.lua =================================================================== --- Earthshock.lua (revision 0) +++ Earthshock.lua (working copy) @@ -0,0 +1,35 @@ +--------------------------------------------- +-- Earthshock +-- Creates a seismic wave to damage targets in an area of effect. Additional effect: Stun +-- Type: Physical +-- Utsusemi/Blink absorb: 2-3 shadows +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_STUN; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,6); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,7);--power=1;tic=0;duration=7; + end + end + + local numhits = 1; + local accmod = 2; + local dmgmod = 3; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_DMG_VARIES,1,2,3); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,MOBPARAM_3_SHADOW); + target:delHP(dmg); + return dmg; +end; Index: Empty_Beleaguer.lua =================================================================== --- Empty_Beleaguer.lua (revision 0) +++ Empty_Beleaguer.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Empty Beleaguer +-- +-- Description: Erratically darts around, dealing damage to nearby targets. +-- Type: Physical +-- Utsusemi/Blink absorb: 2-3 shadows +-- Range: Unknown radial +-- Notes: +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Eternal_Damnation.lua =================================================================== --- Eternal_Damnation.lua (revision 0) +++ Eternal_Damnation.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Flame_Breath.lua =================================================================== --- Flame_Breath.lua (revision 0) +++ Flame_Breath.lua (working copy) @@ -0,0 +1,25 @@ +--------------------------------------------- +-- Flame_Breath +-- +-- Description: Deals fire damage to enemies within a fan-shaped area originating from the caster. +-- Type: Magical (Fire) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 2; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_FIRE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Flurry_of_Rage.lua =================================================================== --- Flurry_of_Rage.lua (revision 0) +++ Flurry_of_Rage.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------- +-- Wild Oats +-- +-- Description: Additional effect: Vitality Down. Duration of effect varies on TP. +-- Type: Physical (Piercing) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + numhits = 5; + accmod = 1; + dmgmod = 1; + info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_ACC_VARIES,1,2,3); + dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_PIERCE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: food_snatch.lua =================================================================== --- food_snatch.lua (revision 0) +++ food_snatch.lua (working copy) @@ -0,0 +1,22 @@ +--------------------------------------------- +-- Disseverment +-- +-- Description: Delivers a fivefold attack. Additional effect: Poison. Accuracy varies with TP. +-- Type: Physical (Piercing) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + target:delStatusEffect(EFFECT_FOOD); + +end; \ No newline at end of file Index: Fossilizing_Breath.lua =================================================================== --- Fossilizing_Breath.lua (revision 0) +++ Fossilizing_Breath.lua (working copy) @@ -0,0 +1,32 @@ +--------------------------------------------------- +-- Fossilizing Breath +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PETRIFICATION; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,2); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,60);--power=1;tic=0;duration=60; + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*4,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_EARTH,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + mob:updateEnmity(target,-300,1); + return dmg; +end; Index: Fulmination.lua =================================================================== --- Fulmination.lua (revision 0) +++ Fulmination.lua (working copy) @@ -0,0 +1,25 @@ +--------------------------------------------------- +-- Fulmination +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PARALYSIS; + target:addStatusEffect(typeEffect,55,0,30);--power=55;tic=0;duration=30; + local dmgmod = 2; + local accmod = 20; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*5,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_THUNDER,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Giga_Scream.lua =================================================================== --- Giga_Scream.lua (revision 0) +++ Giga_Scream.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Giga Scream +-- +-- Description: Delivers a threefold attack on a single target. +-- Type: Physical +-- Utsusemi/Blink absorb: 3 shadows +-- Range: Melee +-- Notes: Used by some notorious monsters in place of Triple Attack. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 3; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Gravity_Wheel.lua =================================================================== --- Gravity_Wheel.lua (revision 0) +++ Gravity_Wheel.lua (working copy) @@ -0,0 +1,37 @@ +--------------------------------------------- +-- Gravity Wheel +-- +-- Description: Deals heavy damage to players in an area of effect. Additional effect: Weight +-- Type: Physical +-- Utsusemi/Blink absorb: Yes? +-- Range: Unknown radial +-- Notes: Only used in "polearm" form. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + + local typeEffect = EFFECT_WEIGHT; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,60); -- Please set power,tic and duration. Defaults power = 1, tic = 0 duration = 60 + end + end + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Grim_Glower.lua =================================================================== --- Grim_Glower.lua (revision 0) +++ Grim_Glower.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Gust_Breath.lua =================================================================== --- Gust_Breath.lua (revision 0) +++ Gust_Breath.lua (working copy) @@ -0,0 +1,25 @@ +--------------------------------------------- +-- Gust_Breath +-- +-- Description: Deals Wind damage to enemies within a fan-shaped area originating from the caster. +-- Type: Magical (Wind) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 2; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Gyre_Charge.lua =================================================================== --- Gyre_Charge.lua (revision 0) +++ Gyre_Charge.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------------- +-- Gyre Charge +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PARALYSIS; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,45,0,60);--power=35;tic=0;duration=60; + end + local numhits = 1; + local accmod = 1; + local dmgmod = 2; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_DMG_VARIES,2,3,4); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_SLASH,MOBPARAM_1_SHADOW); + target:delHP(dmg); + return dmg; +end; Index: Heliovoid.lua =================================================================== --- Heliovoid.lua (revision 0) +++ Heliovoid.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Homing_Missle.lua =================================================================== --- Homing_Missle.lua (revision 0) +++ Homing_Missle.lua (working copy) @@ -0,0 +1,22 @@ +--------------------------------------------------- +-- Homing Missle +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 2; + local accmod = 30; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*4,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_FIRE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Hydro_Breath.lua =================================================================== --- Hydro_Breath.lua (revision 0) +++ Hydro_Breath.lua (working copy) @@ -0,0 +1,25 @@ +--------------------------------------------- +-- Hydro_Breath +-- +-- Description: Deals water damage to enemies within a fan-shaped area originating from the caster. +-- Type: Magical (Water) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 2; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WATER,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Hydroball.lua =================================================================== --- Hydroball.lua (revision 0) +++ Hydroball.lua (working copy) @@ -0,0 +1,35 @@ +--------------------------------------------- +-- Hydroball +-- Deals Water damage to targets in a fan-shaped area of effect. Additional effect: STR Down +-- Type: Breath +-- Utsusemi/Blink absorb: Ignores shadows +-- Notes: STR reduced by 15%. +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_STR_DOWN; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,3); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,40,0,180);--power=40;tic=0;duration=180; + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 5,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WATER,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Hypothermal_Combusti.lua =================================================================== --- Hypothermal_Combusti.lua (revision 0) +++ Hypothermal_Combusti.lua (working copy) @@ -0,0 +1,31 @@ +--------------------------------------------- +-- Hypothermal Combustion +-- Self-destructs, releasing ice at nearby targets. +-- Type: Magical +-- Utsusemi/Blink absorb: Ignores shadows +-- Notes: Damage is based on remaining HP +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + if(mob:getHP()~=0) then + BOMB_TOSS_HPP = mob:getHP()/mob:getMaxHP(); + end + + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*25*BOMB_TOSS_HPP,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_FIRE,MOBPARAM_IGNORE_SHADOWS); + mob:setHP(0); + target:delHP(dmg); + return dmg; +end; Index: Impact_Stream.lua =================================================================== --- Impact_Stream.lua (revision 0) +++ Impact_Stream.lua (working copy) @@ -0,0 +1,42 @@ +--------------------------------------------- +-- Impact_Stream +-- +-- Impact Stream - 10' AOE damage, Stun and Defense Down , wipes Shadow Images +-- Type: Magical +-- Utsusemi/Blink absorb: Wipes shadows +-- Range: Less than or equal to 10.0 +-- Notes: Absolute Virtue +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local duration = 180; + + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,8); + if(resist > 0.5) then + if(target:hasStatusEffect(EFFECT_STUN) == false) then + target:addStatusEffect(EFFECT_STUN,1,5,duration); + end + if(target:hasStatusEffect(EFFECT_DEFENSE_DOWN) == false) then + target:addStatusEffect(EFFECT_DEFENSE_DOWN,75,0,duration); + end + + end + + local dmgmod = 4; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_EARTH,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Lightning_Breath.lua =================================================================== --- Lightning_Breath.lua (revision 0) +++ Lightning_Breath.lua (working copy) @@ -0,0 +1,34 @@ +--------------------------------------------- +-- Lightning_Breath +-- +-- Description: Deals fire damage to enemies within a fan-shaped area originating from the caster add effect Stun +-- Type: Magical (Thunder) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_STUN; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,6); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,3);--power=1;tic=0;duration=3; + end + end + + local dmgmod = 2; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*10,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_THUNDER,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Medusa_Javelin.lua =================================================================== --- Medusa_Javelin.lua (revision 0) +++ Medusa_Javelin.lua (working copy) @@ -0,0 +1,29 @@ +--------------------------------------------- +-- Medusa_Javelin +-- +-- Description: Deals damage to a single target. Additional effect: Petrification +-- Type: Physical +-- Utsusemi/Blink absorb: 1 shadow +-- Range: Melee +-- Notes: Absolute Virtue +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PETRIFICATION; + + MobStatusEffectMove(mob, target, typeEffect, 15, 0, 120); + + local dmgmod = 2; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*4,ELE_EARTH,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_EARTH,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Microquake.lua =================================================================== --- Microquake.lua (revision 0) +++ Microquake.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Microquake +-- +-- Description: Deals heavy damage to a single target. +-- Type: Physical +-- Utsusemi/Blink absorb: Yes? +-- Range: Melee +-- Notes: Only used in "polearm" form. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Mighty_Guard.lua =================================================================== --- Mighty_Guard.lua (revision 0) +++ Mighty_Guard.lua (working copy) @@ -0,0 +1,48 @@ +--------------------------------------------------- +-- Mighty Guard +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_DEFENSE_BOOST; + if(mob:hasStatusEffect(typeEffect) == true) then + skill:setMsg(MSG_NO_EFFECT); + else + mob:addStatusEffect(typeEffect,60,0,60);--power=60;tic=0;duration=60; + skill:setMsg(MSG_BUFF); + end + local typeEffect = EFFECT_MAGIC_DEF_BOOST; + if(mob:hasStatusEffect(typeEffect) == true) then + skill:setMsg(MSG_NO_EFFECT); + else + mob:addStatusEffect(typeEffect,60,0,60);--power=60;tic=0;duration=60; + skill:setMsg(MSG_BUFF); + end + local typeEffect = EFFECT_REGAIN; + if(mob:hasStatusEffect(typeEffect) == true) then + skill:setMsg(MSG_NO_EFFECT); + else + mob:addStatusEffect(typeEffect,3,3,30);--power=3;tic=3;duration=30; + skill:setMsg(MSG_BUFF); + end + local m = math.random(1,7)+5; + local base = (mob:getMaxHP()/100)* m; + local mobHP = mob:getHP(); + local mobMaxHP = mob:getMaxHP(); + if(mobHP+base > mobMaxHP) then + base = mobMaxHP - mobHP; --cap it + end + skill:setMsg(MSG_SELF_HEAL); + mob:addHP(base); + return base; +end; Index: Mortal_Revolution.lua =================================================================== --- Mortal_Revolution.lua (revision 0) +++ Mortal_Revolution.lua (working copy) @@ -0,0 +1,31 @@ +--------------------------------------------------- +-- Mortal Revolution +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_WEIGHT; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,4); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,15,0,300);--power=1;tic=0;duration=300; + end + end + + local numhits = 1; + local accmod = 2; + local dmgmod = 2; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,MOBPARAM_3_SHADOW); + target:delHP(dmg); + return dmg; +end; Index: MP_Drainkiss. dont add.lua =================================================================== --- MP_Drainkiss. dont add.lua (revision 0) +++ MP_Drainkiss. dont add.lua (working copy) @@ -0,0 +1,40 @@ +--------------------------------------------- +-- MP Drainkiss +-- +-- Description: Steals an enemy's MP. Ineffective against undead. +-- Type: Magical (Dark) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + + +function OnMobWeaponSkill(target, mob, skill) + + + local message = MSG_MISS; + local typeEffect = EFFECT_NAME; -- Add effect name here + + if(target:hasStatusEffect(typeEffect) == false) then + local accrand = math.random(1,2); + if(accrand == 1) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + message = MSG_ENFEEB_IS; + target:addStatusEffect(typeEffect,1,0,60); -- Please set power,tic and duration. Defaults power = 1, tic = 0 duration = 60 + end + end + else + message = MSG_NO_EFFECT; + end + skill:setMsg(message); + return typeEffect; +end; \ No newline at end of file Index: Nerve_Gas.lua =================================================================== --- Nerve_Gas.lua (revision 0) +++ Nerve_Gas.lua (working copy) @@ -0,0 +1,19 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; + Index: Nocturnal_Servitude.lua =================================================================== --- Nocturnal_Servitude.lua (revision 0) +++ Nocturnal_Servitude.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; Index: Nosferatus_Kiss.lua =================================================================== --- Nosferatus_Kiss.lua (revision 0) +++ Nosferatus_Kiss.lua (working copy) @@ -0,0 +1,37 @@ +--------------------------------------------------- +-- Drainkiss +-- Deals dark damage to a single target. Additional effect: Drain +-- Type: Magical +-- Utsusemi/Blink absorb: 1 shadow +-- Range: Melee +-- Notes: If used against undead, it will simply do damage and not drain HP. +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_STR_DOWN; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,3); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,40,0,60); --power=20;tic=0;duration=60; + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_DARK,MOBPARAM_1_SHADOW); + target:delHP(dmg); + mob:addHP(dmg); + return dmg; +end; Index: paralyze_ii.lua =================================================================== --- paralyze_ii.lua (revision 0) +++ paralyze_ii.lua (working copy) @@ -0,0 +1,78 @@ +----------------------------------------- +-- Spell: Paralize +-- Spell accuracy is most highly affected by Enfeebling Magic Skill, Magic Accuracy, and MND. +-- Slow's potency is calculated with the formula (150 + dMND*2)/1024, and caps at 300/1024 (~29.3%). +-- And MND of 75 is neccessary to reach the hardcap of Slow. +----------------------------------------- + +require("scripts/globals/status"); +require("scripts/globals/magic"); + +----------------------------------------- +-- OnSpellCast +----------------------------------------- + +function onSpellCast(caster,target,spell) + + -- Calculate duration. + -- Generates rand# from 0.2~1.2 which is then x100 to form the duration (20-120). + local double duration = (0.2 + math.random()) * 100; + + -- Grabbing variables for paralyze potency + mLVL = caster:getMainLvl(); + pMND = caster:getStat(MOD_MND); + mMND = target:getStat(MOD_MND); + + dMND = (pMND - mMND); + multiplier = 300 / mLVL; + + -- Calculate potency. + potency = (multiplier * (pMND + dMND)) / 7; + --printf("Duration : %u",duration); + --printf("Potency : %u",potency); + + --Try to resist entirely. + if(math.random(0,100) >= target:getMod(MOD_PARALYZERES)) then + --See ifeffect is already on.... + if(target:getStatusEffect(EFFECT_PARALYSIS) ~= nil) then --effect already on, do nothing + spell:setMsg(75); + else + bonus = AffinityBonus(caster, spell); + resist = applyResistance(caster,spell,target,dMND,35,bonus); + printf("resist : %u",resist); + if(resist == 1) then -- Full hit, no duration penalty + target:addStatusEffect(EFFECT_PARALYSIS,potency,0,duration); +-- if(spell:isAOE() == false) then + spell:setMsg(237); +-- else +-- spell:setMsg(267); +-- end + elseif(resist == 0.5) then -- Half duration + duration = duration / 2; + target:addStatusEffect(EFFECT_PARALYSIS,potency,0,duration); +-- if(spell:isAOE() == false) then + spell:setMsg(237); +-- else +-- spell:setMsg(267); +-- end + else -- resist entirely. +-- if(spell:isAOE() == false) then + spell:setMsg(85); +-- else +-- spell:setMsg(284); +-- end + end + end + else -- resist entirely. +-- if(spell:isAOE() == false) then + spell:setMsg(85); +-- else +-- spell:setMsg(284); +-- end + end + + target:updateEnmity(caster,320,1); + + return EFFECT_PARALYSIS; + +end; \ No newline at end of file Index: Percussive_Foin.lua =================================================================== --- Percussive_Foin.lua (revision 0) +++ Percussive_Foin.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Percussive Foin +-- +-- Description: Deals damage in a fan-shaped area of effect. +-- Type: Physical +-- Utsusemi/Blink absorb: Yes? +-- Range: Unknown cone +-- Notes: Only used in "polearm" form. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Pit_Ambush.lua =================================================================== --- Pit_Ambush.lua (revision 0) +++ Pit_Ambush.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Pit Ambush +-- +-- Description: Deals major damage to a single target. +-- Type: Physical +-- Utsusemi/Blink absorb: Wipes shadows +-- Range: Melee +-- Notes: Only used by black antlions when they emerge to attack a player overhead. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Polar_Blast.lua =================================================================== --- Polar_Blast.lua (revision 0) +++ Polar_Blast.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------------- +-- Polar Blast +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PARALYSIS; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,35,0,60);--power=35;tic=0;duration=60; + end + local dmgmod = 2; + local accmod = 5; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_ICE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Polar_Bulwark.lua =================================================================== --- Polar_Bulwark.lua (revision 0) +++ Polar_Bulwark.lua (working copy) @@ -0,0 +1,19 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; + Index: Protostar.lua =================================================================== --- Protostar.lua (revision 0) +++ Protostar.lua (working copy) @@ -0,0 +1,29 @@ +--------------------------------------------------- +-- Protostar +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + local typeEffect = EFFECT_DIA; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,10,3,180);--power=10;tic=3;duration=180; + end + local numhits = 1; + local accmod = 95; + local dmgmod = 3; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_LIGHT,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Pyric_Blast.lua =================================================================== --- Pyric_Blast.lua (revision 0) +++ Pyric_Blast.lua (working copy) @@ -0,0 +1,38 @@ +--------------------------------------------------- +-- Pyric Blast +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_BURN; + if(target:hasStatusEffect(typeEffect) == false) then + local accrand = math.random(1,8); + if(accrand ~= 1) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,1); + if(resist > 0.5) then + if(resist >= 1) then -- Added just incase resist number retuns a value higher then .9. + resist = .9; + end + local power = ((resist * 10) - 5) * math.random(1,2) + 19; -- makes dot damage between 20 - 28, based off resistance and random variable. + target:addStatusEffect(typeEffect,power,3,60);--tic=3;duration=60; + end + end + end + + local dmgmod = 2; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_ICE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Rail_Cannon.lua =================================================================== --- Rail_Cannon.lua (revision 0) +++ Rail_Cannon.lua (working copy) @@ -0,0 +1,23 @@ +--------------------------------------------------- +-- Rail Cannon +-- For Single Gear Mobs +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 4,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Rail_Cannon2.lua =================================================================== --- Rail_Cannon2.lua (revision 0) +++ Rail_Cannon2.lua (working copy) @@ -0,0 +1,24 @@ +--------------------------------------------------- +-- Rail Cannon +-- For Gears Mobs (3 Gear Cluster) +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 3; + local accmod = 30; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 2,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Random_Kiss.lua =================================================================== --- Random_Kiss.lua (revision 0) +++ Random_Kiss.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------- +-- Random Kiss +-- +-- Description: Randomly steals an enemy's HP, MP, or TP. +-- Type: Magical +-- Utsusemi/Blink absorb: Ignores shadows +-- Range: Melee +-- Notes: Only used by Prune. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Remove_Blindness.lua =================================================================== --- Remove_Blindness.lua (revision 0) +++ Remove_Blindness.lua (working copy) @@ -0,0 +1,21 @@ +--------------------------------------------------- +-- Remove_Blindness +-- mob wyvern remove status effect blind +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobSkillCheck(target,mob,skill) + if(mob:getStatusEffect(EFFECT_BLINDNESS) ~= nil) then + mob:delStatusEffect(EFFECT_BLINDNESS); + end + +end; Index: Remove_Paralysis.lua =================================================================== --- Remove_Paralysis.lua (revision 0) +++ Remove_Paralysis.lua (working copy) @@ -0,0 +1,21 @@ +--------------------------------------------------- +-- Remove_Paralysis +-- mob wyvern remove status effect paralysis +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobSkillCheck(target,mob,skill) + if(mob:getStatusEffect(EFFECT_PARALYSIS) ~= nil) then + mob:delStatusEffect(EFFECT_PARALYSIS); + end + +end; \ No newline at end of file Index: Remove_Poison.lua =================================================================== --- Remove_Poison.lua (revision 0) +++ Remove_Poison.lua (working copy) @@ -0,0 +1,21 @@ +--------------------------------------------------- +-- Remove_Poison +-- mob wyvern remove status effect poison +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobSkillCheck(target,mob,skill) + if(mob:getStatusEffect(EFFECT_POISON) ~= nil) then + mob:delStatusEffect(EFFECT_POISON); + end + +end; \ No newline at end of file Index: Restoral.lua =================================================================== --- Restoral.lua (revision 0) +++ Restoral.lua (working copy) @@ -0,0 +1,25 @@ +--------------------------------------------- +-- Restoral +-- For Single Gear mobs +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local m = math.random(1,5)+5; + local base = (mob:getMaxHP()/100)* m; + local mobHP = mob:getHP(); + local mobMaxHP = mob:getMaxHP(); + if(mobHP+base > mobMaxHP) then + base = mobMaxHP - mobHP; --cap it + end + skill:setMsg(MSG_SELF_HEAL); + mob:addHP(base); + return base; +end; Index: Restoral2.lua =================================================================== --- Restoral2.lua (revision 0) +++ Restoral2.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------- +-- Restoral +-- For Gear clusters +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local m = math.random(1,10)+5; + local base = (mob:getMaxHP()/100)* m; + local mobHP = mob:getHP(); + local mobMaxHP = mob:getMaxHP(); + if(mobHP+base > mobMaxHP) then + base = mobMaxHP - mobHP; --cap it + end + skill:setMsg(MSG_SELF_HEAL); + mob:addHP(base); + return base; +end; Index: Sandblast.lua =================================================================== --- Sandblast.lua (revision 0) +++ Sandblast.lua (working copy) @@ -0,0 +1,40 @@ +--------------------------------------------- +-- Sandblast +-- +-- Description: Blinds targets with a cloud of sand. +-- Type: Enfeebling +-- Utsusemi/Blink absorb: Ignores shadows +-- Range: 8' radial +-- Notes: +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + + local message = MSG_MISS; + local typeEffect = BLINDESS; -- Add effect name here + + if(target:hasStatusEffect(typeEffect) == false) then + local accrand = math.random(1,2); + if(accrand == 1) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + message = MSG_ENFEEB_IS; + target:addStatusEffect(typeEffect,1,0,60); -- Please set power,tic and duration. Defaults power = 1, tic = 0 duration = 60 + end + end + else + message = MSG_NO_EFFECT; + end + skill:setMsg(message); + return typeEffect; +end; \ No newline at end of file Index: Sandpit.lua =================================================================== --- Sandpit.lua (revision 0) +++ Sandpit.lua (working copy) @@ -0,0 +1,55 @@ +--------------------------------------------- +-- Tidal Dive +-- +-- Description: Dives at nearby targets. Additional effect: Weight and/or Bind (Status Effect) +-- Type: Physical +-- Utsusemi/Blink absorb: 2-3 shadows +-- Range: Unknown radial +-- Notes: Only used over deep water. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local duration = 0; + local typeEffect = EFFECT_BIND; + local statmod = MOD_INT; + local accrand = 0; + local resist = 0 + if(target:hasStatusEffect(typeEffect) == false) then + accrand = math.random(1,2); + if(accrand == 1) then + resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + duration = skill:getTP()/100 * math.random(3,5) + 18; + target:addStatusEffect(typeEffect,1,0,duration);--power=1;tic=0; + end + end + end + + typeEffect = EFFECT_WEIGHT; + if(target:hasStatusEffect(typeEffect) == false) then + accrand = math.random(1,2); + if(accrand == 1) then + resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,4); + if(resist > 0.5) then + duration = skill:getTP()/100 * math.random(3,5) + 18; + target:addStatusEffect(typeEffect,1,0,duration);--power=1;tic=0; + end + end + end + + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; Index: Scission_Thrust.lua =================================================================== --- Scission_Thrust.lua (revision 0) +++ Scission_Thrust.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Scission Thrust +-- +-- Description: Deals damage in a fan-shaped area of effect. +-- Type: Physical +-- Utsusemi/Blink absorb: Yes? +-- Range: Unknown cone +-- Notes: Only used in "sword" form. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Serpentine_Tail.lua =================================================================== --- Serpentine_Tail.lua (revision 0) +++ Serpentine_Tail.lua (working copy) @@ -0,0 +1,19 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; + Index: Sideswipe.lua =================================================================== --- Sideswipe.lua (revision 0) +++ Sideswipe.lua (working copy) @@ -0,0 +1,37 @@ +--------------------------------------------- +-- Sideswipe +-- +-- Description: Deals damage to a single target reducing their HP to 5%. Resets enmity. +-- Type: Physical +-- Utsusemi/Blink absorb: No +-- Range: Single Target +-- Notes: Temp fix +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +require("scripts/globals/magic"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local fivePercent = ((target:getMaxHP()/100)*5); + local currentHP = target:getHP(); + if(currentHP > fivePercent and info.dmg > 0) then + local dmg = currentHP - fivePercent; + else + local dmg = 0; + end + local dmg = MobFinalAdjustments(dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,MOBPARAM_IGNORE_SHADOWS); + + target:delHP(dmg); + mob:updateEnmity(target,-300,1); -- no way to remove entity from enmity table currently as Clear() does not work. + return dmg; +end; \ No newline at end of file Index: slow_ii.lua =================================================================== --- slow_ii.lua (revision 0) +++ slow_ii.lua (working copy) @@ -0,0 +1,84 @@ +----------------------------------------- +-- Spell: Slow II +-- Spell accuracy is most highly affected by Enfeebling Magic Skill, Magic Accuracy, and MND. +-- Slow II potency is calculated with the formula ([230] + [y * 10] + [floor(dMND * 1.6)])/1024, +-- And MND of 75 is neccessary to reach the hardcap of Slow. +----------------------------------------- + +require("scripts/globals/status"); +require("scripts/globals/magic"); + +----------------------------------------- +-- OnSpellCast +----------------------------------------- + +function onSpellCast(caster,target,spell) + + dMND = (caster:getStat(MOD_MND) - target:getStat(MOD_MND)); + bonus = AffinityBonus(caster,spell); + + --Power. + power = math.floor((230 / 1024) * (150 + dMND * 2)) + if(power > 40) then + power = 40; + end + power = power * -1; + + --Duration, including resistance. + duration = 180 * applyResistance(caster,spell,target,dMND,35,bonus); + if(100 * math.random() >= target:getMod(MOD_SLOWRES)) then + if(duration >= 90) then --Do it! + --Try to erase a weaker slow or haste. + slow = target:getStatusEffect(EFFECT_SLOW); + haste = target:getStatusEffect(EFFECT_HASTE); + if(slow ~= nil) then + if(slow:getPower() > power) then + target:delStatusEffect(EFFECT_SLOW); + target:addStatusEffect(EFFECT_SLOW,power,0,duration); +-- if(spell:isAOE() == false) then + spell:setMsg(237); +-- else +-- spell:setMsg(267); +-- end + else + spell:setMsg(75); + end + elseif(haste ~= nil) then + if(haste:getPower() < (-1 * power)) then + target:delStatusEffect(EFFECT_HASTE); + target:addStatusEffect(EFFECT_SLOW,power,0,duration); +-- if(spell:isAOE() == false) then + spell:setMsg(237); +-- else +-- spell:setMsg(267); +-- end + else + spell:setMsg(75); + end + else + target:addStatusEffect(EFFECT_SLOW,power,0,duration); +-- if(spell:isAOE() == false) then + spell:setMsg(237); +-- else +-- spell:setMsg(267); +-- end + end + print(power); + print(target:getMod(MOD_HASTE)); + else +-- if(spell:isAOE() == false) then + spell:setMsg(85); +-- else +-- spell:setMsg(284); +-- end + end + else +-- if(spell:isAOE() == false) then + spell:setMsg(85); +-- else +-- spell:setMsg(284); +-- end + end + + return EFFECT_SLOW; +end; \ No newline at end of file Index: Smite_of_Fury.lua =================================================================== --- Smite_of_Fury.lua (revision 0) +++ Smite_of_Fury.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Smite of Fury +-- +-- Description: Deals critical damage to a single target. +-- Type: Physical +-- Utsusemi/Blink absorb: 1 shadow? +-- Range: Melee single +-- Notes: Used only by some notorious monsters. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Somersault.lua =================================================================== --- Somersault.lua (revision 0) +++ Somersault.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Somersault +-- +-- Description: Single target attack. +-- Type: Physical +-- Utsusemi/Blink absorb: 1 shadow +-- Range: Melee +-- Notes: +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Sonic_Blade.lua =================================================================== --- Sonic_Blade.lua (revision 0) +++ Sonic_Blade.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Sonic Blade +-- +-- Description: Deals damage in an area of effect. +-- Type: Physical +-- Utsusemi/Blink absorb: Yes? +-- Range: Unknown radial +-- Notes: Only used in "sword" form. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Spring_Breeze.lua =================================================================== --- Spring_Breeze.lua (revision 0) +++ Spring_Breeze.lua (working copy) @@ -0,0 +1,21 @@ +--------------------------------------------- +-- Spring_Breeze +-- Reduces TP and puts enemies within range to sleep. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + target:setTP(0); + +end; + Index: Summer_Breeze.lua =================================================================== --- Summer_Breeze.lua (revision 0) +++ Summer_Breeze.lua (working copy) @@ -0,0 +1,21 @@ +--------------------------------------------- +-- Summer_Breeze +-- Self Erase +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + mob:delStatusEffect(); + +end; + + Index: Supernova.lua =================================================================== --- Supernova.lua (revision 0) +++ Supernova.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------------- +-- Supernova +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_BURN; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,35,3,30);--power=35;tic=3;duration=30; + end + local numhits = 1; + local accmod = 95; + local dmgmod = 3; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg() * 3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_FIRE,MOBPARAM_WIPE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Tenebrous_Mist.lua =================================================================== --- Tenebrous_Mist.lua (revision 0) +++ Tenebrous_Mist.lua (working copy) @@ -0,0 +1,18 @@ +--------------------------------------------------- +-- Stomping +-- Deals heavy damage to a single target. +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + target:setTP(0); +end; \ No newline at end of file Index: Thunderstrike.lua =================================================================== --- Thunderstrike.lua (revision 0) +++ Thunderstrike.lua (working copy) @@ -0,0 +1,24 @@ +--------------------------------------------------- +-- ThunderStrike +-- +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*5,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_THUNDER,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Torpefying_Charge.lua =================================================================== --- Torpefying_Charge.lua (revision 0) +++ Torpefying_Charge.lua (working copy) @@ -0,0 +1,37 @@ +--------------------------------------------- +-- Frost Breath +-- +-- Description: Deals ice damage to enemies within a fan-shaped area originating from the caster. Additional effect: Paralysis. +-- Type: Magical (Ice) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_PARALYSIS; + if(target:hasStatusEffect(typeEffect) == false) then --Let's first see if it's worth the time to do this math, since there's no messages to handle + local accrand = math.random(1,2); + if(accrand == 1) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,25,0,30);--power=25;tic=0;duration=30; + end + end + end + + local dmgmod = 2; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_ICE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Touchdown.lua =================================================================== --- Touchdown.lua (revision 0) +++ Touchdown.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------- +-- Touchdown +-- Magical AOE damage +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + function OnMobWeaponSkill(target, mob, skill) + local numhits = 1; + local accmod = 1; + local dmgmod = 4; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_DMG_VARIES,2,3,4); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_NONE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end + +end; Index: Tourbillion.lua =================================================================== --- Tourbillion.lua (revision 0) +++ Tourbillion.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------------- +-- Tourbillion +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_DEFENSE_DOWN; + if(target:hasStatusEffect(typeEffect) == false) then + target:addStatusEffect(typeEffect,15,0,30);--power=15;tic=0;duration=30; + end + local dmgmod = 2; + local accmod = 10; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_WIND,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; Index: Two_hour.lua =================================================================== --- Two_hour.lua (revision 0) +++ Two_hour.lua (working copy) @@ -0,0 +1,7 @@ + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) +end; + +function OnMobWeaponSkill(target,mob,skill) +end; Index: Unblest_Armor.lua =================================================================== --- Unblest_Armor.lua (revision 0) +++ Unblest_Armor.lua (working copy) @@ -0,0 +1,24 @@ +--------------------------------------------- +-- Wild Oats +-- +-- Description: Additional effect: Vitality Down. Duration of effect varies on TP. +-- Type: Physical (Piercing) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + + local typeEffect = EFFECT_SHELL; + skill:setMsg(MSG_BUFF); + mob:delStatusEffect(typeEffect); + mob:addStatusEffect(typeEffect,-128,0,60);--power=-128;tic=0;duration=60; + +end; \ No newline at end of file Index: Velocious_Blade.lua =================================================================== --- Velocious_Blade.lua (revision 0) +++ Velocious_Blade.lua (working copy) @@ -0,0 +1,27 @@ +--------------------------------------------- +-- Velocious Blade +-- +-- Description: Deals a fivefold attack against the target. +-- Type: Physical +-- Utsusemi/Blink absorb: Yes? +-- Range: Melee +-- Notes: Only used in "sword" form. +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local numhits = 5; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Vulcanian_Impact.lua =================================================================== --- Vulcanian_Impact.lua (revision 0) +++ Vulcanian_Impact.lua (working copy) @@ -0,0 +1,26 @@ +--------------------------------------------- +-- Vulcanian Impact +-- +-- Description: Deals Fire damage to a single target. +-- Type: Magical +-- Utsusemi/Blink absorb: Ignores shadows +-- Range: Melee +-- Notes: +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_FIRE,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Whispers_of_Ire.lua =================================================================== --- Whispers_of_Ire.lua (revision 0) +++ Whispers_of_Ire.lua (working copy) @@ -0,0 +1,43 @@ +--------------------------------------------------- +-- Horrid Roar +-- Dispel all buffs on the target, +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; + end; + +function OnMobWeaponSkill(target, mob, skill) + + if(target:hasStatusEffect(EFFECT_FOOD) == true) then + target:delStatusEffect(EFFECT_FOOD); + end + if(target:hasStatusEffect(EFFECT_PROTECT) == true) then + target:delStatusEffect(EFFECT_PROTECT); + end + if(target:hasStatusEffect(EFFECT_SHELL) == true) then + target:delStatusEffect(EFFECT_SHELL); + end + if(target:hasStatusEffect(EFFECT_BLINK) == true) then + target:delStatusEffect(EFFECT_BLINK); + end + if(target:hasStatusEffect(EFFECT_REFRESH) == true) then + target:delStatusEffect(EFFECT_REFRESH); + end + if(target:hasStatusEffect(EFFECT_REGEN) == true) then + target:delStatusEffect(EFFECT_REGEN); + end + if(target:hasStatusEffect(EFFECT_PHALANX) == true) then + target:delStatusEffect(EFFECT_PHALANX); + end + if(target:hasStatusEffect(EFFECT_DEFENSE_BOOST) == true) then + target:delStatusEffect(EFFECT_DEFENSE_BOOST); + end + + +end; \ No newline at end of file Index: White_Wind.lua =================================================================== --- White_Wind.lua (revision 0) +++ White_Wind.lua (working copy) @@ -0,0 +1,28 @@ +--------------------------------------------- +-- Healing_Breath_II +-- +-- Description: Restores HP for party members within area of effect. +-- Type: Magical (Wind) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local m = math.random(1,4)+10; + local base = (mob:getMaxHP()/100)* m; + local mobHP = mob:getHP(); + local mobMaxHP = mob:getMaxHP(); + if(mobHP+base > mobMaxHP) then + base = mobMaxHP - mobHP; --cap it + end + skill:setMsg(MSG_SELF_HEAL); + mob:addHP(base); + return base; +end; \ No newline at end of file Index: Wing_Thrust.lua =================================================================== --- Wing_Thrust.lua (revision 0) +++ Wing_Thrust.lua (working copy) @@ -0,0 +1,33 @@ +--------------------------------------------- +-- Wing_Thrust +-- +-- Description: Deals damage to a single target. Additional effect: Slow +-- Type: Physical +-- Utsusemi/Blink absorb: 4 shadows +-- Range: Melee +-- Notes: +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_SLOW_II; + if(target:hasStatusEffect(typeEffect) == false) then + local duration = math.random(1,2)*30 + 420; + target:addStatusEffect(typeEffect,1,0,duration);--power=1;tic=0; + end + + local numhits = 4; + local accmod = 1; + local dmgmod = 1; + local info = MobPhysicalMove(mob,target,skill,numhits,accmod,dmgmod,TP_NO_EFFECT); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_PHYSICAL,MOBPARAM_NONE,info.hitslanded); + target:delHP(dmg); + return dmg; +end; \ No newline at end of file Index: Winter_Breeze.lua =================================================================== --- Winter_Breeze.lua (revision 0) +++ Winter_Breeze.lua (working copy) @@ -0,0 +1,20 @@ +--------------------------------------------- +-- Depuration +-- Erases all negative effects on the mob. Aerns will generally not attempt to use this ability if no erasable effects exist on them. +-- Type: Healing +--------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + mob:delStatusEffect(); + +end; + Index: Wisecrack.lua =================================================================== --- Wisecrack.lua (revision 0) +++ Wisecrack.lua (working copy) @@ -0,0 +1,19 @@ +--------------------------------------------- +-- Wild Oats +-- +-- Description: Additional effect: Vitality Down. Duration of effect varies on TP. +-- Type: Physical (Piercing) +-- +-- +--------------------------------------------- +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); +--------------------------------------------- +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + return 0; +end; \ No newline at end of file Index: Wrath_of_Zeus.lua =================================================================== --- Wrath_of_Zeus.lua (revision 0) +++ Wrath_of_Zeus.lua (working copy) @@ -0,0 +1,32 @@ +--------------------------------------------------- +-- Ice Break +-- Deals ice damage to enemies within range. Additional Effect: "Bind." +--------------------------------------------------- + +require("/scripts/globals/settings"); +require("/scripts/globals/status"); +require("/scripts/globals/monstertpmoves"); + +--------------------------------------------------- + +function OnMobSkillCheck(target,mob,skill) + return 0; +end; + +function OnMobWeaponSkill(target, mob, skill) + local typeEffect = EFFECT_BIND; + if(target:hasStatusEffect(typeEffect) == false) then + local statmod = MOD_INT; + local resist = applyPlayerResistance(mob,skill,target,mob:getMod(statmod)-target:getMod(statmod),0,5); + if(resist > 0.5) then + target:addStatusEffect(typeEffect,1,0,60); + end + end + + local dmgmod = 1; + local accmod = 1; + local info = MobMagicalMove(mob,target,skill,mob:getWeaponDmg()*3,accmod,dmgmod,TP_MAB_BONUS,1); + local dmg = MobFinalAdjustments(info.dmg,mob,skill,target,MOBSKILL_MAGICAL,MOBPARAM_THUNDER,MOBPARAM_IGNORE_SHADOWS); + target:delHP(dmg); + return dmg; +end;