require("config.util") local mods = {} function mods.recovery_j8a(pat) pat:update_frame(309, 0, 9, { duration = 5 }) pat:update_frame(309, 0, 10, { duration = 5 }) end function mods.modify_b_bullets(pat) for off = 0, 6 do pat:update_frame(801, off, 0, { hitstop_enemy = 10, proration = 970 }) end end function mods.modify_c_bullets(pat) local function modify_range(off, first, last) for idx = first, last do pat:update_frame(805, off, idx, { hitstop_enemy = 10 }) end end modify_range(0, 8, 12) modify_range(1, 0, 14) modify_range(3, 8, 12) modify_range(4, 0, 14) modify_range(6, 8, 12) modify_range(7, 0, 14) modify_range(9, 8, 12) modify_range(10, 0, 14) end function mods.modify_6c_parameters(pat) for idx = 0, 1 do pat:update_frame(815, 0, idx, { blockstop_enemy = 5 }) end end function mods.star_bullets_recovery(pat) pat:update_frame(602, 2, 10, { duration = 4 }) end function mods.star_bullets_object_parameters(pat) for idx = 0, 1 do pat:update_frame(852, 1, idx, { damage = 650, sp_damage = 50, }) end end function mods.fragrant_wave_motion_cancel(pat) local function set_motion_cancel(frame) set_fflag(frame, FF_MOTION_CANCEL) end -- pat:update_frame(560, 0, 12, set_motion_cancel) pat:update_frame(560, 0, 13, set_motion_cancel) pat:update_frame(561, 0, 24, { duration = 5 }) pat:update_frame(561, 0, 23, set_motion_cancel) pat:update_frame(561, 0, 24, set_motion_cancel) end function mods.fragrant_wave_object_parameters(pat) for off = 0, 2 do for idx = 0, 15 do pat:update_frame(825, off, idx, { blockstop_enemy = 6 }) end end end function mods.fragrant_wave_startup(pat) pat:remove_frame(560, 0, 0) for idx = 0, 7 do pat:remove_frame(561, 0, 0) end end function mods.colorful_rain_startup(pat) pat:update_frame(570, 0, 3, { duration = 3 }) pat:update_frame(571, 0, 3, { duration = 6 }) pat:update_frame(573, 0, 3, { duration = 4 }) end function mods.colorful_rain_object_parameters(pat) for off = 0, 6 do pat:update_frame(827, off, 0, { hitstop_enemy = 10 }) end end function mods.intense_rainbow_fist_hit_parameters(pat) for idx = 0, 2 do pat:update_frame(606, 1, idx, { -- combo_correction = CC_NONE, launch_vector_y = 200 + 100 * (3 - idx), blockstop_enemy = 8, attack_level = AL_MEDIUM, }) end end return function(pat) mods.recovery_j8a(pat) mods.modify_b_bullets(pat) mods.modify_c_bullets(pat) -- mods.modify_6c_parameters(pat) -- mods.fragrant_wave_motion_cancel(pat) -- mods.fragrant_wave_object_parameters(pat) if config:get("meirin", "fragrant_wave", "reduce_startup") then mods.fragrant_wave_startup(pat) end mods.colorful_rain_object_parameters(pat) -- mods.intense_rainbow_fist_hit_parameters(pat) -- mods.star_bullets_recovery(pat) mods.star_bullets_object_parameters(pat) end