local mods = {} function mods.add_dive_knockdown(pat) table.map({1,2,3,4,5}, function(off) pat:update_frame(811, 0, off, { untech = 9000 }) pat:update_frame(811, 0, off, { hit_ani_air = 72, hit_ani_ground = 77, launch_vector_y = 2500, }) end) table.map({1,2,3,4,5}, function(off) pat:update_frame(811, 3, off, { untech = 9000 }) pat:update_frame(811, 3, off, { hit_ani_air = 72, hit_ani_ground = 77, launch_vector_y = 2500, }) end) table.map({1,2,3,4,5}, function(off) pat:update_frame(811, 4, off, { untech = 9000 }) pat:update_frame(811, 4, off, { hit_ani_air = 72, hit_ani_ground = 77, launch_vector_y = 2500, }) end) end function mods.add_j5a_untech(pat) pat:update_frame(306, 0, 5, { untech = 30, damage = 500 }) end function mods.add_2B_groundbounce(pat) for seq = 0, 1 do for frm = 3, 4 do pat:update_frame(402, seq, frm, function(frame) frame.hit_ani_air = 88 frame.hit_ani_ground = 88 frame.launch_vector_y = -3900 frame.launch_vector_x = 0 frame.damage = 1000 frame.untech = 75 frame.duration = 4 unset_aflag(frame, AF_HIGHBLOCK_OK) end) end end pat:update_frame(402, 0, 4, { launch_vector_y = -2400, launch_vector_x = 0, untech = 45, damage = 750, proration = 750, duration = 2, sp_damage = 200 }) end function mods.skillcancel(pat) pat:get_sequence(321, 0):set_priority(10, 50) for frame = 0, pat:get_frame_count(321, 0) - 1 do pat:update_frame(321, 0, frame, { untech = 100 }) end end function mods.modify_j5a_untech(pat) pat:update_frame(306, 0, 5, { untech = 30 }) end function mods.modify_dial_a_untech(pat) pat:update_frame(322, 2, 0, { untech = 6000, damage = 1000 }) end function mods.modify_fireball_untech(pat) pat:update_frame(800, 4, 0, { untech = 45, damage = 600 }) pat:update_frame(800, 8, 0, { untech = 45, damage = 600 }) pat:update_frame(800, 0, 0, { hitstop_enemy = 14, damage = 350 }) end function mods.cancel(pat) pat:get_sequence(300, 0):set_priority(15, 20) -- 5A pat:get_sequence(320, 0):set_priority(10, 20) -- 5AA pat:get_sequence(303, 0):set_priority(10, 15) -- 2A pat:get_sequence(330, 0):set_priority(15, 20) -- 4A pat:get_sequence(321, 0):set_priority(10, 20) pat:get_sequence(322, 0):set_priority(20, 30) pat:get_sequence(322, 3):set_priority(20, 30) end function mods.modify_j623startup(pat) for frame = 0, 6 do pat:update_frame(522, 2, 0, { untech = 9999 }) pat:update_frame(522, 3, 0, { untech = 9999 }) end end function mods.modify_chains_duration(pat) pat:update_frame(601, 2, 4, { duration = 15, proration = 1000 }) pat:update_frame(604, 2, 4, { duration = 15, proration = 1000, damage = 1500 }) end function mods.modifygrabstartup(pat) for frame = 0, 2 do pat:update_frame(608, 0, 2, { duration = 1 }) end pat:update_frame(608, 0, 4, { duration = 1 }) -- pat:update_frame(608, 0, 7, function(frame) -- frame.attackbox[1] = { x1 = -110, y1 = -110, x2 = 110, y2 = 110 } -- end) pat:update_frame(608, 0, 7, { proration = 500 }) end function mods.threestepsuntech(pat) pat:update_frame(612, 2, 3, { untech = 6000 }) pat:update_frame(612, 3, 4, { untech = 6000 }) pat:update_frame(612, 4, 4, { untech = 6000 }) end function mods.modify_j6a_untech(pat) pat:update_frame(307, 0, 3, { untech = 6000, damage = 1000 }) pat:update_frame(307, 0, 4, { untech = 6000, damage = 1000 }) pat:update_frame(308, 0, 5, function(frame) frame.launch_vector_y = -50 -- frame.launch_vector_x = 5000 -- frame.hitstop_enemy = 15 frame.attackbox[3] = pat:get_frame(306, 0, 5).attackbox[1] end) pat:update_frame(308, 0, 6, function(frame) frame.attackbox[3] = pat:get_frame(308, 0, 5).attackbox[1] frame.attackbox[4] = pat:get_frame(308, 0, 5).attackbox[2] end) for frame = 6, 13 do pat:update_frame(309, 0, frame, { untech = 60 }) end end function mods.armor236(pat) local function set_armor(frame) set_fflag(frame, 129) end for st = 0, 1 do -- pat:update_frame(500, 0, st, set_armor) pat:update_frame(501, 0, st, set_armor) end for st = 0, 6 do -- pat:update_frame(500, 1, st, set_armor) end pat:update_frame(810, 1, 0, { untech = 9999 }) for st = 0, 3 do pat:update_frame(500, 2, st, set_armor) pat:update_frame(500, 2, st, { untech = 9999}) pat:update_frame(500, 3, st, { untech = 9999}) pat:update_frame(500, 3, st, set_armor) end pat:update_frame(501, 1, 0, set_armor) for frame = 0, 4 do pat:update_frame(501, 2, frame, set_armor) pat:update_frame(501, 3, frame, set_armor) pat:update_frame(501, 4, frame, set_armor) end end function mods.testingshit(pat) for move = 512, 513 do pat:update_frame(move, 2, 0, function(frame) frame.attackbox[1] = pat:get_frame(510, 3, 0).attackbox[1] -- frame.attackbox[2] = pat:get_frame(510, 3, 0).attackbox[2] -- frame.attackbox[3] = pat:get_frame(510, 3, 0).attackbox[3] end) end for move = 510, 513 do pat:update_frame(move, 1, 1, { duration = 15 }) for seq = 2, 5 do pat:update_frame(move, seq, 0, function(frame) set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 80 frame.card_gain_hit = 120 frame.chip_damage = 250 frame.combo_correction = 2 frame.data_format = 0 frame.hit_effect = 3 frame.duration = 1 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 1300 frame.hitstop_enemy = 0 frame.blockstop_enemy = 0 frame.proration = 800 frame.limit = 0 frame.hit_ani_ground = 88 frame.hit_ani_air = 88 frame.untech = 9999 frame.launch_vector_x = 800 frame.launch_vector_y = -2000 frame.hit_sfx = 4 set_aflag(frame, AF_HIGHBLOCK_OK) unset_aflag(frame, AF_LOWBLOCK_OK) set_aflag(frame, AF_AIR_BLOCKABLE) end) end end -- pat:update_frame(510, 3, 0, function(frame) -- show_message_box(table.tostring(frame)) -- end) end function mods.j6a_untech(pat) pat:update_frame(307, 0, 3, { untech = 6000 }) pat:update_frame(307, 0, 4, { untech = 6000 }) end function mods.modifygrab(pat) pat:remove_frame(570, 0, 0) pat:remove_frame(570, 0, 0) pat:remove_frame(570, 0, 0) pat:remove_frame(570, 0, 0) pat:remove_frame(570, 0, 0) pat:update_frame(570, 0, 0, { duration = 15 }) pat:update_frame(571, 0, 4, { duration = 15 }) local function set_armor(frame) set_fflag(frame, 129) end for st = 0, 5 do pat:update_frame(571, 0, st, set_armor) pat:update_frame(571, 1, 0, set_armor) pat:update_frame(571, 1, 1, set_armor) end end function mods.modify_reversaluntech(pat) pat:update_frame(602, 0, 6, { untech = 6000 }) end function mods.modify_spiritbomb(pat) for frame = 0, 1 do pat:update_frame(815, 0, frame, { untech = 6000 }) pat:update_frame(815, 1, frame, { untech = 6000 }) pat:update_frame(815, 2, frame, { untech = 6000 }) end end function mods.modify1card(pat) pat:update_frame(606, 1, 0, { duration = 1 }) pat:update_frame(606, 2, 0, { duration = 4 }) pat:update_frame(856, 0, 0, { blockstop_enemy = 10 }) pat:update_frame(850, 0, 1, { untech = 9000}) for frame = 0, 4 do pat:update_frame(650, 0, frame, { duration = 1}) end for frame = 0, 9 do pat:update_frame(650, 3, frame, { duration = 1}) end end function mods.blockdirection66a(pat) for frame = 0, 16 do pat:update_frame(305, 0, frame, function(frame) unset_aflag(frame, AF_LOWBLOCK_OK) frame.sp_damage = 200 end) end end function mods.modifymist(pat) for move = 545, 548 do for frame = 0, 3 do pat:update_frame(move, 0, frame, { duration = 2 }) end for frame = 0, 1 do pat:update_frame(move, 2, frame, function(frame) set_fflag(frame, FF_CANCEL) end) end for frame = 0, 4 do pat:update_frame(move, 3, frame, function(frame) set_fflag(frame, FF_CANCEL) end) end pat:get_sequence(move, 1):set_priority(0, 0) pat:get_sequence(move, 2):set_priority(0, 0) pat:get_sequence(move, 3):set_priority(0, 0) end end function mods.modifygnome(pat) for frame = 7, 11 do pat:update_frame(526, 0, frame, function(frame) frame.attackbox[1] = pat:get_frame(526, 0, 6).attackbox[1] set_fflag(frame, FF_MOTION_CANCEL) end) end for frame = 0, 1 do pat:update_frame(816, 0, frame, function(frame) frame.untech = 60 frame.prortaion = 950 -- frame.damage = 350 frame.hitstop_enemy = 0 frame.launch_vector_y = 1800 end) end end function mods.modifyfatuus(pat) pat:update_frame(550, 0, 2, { duration = 5}) for frame = 0, 29 do pat:update_frame(822, 0, frame, function(frame) frame.damage = 500 frame.launch_vector_x = 500 frame.launch_vector_y = 1700 frame.hitstop_enemy = 15 end) end end function mods.modifygigasuika(pat) for frame = 4, 5 do pat:update_frame(605, 1, frame, { untech = 6000}) end for frame = 0, 7 do pat:update_frame(605, 2, frame, function(frame) frame.attackbox[1] = pat:get_frame(605, 2, 7).attackbox[1] frame.damage = 500 frame.chip_damage = 250 frame.proration = 940 frame.hitstop_enemy = 30 frame.untech = 40 frame.data_format = 2 frame.unknown_9 = 100 frame.hit_ani_ground = 0 frame.hit_ani_air = 71 frame.launch_vector_x = 200 frame.launch_vector_y = 1000 frame.attack_level = 2 frame.hit_sfx = 3 frame.hit_effect = 3 set_aflag(frame, AF_HIGHBLOCK_OK) unset_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) end for frame = 0, 4 do pat:update_frame(605, 3, frame, { duration = 1 }) end for frame = 2, 7 do pat:update_frame(605, 7, frame, { duration = 1 }) end pat:update_frame(605, 0, 6, { damage = 1500, launch_vector_x = 0 }) pat:update_frame(605, 4, 0, { untech = 6000, damage = 1500 }) pat:update_frame(605, 9, 7, { untech = 120, damage = 1500 }) pat:update_frame(605, 7, 10, { untech = 6000, launch_vector_x = 2500, damage = 1500}) pat:update_frame(605, 8, 6, { damage = 1500, untech = 6000, launch_vector_x = 0, launch_vector_y = -4000, hit_ani_air = 88, hit_ani_ground = 88}) pat:update_frame(605, 10, 4, { untech = 6000, launch_vector_x = 2500, damage = 2000}) pat:update_frame(605, 11, 1, { duration = 1 }) pat:update_frame(605, 6, 1, { duration = 1 }) -- pat:update_frame(605, 15, 3, { duration = 1 }) pat:update_frame(605, 13, 1, { damage = 1500, untech = 6000, launch_vector_y = -5000, hit_ani_air = 88, hit_ani_ground = 88}) end function mods.modify66bsprite(pat) local function remove_last_hurtbox(frame) table.remove(frame.hurtbox) end pat:update_frame(408, 0, 4, remove_last_hurtbox) pat:update_frame(408, 0, 5, remove_last_hurtbox) pat:update_frame(408, 0, 13, remove_last_hurtbox) pat:update_frame(408, 0, 14, remove_last_hurtbox) for frame = 0, 1 do pat:update_frame(408, 0, frame, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 0).hurtbox[1] frame.hurtbox[2] = pat:get_frame(392, 0, 0).hurtbox[2] frame.tex_h = 105 frame.tex_index = 334 frame.tex_offset_x = 92 frame.tex_offset_y = 219 frame.tex_w = 128 frame.tex_x = 0 frame.tex_y = 0 end) end pat:update_frame(408, 0, 2, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 1).hurtbox[1] frame.hurtbox[2] = pat:get_frame(392, 0, 1).hurtbox[2] frame.tex_h = 105 frame.tex_index = 335 frame.tex_offset_x = 101 frame.tex_offset_y = 207 frame.tex_w = 128 frame.tex_x = 0 frame.tex_y = 0 end) pat:update_frame(408, 0, 3, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 2).hurtbox[1] frame.hurtbox[2] = pat:get_frame(392, 0, 2).hurtbox[2] frame.tex_h = 105 frame.tex_index = 336 frame.tex_offset_x = 98 frame.tex_offset_y = 207 frame.tex_w = 128 frame.tex_x = 0 frame.tex_y = 0 end) pat:update_frame(408, 0, 4, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 3).hurtbox[1] frame.tex_h = 105 frame.tex_index = 337 frame.tex_offset_x = 98 frame.tex_offset_y = 207 frame.tex_w = 128 frame.tex_x = 0 frame.tex_y = 0 end) pat:update_frame(408, 0, 5, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 4).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 4).attackbox frame.tex_h = 104 frame.tex_index = 521 frame.tex_offset_x = 60 frame.tex_offset_y = 203 frame.tex_w = 92 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 10 frame.untech = 45 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 35 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 6, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 5).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 5).attackbox frame.tex_h = 106 frame.tex_index = 512 frame.tex_offset_x = 68 frame.tex_offset_y = 205 frame.tex_w = 103 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 45 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 7, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 6).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 6).attackbox frame.tex_h = 106 frame.tex_index = 513 frame.tex_offset_x = 62 frame.tex_offset_y = 203 frame.tex_w = 103 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 45 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 8, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 7).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 7).attackbox frame.tex_h = 106 frame.tex_index = 512 frame.tex_offset_x = 68 frame.tex_offset_y = 205 frame.tex_w = 103 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 45 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 9, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 8).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 8).attackbox frame.tex_h = 106 frame.tex_index = 513 frame.tex_offset_x = 62 frame.tex_offset_y = 203 frame.tex_w = 103 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 45 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 10, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 9).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 9).attackbox frame.tex_h = 106 frame.tex_index = 512 frame.tex_offset_x = 68 frame.tex_offset_y = 205 frame.tex_w = 103 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 10 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 45 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 11, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 10).hurtbox[1] frame.attackbox = pat:get_frame(392, 0, 10).attackbox frame.tex_h = 106 frame.tex_index = 513 frame.tex_offset_x = 62 frame.tex_offset_y = 203 frame.tex_w = 103 frame.tex_x = 0 frame.tex_y = 0 set_aflag(frame, 3076) frame.attack_level = 2 frame.card_gain_block = 60 frame.card_gain_hit = 80 frame.chip_damage = 0 frame.combo_correction = 1 frame.data_format = 0 frame.hit_effect = 3 frame.sp_damage = 200 frame.unknown_9 = 100 frame.damage = 500 frame.hitstop_enemy = 15 frame.blockstop_enemy = 10 frame.proration = 920 frame.limit = 0 frame.hit_ani_ground = 72 frame.hit_ani_air = 72 frame.hitstop_self = 5 frame.blockstop_self = 10 frame.blockstop_self = 5 frame.blockstop_enemy = 5 frame.untech = 45 frame.launch_vector_x = 500 frame.launch_vector_y = 3000 frame.hit_sfx = 3 set_aflag(frame, AF_HIGHBLOCK_OK) set_aflag(frame, AF_LOWBLOCK_OK) unset_aflag(frame, AF_AIR_BLOCKABLE) end) pat:update_frame(408, 0, 12, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 11).hurtbox[1] frame.tex_h = 104 frame.tex_index = 521 frame.tex_offset_x = 60 frame.tex_offset_y = 203 frame.tex_w = 92 frame.tex_x = 0 frame.tex_y = 0 end) for frame = 13, 15 do pat:update_frame(408, 0, frame, function(frame) frame.hurtbox[1] = pat:get_frame(392, 0, 12).hurtbox[1] frame.tex_h = 100 frame.tex_index = 524 frame.tex_offset_x = 53 frame.tex_offset_y = 189 frame.tex_w = 81 frame.tex_x = 0 frame.tex_y = 0 end) end for frame = 8, 11 do -- pat:update_frame(505, 3, frame, function(frame) -- show_message_box(table.tostring(frame)) -- end) end end function mods.modifydestruction(pat) pat:update_frame(612, 3, 4, function(frame) frame.attackbox[1] = { x1=0, y1=-300, x2=300, y2=0 } end) pat:update_frame(612, 4, 4, function(frame) frame.attackbox[1] = { x1=0, y1=-400, x2=500, y2=0 } end) end function mods.maketaunt(pat) local onum = pat:get_frame_count(0, 0) local src = pat:get_frame(0, 0, pat:get_frame_count(0, 0) - 1) local oframe = src.duration local loop = 0 for count = 0, onum - 1 do pat:split_frame(0, 0, (onum*(loop + 1)) - 1, oframe, 1) end for idx = 0, onum - 1 do local src = pat:get_frame(0, 0, idx) pat:update_frame(0, 0, (onum*(loop + 1) + idx) , function(frame) copy_sprite(frame, src) frame.duration = src.duration end) end local num = pat:get_frame_count(0, 0) local src = pat:get_frame(0, 0, pat:get_frame_count(0, 0) - 1) local oframe = src.duration for count = 0, 26 do pat:split_frame(0, 0, num - 1, oframe, 1) end for idx = 0, 1 do local src = pat:get_frame(500, 0, idx) pat:update_frame(0, 0, num + idx, function(frame) copy_sprite(frame, src) frame.duration = src.duration end) end for idx = 2, 8 do local src = pat:get_frame(500, 1, idx - 2) pat:update_frame(0, 0, num + idx, function(frame) copy_sprite(frame, src) frame.duration = src.duration + 1 end) end for idx = 9, 15 do local src = pat:get_frame(500, 1, idx - 9) pat:update_frame(0, 0, num + idx, function(frame) copy_sprite(frame, src) frame.duration = src.duration + 1 end) end local src = pat:get_frame(500, 1, 0) pat:update_frame(0, 0, num + 16, function(frame) copy_sprite(frame, src) frame.duration = src.duration + 1 end) for idx = 17, 26 do local src = pat:get_frame(501, 2, idx - 17) pat:update_frame(0, 0, num + idx, function(frame) copy_sprite(frame, src) frame.duration = src.duration end) end end return function(pat) mods.maketaunt(pat) -- mods.modifydestruction(pat) mods.modify66bsprite(pat) mods.modifygigasuika(pat) -- mods.global(pat) mods.modifyfatuus(pat) -- mods.modifything(pat) mods.modifygnome(pat) mods.modifymist(pat) -- mods.blockdirection66a(pat) mods.modify1card(pat) mods.modify_spiritbomb(pat) mods.modify_reversaluntech(pat) mods.modifygrab(pat) mods.j6a_untech(pat) mods.testingshit(pat) mods.armor236(pat) mods.modify_j6a_untech(pat) mods.threestepsuntech(pat) mods.modifygrabstartup(pat) mods.modify_chains_duration(pat) mods.modify_j623startup(pat) --untech* mods.modify_fireball_untech(pat) mods.modify_j5a_untech(pat) mods.modify_dial_a_untech(pat) mods.add_dive_knockdown(pat) mods.add_2B_groundbounce(pat) mods.add_j5a_untech(pat) mods.skillcancel(pat) if config:get("global", "4A/2A", "melty-style jabs") then mods.cancel(pat) end end