Index: scripts/globals/effects/baraero.lua =================================================================== --- scripts/globals/effects/baraero.lua (revision 3812) +++ scripts/globals/effects/baraero.lua (working copy) @@ -11,7 +11,9 @@ ----------------------------------- function onEffectGain(target,effect) + target:addMod(MOD_WINDRES,effect:getPower()); + target:addMod(MOD_MDEF, effect:getTier()); end; ----------------------------------- @@ -26,5 +28,7 @@ ----------------------------------- function onEffectLose(target,effect) + target:delMod(MOD_WINDRES,effect:getPower()); + target:delMod(MOD_MDEF, effect:getTier()); end; \ No newline at end of file Index: scripts/globals/effects/barfire.lua =================================================================== --- scripts/globals/effects/barfire.lua (revision 3812) +++ scripts/globals/effects/barfire.lua (working copy) @@ -11,7 +11,9 @@ ----------------------------------- function onEffectGain(target,effect) - target:addMod(MOD_FIRERES,effect:getPower()); + + target:addMod(MOD_FIRERES,effect:getPower()); + target:addMod(MOD_MDEF, effect:getTier()); end; ----------------------------------- @@ -26,5 +28,7 @@ ----------------------------------- function onEffectLose(target,effect) - target:delMod(MOD_FIRERES,effect:getPower()); + + target:delMod(MOD_FIRERES,effect:getPower()); + target:delMod(MOD_MDEF, effect:getTier()); end; \ No newline at end of file Index: scripts/globals/effects/barstone.lua =================================================================== --- scripts/globals/effects/barstone.lua (revision 3812) +++ scripts/globals/effects/barstone.lua (working copy) @@ -11,7 +11,9 @@ ----------------------------------- function onEffectGain(target,effect) + target:addMod(MOD_EARTHRES,effect:getPower()); + target:addMod(MOD_MDEF, effect:getTier()); end; ----------------------------------- @@ -26,5 +28,7 @@ ----------------------------------- function onEffectLose(target,effect) + target:delMod(MOD_EARTHRES,effect:getPower()); + target:addMod(MOD_MDEF, effect:getTier()); end; \ No newline at end of file Index: scripts/globals/effects/barthunder.lua =================================================================== --- scripts/globals/effects/barthunder.lua (revision 3812) +++ scripts/globals/effects/barthunder.lua (working copy) @@ -11,7 +11,9 @@ ----------------------------------- function onEffectGain(target,effect) + target:addMod(MOD_THUNDERRES,effect:getPower()); + target:addMod(MOD_MDEF, effect:getTier()); end; ----------------------------------- @@ -26,5 +28,7 @@ ----------------------------------- function onEffectLose(target,effect) + target:delMod(MOD_THUNDERRES,effect:getPower()); + target:delMod(MOD_MDEF, effect:getTier()); end; \ No newline at end of file Index: scripts/globals/effects/barwater.lua =================================================================== --- scripts/globals/effects/barwater.lua (revision 3812) +++ scripts/globals/effects/barwater.lua (working copy) @@ -11,7 +11,9 @@ ----------------------------------- function onEffectGain(target,effect) + target:addMod(MOD_WATERRES,effect:getPower()); + target:addMod(MOD_MDEF, effect:getTier()); end; ----------------------------------- @@ -26,5 +28,7 @@ ----------------------------------- function onEffectLose(target,effect) + target:delMod(MOD_WATERRES,effect:getPower()); + target:delMod(MOD_MDEF, effect:getTier()); end; \ No newline at end of file Index: scripts/globals/spells/baraera.lua =================================================================== --- scripts/globals/spells/baraera.lua (revision 3812) +++ scripts/globals/spells/baraera.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARAERA +-- Spell: Baraera ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARAERO,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARAERO,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARAERO; end; Index: scripts/globals/spells/baraero.lua =================================================================== --- scripts/globals/spells/baraero.lua (revision 3812) +++ scripts/globals/spells/baraero.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARAERO +-- Spell: Baraero ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,22 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARAERO,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARAERO,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARAERO; end; Index: scripts/globals/spells/barblizzara.lua =================================================================== --- scripts/globals/spells/barblizzara.lua (revision 3812) +++ scripts/globals/spells/barblizzara.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARBLIZZARA +-- Spell: Barblizzara ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,22 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARBLIZZARD,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARBLIZZARD,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARBLIZZARD; end; Index: scripts/globals/spells/barblizzard.lua =================================================================== --- scripts/globals/spells/barblizzard.lua (revision 3812) +++ scripts/globals/spells/barblizzard.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARBLIZZARD +-- Spell: Barblizzard ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARBLIZZARD,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARBLIZZARD,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARBLIZZARD; end; Index: scripts/globals/spells/barfira.lua =================================================================== --- scripts/globals/spells/barfira.lua (revision 3812) +++ scripts/globals/spells/barfira.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARFIRA +-- Spell: Barfira ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARFIRE,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARFIRE,power,0,duration,0,1,extraBarspellEffect); spell:setMsg(230); return EFFECT_BARFIRE; Index: scripts/globals/spells/barfire.lua =================================================================== --- scripts/globals/spells/barfire.lua (revision 3812) +++ scripts/globals/spells/barfire.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARFIRE +-- Spell: Barfire ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARFIRE,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARFIRE,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARFIRE; end; Index: scripts/globals/spells/barstone.lua =================================================================== --- scripts/globals/spells/barstone.lua (revision 3812) +++ scripts/globals/spells/barstone.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARSTONRE +-- Spell: Barstone ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARSTONE,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARSTONE,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARSTONE; end; Index: scripts/globals/spells/barstonra.lua =================================================================== --- scripts/globals/spells/barstonra.lua (revision 3812) +++ scripts/globals/spells/barstonra.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARSTONRA +-- Spell: Barstonra ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARSTONE,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARSTONE,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARSTONE; end; Index: scripts/globals/spells/barthunder.lua =================================================================== --- scripts/globals/spells/barthunder.lua (revision 3812) +++ scripts/globals/spells/barthunder.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARTHUNDER +-- Spell: Barthunder ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARTHUNDER,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARTHUNDER,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARTHUNDER; end; Index: scripts/globals/spells/barthundra.lua =================================================================== --- scripts/globals/spells/barthundra.lua (revision 3812) +++ scripts/globals/spells/barthundra.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARTHUNDRA +-- Spell: Barthundra ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARTHUNDER,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARTHUNDER,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARTHUNDER; end; Index: scripts/globals/spells/barwater.lua =================================================================== --- scripts/globals/spells/barwater.lua (revision 3812) +++ scripts/globals/spells/barwater.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARWATER +-- Spell: Barwater ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARWATER,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARWATER,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARWATER; end; Index: scripts/globals/spells/barwatera.lua =================================================================== --- scripts/globals/spells/barwatera.lua (revision 3812) +++ scripts/globals/spells/barwatera.lua (working copy) @@ -1,5 +1,5 @@ ----------------------------------------- --- Spell: BARWATERA +-- Spell: Barwatera ----------------------------------------- require("scripts/globals/status"); @@ -8,10 +8,10 @@ -- OnSpellCast ----------------------------------------- -function OnMagicCastingCheck(caster,target,spell) - return 0; -end; - +function OnMagicCastingCheck(caster,target,spell) + return 0; +end; + function onSpellCast(caster,target,spell) local enchanceSkill = caster:getSkillLevel(34); @@ -27,7 +27,21 @@ duration = duration * 3; end - target:addStatusEffect(EFFECT_BARWATER,power,0,duration,0,1); + local extraBarspellEffect = 0; + if(caster:getEquipID(SLOT_MAIN) == 17077 or caster:getEquipID(SLOT_SUB) == 17077) then + extraBarspellEffect = 5; + end + local body = caster:getEquipID(SLOT_BODY); + if(body == 14436 or body == 14438) then -- Blessed Briault / +1 + extraBarspellEffect = extraBarspellEffect + 5; + end + + duration = duration + (duration * caster:getMod(MOD_BARSPELL_DUR)); + + power = power + caster:getMod(MOD_BARSPELL_PWR); + + target:addStatusEffect(EFFECT_BARWATER,power,0,duration,0,1,extraBarspellEffect); + return EFFECT_BARWATER; end; Index: scripts/globals/status.lua =================================================================== --- scripts/globals/status.lua (revision 3812) +++ scripts/globals/status.lua (working copy) @@ -849,6 +849,9 @@ MOD_REFRESH_DOWN = 0x195 -- plague, reduce mp MOD_REGAIN_DOWN = 0x196 -- plague, reduce tp +MOD_BARSPELL_DUR = 0x1AB +MOD_BARSPELL_PWR = 0x1AC + MOD_EAT_RAW_FISH = 409 MOD_EAT_RAW_MEAT = 410 ----------------------------------- Index: src/map/modifier.h =================================================================== --- src/map/modifier.h (revision 3812) +++ src/map/modifier.h (working copy) @@ -436,12 +436,15 @@ MOD_WYVERN_BREATH =0x192, MOD_STEP_ACCURACY =0x193,// Bonus accuracy for Dancer's steps + MOD_BARSPELL_DUR = 0x1AB, // Percent Increase duration Elemental Resistance Spells + MOD_BARSPELL_PWR = 0x1AC, // Power Increase Elemental Resistance Spells + MOD_MAG_BURST_BONUS =408, MOD_EAT_RAW_FISH = 409, MOD_EAT_RAW_MEAT = 410 }; -#define MAX_MODIFIER 411 +#define MAX_MODIFIER 0x242