require("config.util") local mods = {} function mods.fix_fa_parameters(pat) pat:update_frame(301, 0, 5, { damage = 450 }) end function mods.set_6a_skill_cancel(pat) pat:get_sequence(302, 2):set_priority(20, 50) end function mods.fix_meteonic_debris_parameters(pat) pat:update_frame(825, 1, 0, function(frame) unset_fflag(frame, FF_STANDING) end) pat:update_frame(825, 2, 0, { proration = 960 }) end function mods.narrow_spark_motion_cancel(pat) for seq = 565, 568 do for idx = 0, 2 do pat:update_frame(seq, 4, idx, set_motion_cancel) end end end function mods.green_spread_motion_cancel(pat) for seq = 570, 573 do for idx = 0, 1 do pat:update_frame(seq, 3, idx, set_motion_cancel) end end end function mods.green_spread_object_parameters(pat) for idx = 0, 1 do pat:update_frame(827, 1, idx, { damage = 250, sp_damage = 25 }) pat:update_frame(827, 7, idx, { damage = 100, chip_damage = 15 }) pat:update_frame(827, 8, idx, { damage = 100, chip_damage = 15 }) end end function mods.witch_leyline_hit_parameters(pat, damage) for idx = 0, 5 do pat:update_frame(500, 1, idx, { damage = damage }) end end function mods.up_sweeper_motion_cancel(pat) for seq = 510, 513 do for idx = 0, 6 do pat:update_frame(seq, 2, idx, function(frame) set_fflag(frame, FF_ATTACK_CANCEL) end) end for idx = 0, 1 do pat:update_frame(seq, 3, idx, function(frame) set_fflag(frame, FF_ATTACK_CANCEL + FF_MOTION_CANCEL) end) end for idx = 0, 3 do pat:update_frame(seq, 4, idx, function(frame) set_fflag(frame, FF_ATTACK_CANCEL) end) end end end function mods.up_sweeper_landing_recovery(pat) for seq = 510, 513 do pat:update_frame(seq, 4, 1, { duration = 4 }) end end function mods.orreries_sun_object_parameters(pat, blockstop) for off = 0, 5 do pat:update_frame(865, off, 0, { blockstop_enemy = blockstop }) end end return function(pat) mods.fix_fa_parameters(pat) if config:get("marisa", "6a", "skill_cancelable") then mods.set_6a_skill_cancel(pat) end mods.fix_meteonic_debris_parameters(pat) mods.narrow_spark_motion_cancel(pat) mods.green_spread_motion_cancel(pat) if config:get("marisa", "green_spread", "adjust_object_parameters") then mods.green_spread_object_parameters(pat) end mods.witch_leyline_hit_parameters(pat, config:getdef("marisa", "witch_leyline", "damage", 1350)) mods.up_sweeper_motion_cancel(pat) mods.up_sweeper_landing_recovery(pat) mods.orreries_sun_object_parameters(pat, config:getdef("marisa", "orreries_sun", "blockstop", 5)) end