From b23a6f15399872dd0a84ba1fd6a40ff4ab81156f Mon Sep 17 00:00:00 2001 From: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com> Date: Fri, 23 Jul 2021 03:45:39 +0100 Subject: [PATCH] Automatically add Init data to actors (#216) * Improve match in EnFirefly_Draw * Vestigial fishing files, add enums * Improve scripts, add ColChkInfo one * Some minor actor cleanup (static etc) * C file for Fishing, remove some local vars from variables.h * Remove comma and format * Newline * Review suggestions * Fix colchkinfoinit, add damage_table * DMG macros, format existing DamageTables * Convert preset damage tables to new format * Minor tweak to colchkinfoinit output * Manually add Fishing data and Syokudai struct vars * Automatically import data * Fix to use #if 0 * Format * Name cylinders in obj_syokudai.h * correct some ichains * Fix top-of-file comments * Redo files to include externs * Fix Fishing * #if(0) -> #if 0 * Fix mysteriously wiped actors (I blame VSCode) --- .../actors/ovl_Arrow_Fire/z_arrow_fire.c | 15 +- .../actors/ovl_Arrow_Ice/z_arrow_ice.c | 13 +- .../actors/ovl_Arrow_Light/z_arrow_light.c | 13 +- .../ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c | 34 +- .../ovl_Bg_Botihasira/z_bg_botihasira.c | 15 +- .../actors/ovl_Bg_Breakwall/z_bg_breakwall.c | 16 +- .../ovl_Bg_Crace_Movebg/z_bg_crace_movebg.c | 5 +- .../ovl_Bg_Ctower_Gear/z_bg_ctower_gear.c | 2 +- .../ovl_Bg_Ctower_Rot/z_bg_ctower_rot.c | 2 +- .../ovl_Bg_Danpei_Movebg/z_bg_danpei_movebg.c | 16 +- .../ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c | 14 +- .../z_bg_dblue_elevator.c | 16 +- .../ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c | 5 +- .../z_bg_dblue_waterfall.c | 25 +- .../ovl_Bg_Dkjail_Ivy/z_bg_dkjail_ivy.c | 25 +- .../ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c | 5 +- .../actors/ovl_Bg_F40_Block/z_bg_f40_block.c | 16 +- .../actors/ovl_Bg_F40_Flift/z_bg_f40_flift.c | 15 +- .../ovl_Bg_F40_Switch/z_bg_f40_switch.c | 16 +- .../ovl_Bg_F40_Swlift/z_bg_f40_swlift.c | 15 +- .../actors/ovl_Bg_Fire_Wall/z_bg_fire_wall.c | 20 +- .../actors/ovl_Bg_Fu_Mizu/z_bg_fu_mizu.c | 5 +- .../actors/ovl_Bg_Goron_Oyu/z_bg_goron_oyu.c | 5 +- .../ovl_Bg_Haka_Bombwall/z_bg_haka_bombwall.c | 25 +- .../z_bg_hakugin_bombwall.c | 23 +- .../z_bg_hakugin_elvpole.c | 5 +- .../ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c | 22 +- .../z_bg_hakugin_switch.c | 34 +- .../actors/ovl_Bg_Icefloe/z_bg_icefloe.c | 13 +- .../ovl_Bg_Ikana_Block/z_bg_ikana_block.c | 16 +- .../z_bg_ikana_bombwall.c | 34 +- .../ovl_Bg_Ikana_Dharma/z_bg_ikana_dharma.c | 25 +- .../ovl_Bg_Ikana_Mirror/z_bg_ikana_mirror.c | 83 +++- .../z_bg_ikana_rotaryroom.c | 51 ++- .../actors/ovl_Bg_Ikninside/z_bg_ikninside.c | 15 +- .../ovl_Bg_Iknv_Doukutu/z_bg_iknv_doukutu.c | 5 +- .../actors/ovl_Bg_Ingate/z_bg_ingate.c | 5 +- .../ovl_Bg_Inibs_Movebg/z_bg_inibs_movebg.c | 13 +- .../ovl_Bg_Keikoku_Saku/z_bg_keikoku_saku.c | 5 +- .../ovl_Bg_Kin2_Bombwall/z_bg_kin2_bombwall.c | 25 +- .../ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c | 39 +- .../ovl_Bg_Kin2_Shelf/z_bg_kin2_shelf.c | 13 +- .../actors/ovl_Bg_Ladder/z_bg_ladder.c | 1 + .../ovl_Bg_Last_Bwall/z_bg_last_bwall.c | 34 +- .../actors/ovl_Bg_Numa_Hana/z_bg_numa_hana.c | 25 +- .../ovl_Bg_Open_Shutter/z_bg_open_shutter.c | 16 +- .../actors/ovl_Bg_Open_Spot/z_bg_open_spot.c | 16 +- .../ovl_Bg_Sinkai_Kabe/z_bg_sinkai_kabe.c | 5 +- .../actors/ovl_Bg_Spdweb/z_bg_spdweb.c | 64 ++- .../ovl_Bg_Spout_Fire/z_bg_spout_fire.c | 20 +- .../actors/ovl_Bg_Umajump/z_bg_umajump.c | 15 +- src/overlays/actors/ovl_Boss_01/z_boss_01.c | 220 +++++++++- src/overlays/actors/ovl_Boss_02/z_boss_02.c | 213 +++++++++- src/overlays/actors/ovl_Boss_03/z_boss_03.c | 60 ++- src/overlays/actors/ovl_Boss_04/z_boss_04.c | 78 +++- src/overlays/actors/ovl_Boss_05/z_boss_05.c | 137 ++++++- src/overlays/actors/ovl_Boss_06/z_boss_06.c | 53 ++- src/overlays/actors/ovl_Boss_07/z_boss_07.c | 381 +++++++++++++++++- .../actors/ovl_Boss_Hakugin/z_boss_hakugin.c | 183 ++++++++- .../actors/ovl_Demo_Effect/z_demo_effect.c | 5 +- .../actors/ovl_Demo_Getitem/z_demo_getitem.c | 5 +- .../actors/ovl_Demo_Kankyo/z_demo_kankyo.c | 5 +- .../actors/ovl_Demo_Moonend/z_demo_moonend.c | 5 +- .../actors/ovl_Demo_Syoten/z_demo_syoten.c | 5 +- .../actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c | 5 +- src/overlays/actors/ovl_Dm_Ah/z_dm_ah.c | 5 +- src/overlays/actors/ovl_Dm_Al/z_dm_al.c | 5 +- src/overlays/actors/ovl_Dm_An/z_dm_an.c | 5 +- src/overlays/actors/ovl_Dm_Bal/z_dm_bal.c | 5 +- .../actors/ovl_Dm_Char00/z_dm_char00.c | 5 +- .../actors/ovl_Dm_Char01/z_dm_char01.c | 13 +- .../actors/ovl_Dm_Char02/z_dm_char02.c | 5 +- .../actors/ovl_Dm_Char03/z_dm_char03.c | 5 +- .../actors/ovl_Dm_Char04/z_dm_char04.c | 5 +- .../actors/ovl_Dm_Char05/z_dm_char05.c | 5 +- .../actors/ovl_Dm_Char06/z_dm_char06.c | 5 +- .../actors/ovl_Dm_Char07/z_dm_char07.c | 2 +- .../actors/ovl_Dm_Char08/z_dm_char08.c | 15 +- .../actors/ovl_Dm_Char09/z_dm_char09.c | 5 +- src/overlays/actors/ovl_Dm_Gm/z_dm_gm.c | 5 +- src/overlays/actors/ovl_Dm_Hina/z_dm_hina.c | 5 +- .../actors/ovl_Dm_Opstage/z_dm_opstage.c | 13 +- src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c | 58 ++- src/overlays/actors/ovl_Dm_Tag/z_dm_tag.c | 5 +- src/overlays/actors/ovl_Dm_Tsg/z_dm_tsg.c | 5 +- src/overlays/actors/ovl_Dm_Zl/z_dm_zl.c | 5 +- .../actors/ovl_Door_Shutter/z_door_shutter.c | 16 +- .../actors/ovl_Door_Warp1/z_door_warp1.c | 5 +- .../actors/ovl_Eff_Change/z_eff_change.c | 5 +- src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c | 2 +- .../z_eff_kamejima_wave.c | 5 +- .../actors/ovl_Eff_Lastday/z_eff_lastday.c | 5 +- src/overlays/actors/ovl_Eff_Stk/z_eff_stk.c | 5 +- .../actors/ovl_Eff_Zoraband/z_eff_zoraband.c | 5 +- src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c | 14 +- src/overlays/actors/ovl_Elf_Msg2/z_elf_msg2.c | 14 +- src/overlays/actors/ovl_Elf_Msg3/z_elf_msg3.c | 14 +- src/overlays/actors/ovl_Elf_Msg4/z_elf_msg4.c | 14 +- src/overlays/actors/ovl_Elf_Msg5/z_elf_msg5.c | 14 +- src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c | 5 +- src/overlays/actors/ovl_En_Ah/z_en_ah.c | 20 +- .../ovl_En_Akindonuts/z_en_akindonuts.c | 23 +- src/overlays/actors/ovl_En_Al/z_en_al.c | 20 +- src/overlays/actors/ovl_En_Am/z_en_am.c | 77 +++- src/overlays/actors/ovl_En_An/z_en_an.c | 20 +- src/overlays/actors/ovl_En_And/z_en_and.c | 5 +- src/overlays/actors/ovl_En_Ani/z_en_ani.c | 23 +- .../actors/ovl_En_Aob_01/z_en_aob_01.c | 15 +- src/overlays/actors/ovl_En_Arrow/z_en_arrow.c | 22 +- .../ovl_En_Attack_Niw/z_en_attack_niw.c | 15 +- src/overlays/actors/ovl_En_Az/z_en_az.c | 15 +- src/overlays/actors/ovl_En_Baba/z_en_baba.c | 58 ++- src/overlays/actors/ovl_En_Baguo/z_en_baguo.c | 61 ++- src/overlays/actors/ovl_En_Bal/z_en_bal.c | 66 ++- src/overlays/actors/ovl_En_Bat/z_en_bat.c | 68 +++- src/overlays/actors/ovl_En_Bb/z_en_bb.c | 66 ++- .../actors/ovl_En_Bba_01/z_en_bba_01.c | 58 ++- .../actors/ovl_En_Bbfall/z_en_bbfall.c | 82 +++- src/overlays/actors/ovl_En_Bee/z_en_bee.c | 53 ++- src/overlays/actors/ovl_En_Bh/z_en_bh.c | 5 +- .../actors/ovl_En_Bigokuta/z_en_bigokuta.c | 40 +- .../actors/ovl_En_Bigpamet/z_en_bigpamet.c | 69 +++- src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c | 66 ++- .../actors/ovl_En_Bigslime/z_en_bigslime.c | 68 +++- src/overlays/actors/ovl_En_Bjt/z_en_bjt.c | 20 +- src/overlays/actors/ovl_En_Bom/z_en_bom.c | 58 ++- .../ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c | 5 +- .../actors/ovl_En_Bom_Chu/z_en_bom_chu.c | 23 +- .../actors/ovl_En_Bombal/z_en_bombal.c | 15 +- .../actors/ovl_En_Bombers/z_en_bombers.c | 15 +- .../actors/ovl_En_Bombers2/z_en_bombers2.c | 15 +- src/overlays/actors/ovl_En_Bombf/z_en_bombf.c | 32 +- .../actors/ovl_En_Bomjima/z_en_bomjima.c | 15 +- .../actors/ovl_En_Bomjimb/z_en_bomjimb.c | 15 +- src/overlays/actors/ovl_En_Boom/z_en_boom.c | 23 +- src/overlays/actors/ovl_En_Box/z_en_box.c | 13 +- src/overlays/actors/ovl_En_Bsb/z_en_bsb.c | 85 +++- .../actors/ovl_En_Bubble/z_en_bubble.c | 32 +- src/overlays/actors/ovl_En_Butte/z_en_butte.c | 33 +- .../actors/ovl_En_Clear_Tag/z_en_clear_tag.c | 2 +- .../actors/ovl_En_Cne_01/z_en_cne_01.c | 58 ++- .../actors/ovl_En_Col_Man/z_en_col_man.c | 15 +- src/overlays/actors/ovl_En_Cow/z_en_cow.c | 15 +- src/overlays/actors/ovl_En_Crow/z_en_crow.c | 76 +++- src/overlays/actors/ovl_En_Dai/z_en_dai.c | 5 +- src/overlays/actors/ovl_En_Daiku/z_en_daiku.c | 15 +- .../actors/ovl_En_Daiku2/z_en_daiku2.c | 15 +- src/overlays/actors/ovl_En_Death/z_en_death.c | 107 ++++- .../actors/ovl_En_Dekubaba/z_en_dekubaba.c | 97 ++++- .../actors/ovl_En_Dekunuts/z_en_dekunuts.c | 67 ++- .../ovl_En_Demo_heishi/z_en_demo_heishi.c | 15 +- src/overlays/actors/ovl_En_Dg/z_en_dg.c | 65 ++- .../actors/ovl_En_Dinofos/z_en_dinofos.c | 117 +++++- src/overlays/actors/ovl_En_Dnb/z_en_dnb.c | 5 +- src/overlays/actors/ovl_En_Dnh/z_en_dnh.c | 5 +- src/overlays/actors/ovl_En_Dnk/z_en_dnk.c | 58 ++- src/overlays/actors/ovl_En_Dno/z_en_dno.c | 23 +- src/overlays/actors/ovl_En_Dnp/z_en_dnp.c | 20 +- src/overlays/actors/ovl_En_Dnq/z_en_dnq.c | 20 +- src/overlays/actors/ovl_En_Dns/z_en_dns.c | 20 +- .../actors/ovl_En_Dodongo/z_en_dodongo.c | 161 +++++++- src/overlays/actors/ovl_En_Door/z_en_door.c | 16 +- .../actors/ovl_En_Door_Etc/z_en_door_etc.c | 25 +- .../actors/ovl_En_Dragon/z_en_dragon.c | 89 +++- src/overlays/actors/ovl_En_Drs/z_en_drs.c | 20 +- src/overlays/actors/ovl_En_Ds2n/z_en_ds2n.c | 5 +- src/overlays/actors/ovl_En_Dt/z_en_dt.c | 15 +- .../actors/ovl_En_Egblock/z_en_egblock.c | 5 +- src/overlays/actors/ovl_En_Egol/z_en_egol.c | 107 ++++- src/overlays/actors/ovl_En_Elf/z_en_elf.c | 5 +- .../actors/ovl_En_Elfbub/z_en_elfbub.c | 15 +- .../actors/ovl_En_Elfgrp/z_en_elfgrp.c | 5 +- .../actors/ovl_En_Elforg/z_en_elforg.c | 15 +- .../actors/ovl_En_Encount1/z_en_encount1.c | 5 +- .../actors/ovl_En_Encount3/z_en_encount3.c | 5 +- .../actors/ovl_En_Encount4/z_en_encount4.c | 5 +- .../ovl_En_Ending_Hero6/z_en_ending_hero6.c | 5 +- .../actors/ovl_En_Estone/z_en_estone.c | 15 +- src/overlays/actors/ovl_En_Fall/z_en_fall.c | 5 +- src/overlays/actors/ovl_En_Fall2/z_en_fall2.c | 5 +- src/overlays/actors/ovl_En_Famos/z_en_famos.c | 53 ++- src/overlays/actors/ovl_En_Fg/z_en_fg.c | 2 +- src/overlays/actors/ovl_En_Fish/z_en_fish.c | 32 +- src/overlays/actors/ovl_En_Fish2/z_en_fish2.c | 27 +- .../actors/ovl_En_Fishing/z_en_fishing.c | 75 +++- .../actors/ovl_En_Floormas/z_en_floormas.c | 67 ++- src/overlays/actors/ovl_En_Fr/z_en_fr.c | 5 +- src/overlays/actors/ovl_En_Fu/z_en_fu.c | 15 +- .../actors/ovl_En_Fu_Kago/z_en_fu_kago.c | 15 +- .../actors/ovl_En_Fu_Mato/z_en_fu_mato.c | 15 +- src/overlays/actors/ovl_En_Fz/z_en_fz.c | 81 +++- .../actors/ovl_En_Gakufu/z_en_gakufu.c | 5 +- .../actors/ovl_En_Gamelupy/z_en_gamelupy.c | 15 +- src/overlays/actors/ovl_En_Gb2/z_en_gb2.c | 23 +- src/overlays/actors/ovl_En_Ge1/z_en_ge1.c | 15 +- src/overlays/actors/ovl_En_Ge2/z_en_ge2.c | 15 +- src/overlays/actors/ovl_En_Ge3/z_en_ge3.c | 15 +- src/overlays/actors/ovl_En_Geg/z_en_geg.c | 67 ++- src/overlays/actors/ovl_En_Gg/z_en_gg.c | 58 ++- src/overlays/actors/ovl_En_Gg2/z_en_gg2.c | 5 +- src/overlays/actors/ovl_En_Giant/z_en_giant.c | 5 +- src/overlays/actors/ovl_En_Gk/z_en_gk.c | 58 ++- src/overlays/actors/ovl_En_Gm/z_en_gm.c | 29 +- src/overlays/actors/ovl_En_Go/z_en_go.c | 76 +++- .../actors/ovl_En_Goroiwa/z_en_goroiwa.c | 39 +- .../ovl_En_Grasshopper/z_en_grasshopper.c | 65 ++- src/overlays/actors/ovl_En_Gs/z_en_gs.c | 65 ++- .../ovl_En_Guard_Nuts/z_en_guard_nuts.c | 15 +- .../actors/ovl_En_Hakurock/z_en_hakurock.c | 20 +- .../actors/ovl_En_Hanabi/z_en_hanabi.c | 5 +- src/overlays/actors/ovl_En_Hata/z_en_hata.c | 5 +- .../actors/ovl_En_Heishi/z_en_heishi.c | 15 +- src/overlays/actors/ovl_En_Hg/z_en_hg.c | 58 ++- src/overlays/actors/ovl_En_Hgo/z_en_hgo.c | 20 +- .../ovl_En_Hidden_Nuts/z_en_hidden_nuts.c | 15 +- .../actors/ovl_En_Hint_Skb/z_en_hint_skb.c | 78 +++- .../actors/ovl_En_Hit_Tag/z_en_hit_tag.c | 15 +- src/overlays/actors/ovl_En_Holl/z_en_holl.c | 15 +- .../actors/ovl_En_Honotrap/z_en_honotrap.c | 50 ++- src/overlays/actors/ovl_En_Horse/z_en_horse.c | 54 ++- .../z_en_horse_game_check.c | 14 +- .../z_en_horse_link_child.c | 35 +- src/overlays/actors/ovl_En_Hs/z_en_hs.c | 15 +- src/overlays/actors/ovl_En_Ig/z_en_ig.c | 29 +- src/overlays/actors/ovl_En_Ik/z_en_ik.c | 135 ++++++- src/overlays/actors/ovl_En_In/z_en_in.c | 2 +- .../actors/ovl_En_Insect/z_en_insect.c | 33 +- .../actors/ovl_En_Invadepoh/z_en_invadepoh.c | 4 +- .../z_en_invadepoh_demo.c | 61 ++- .../z_en_invisible_ruppe.c | 15 +- src/overlays/actors/ovl_En_Ishi/z_en_ishi.c | 51 ++- src/overlays/actors/ovl_En_Ja/z_en_ja.c | 20 +- .../actors/ovl_En_Jc_Mato/z_en_jc_mato.c | 2 +- src/overlays/actors/ovl_En_Jg/z_en_jg.c | 58 ++- .../actors/ovl_En_Jgame_Tsn/z_en_jgame_tsn.c | 15 +- src/overlays/actors/ovl_En_Js/z_en_js.c | 15 +- src/overlays/actors/ovl_En_Jso/z_en_jso.c | 62 ++- src/overlays/actors/ovl_En_Jso2/z_en_jso2.c | 62 ++- .../actors/ovl_En_Kaizoku/z_en_kaizoku.c | 62 ++- .../actors/ovl_En_Kakasi/z_en_kakasi.c | 15 +- src/overlays/actors/ovl_En_Kame/z_en_kame.c | 67 ++- .../actors/ovl_En_Kanban/z_en_kanban.c | 15 +- .../actors/ovl_En_Karebaba/z_en_karebaba.c | 75 +++- src/overlays/actors/ovl_En_Kbt/z_en_kbt.c | 5 +- .../actors/ovl_En_Kendo_Js/z_en_kendo_js.c | 20 +- src/overlays/actors/ovl_En_Kgy/z_en_kgy.c | 5 +- src/overlays/actors/ovl_En_Kitan/z_en_kitan.c | 15 +- .../actors/ovl_En_Knight/z_en_knight.c | 172 +++++++- .../actors/ovl_En_Kujiya/z_en_kujiya.c | 5 +- src/overlays/actors/ovl_En_Kusa/z_en_kusa.c | 32 +- src/overlays/actors/ovl_En_Kusa2/z_en_kusa2.c | 27 +- .../actors/ovl_En_Lift_Nuts/z_en_lift_nuts.c | 20 +- src/overlays/actors/ovl_En_Light/z_en_light.c | 5 +- .../actors/ovl_En_Look_Nuts/z_en_look_nuts.c | 53 ++- .../actors/ovl_En_M_Thunder/z_en_m_thunder.c | 15 +- src/overlays/actors/ovl_En_Ma4/z_en_ma4.c | 2 +- .../actors/ovl_En_Ma_Yts/z_en_ma_yts.c | 2 +- src/overlays/actors/ovl_En_Mag/z_en_mag.c | 5 +- .../actors/ovl_En_Maruta/z_en_maruta.c | 58 ++- .../actors/ovl_En_Minideath/z_en_minideath.c | 82 +++- .../actors/ovl_En_Minislime/z_en_minislime.c | 58 ++- src/overlays/actors/ovl_En_Mk/z_en_mk.c | 15 +- src/overlays/actors/ovl_En_Mkk/z_en_mkk.c | 67 ++- src/overlays/actors/ovl_En_Mm/z_en_mm.c | 23 +- src/overlays/actors/ovl_En_Mm2/z_en_mm2.c | 5 +- src/overlays/actors/ovl_En_Mm3/z_en_mm3.c | 20 +- src/overlays/actors/ovl_En_Mnk/z_en_mnk.c | 15 +- src/overlays/actors/ovl_En_Ms/z_en_ms.c | 23 +- .../actors/ovl_En_Mt_tag/z_en_mt_tag.c | 5 +- .../actors/ovl_En_Mushi2/z_en_mushi2.c | 33 +- src/overlays/actors/ovl_En_Muto/z_en_muto.c | 15 +- src/overlays/actors/ovl_En_Nb/z_en_nb.c | 20 +- .../actors/ovl_En_Neo_Reeba/z_en_neo_reeba.c | 53 ++- .../actors/ovl_En_Nimotsu/z_en_nimotsu.c | 15 +- src/overlays/actors/ovl_En_Nwc/z_en_nwc.c | 5 +- .../ovl_En_Okarina_Tag/z_en_okarina_tag.c | 5 +- src/overlays/actors/ovl_En_Okuta/z_en_okuta.c | 75 +++- .../actors/ovl_En_Onpuman/z_en_onpuman.c | 15 +- src/overlays/actors/ovl_En_Osk/z_en_osk.c | 5 +- src/overlays/actors/ovl_En_Osn/z_en_osn.c | 65 ++- src/overlays/actors/ovl_En_Ossan/z_en_ossan.c | 13 +- src/overlays/actors/ovl_En_Ot/z_en_ot.c | 24 +- src/overlays/actors/ovl_En_Owl/z_en_owl.c | 25 +- .../actors/ovl_En_Pamera/z_en_pamera.c | 20 +- src/overlays/actors/ovl_En_Paper/z_en_paper.c | 5 +- src/overlays/actors/ovl_En_Part/z_en_part.c | 5 +- .../actors/ovl_En_Peehat/z_en_peehat.c | 103 ++++- src/overlays/actors/ovl_En_Pm/z_en_pm.c | 29 +- .../ovl_En_Po_Composer/z_en_po_composer.c | 82 +++- .../ovl_En_Po_Sisters/z_en_po_sisters.c | 66 ++- src/overlays/actors/ovl_En_Poh/z_en_poh.c | 83 +++- src/overlays/actors/ovl_En_Pp/z_en_pp.c | 87 +++- src/overlays/actors/ovl_En_Pr/z_en_pr.c | 53 ++- src/overlays/actors/ovl_En_Pr2/z_en_pr2.c | 53 ++- src/overlays/actors/ovl_En_Prz/z_en_prz.c | 53 ++- src/overlays/actors/ovl_En_Pst/z_en_pst.c | 20 +- .../actors/ovl_En_Racedog/z_en_racedog.c | 65 ++- src/overlays/actors/ovl_En_Raf/z_en_raf.c | 53 ++- .../actors/ovl_En_Rail_Skb/z_en_rail_skb.c | 78 +++- .../actors/ovl_En_Railgibud/z_en_railgibud.c | 67 ++- src/overlays/actors/ovl_En_Rat/z_en_rat.c | 67 ++- src/overlays/actors/ovl_En_Rd/z_en_rd.c | 62 ++- .../actors/ovl_En_Recepgirl/z_en_recepgirl.c | 14 +- src/overlays/actors/ovl_En_Rg/z_en_rg.c | 67 ++- .../ovl_En_River_Sound/z_en_river_sound.c | 5 +- src/overlays/actors/ovl_En_Rr/z_en_rr.c | 78 +++- src/overlays/actors/ovl_En_Ru/z_en_ru.c | 58 ++- .../actors/ovl_En_Ruppecrow/z_en_ruppecrow.c | 74 +++- src/overlays/actors/ovl_En_Rz/z_en_rz.c | 15 +- .../actors/ovl_En_S_Goro/z_en_s_goro.c | 58 ++- .../actors/ovl_En_Sc_Ruppe/z_en_sc_ruppe.c | 15 +- .../actors/ovl_En_Scopecrow/z_en_scopecrow.c | 23 +- .../actors/ovl_En_Scopenuts/z_en_scopenuts.c | 23 +- src/overlays/actors/ovl_En_Sda/z_en_sda.c | 5 +- .../actors/ovl_En_Sekihi/z_en_sekihi.c | 5 +- .../actors/ovl_En_Sellnuts/z_en_sellnuts.c | 23 +- src/overlays/actors/ovl_En_Shn/z_en_shn.c | 5 +- src/overlays/actors/ovl_En_Si/z_en_si.c | 58 ++- src/overlays/actors/ovl_En_Skb/z_en_skb.c | 73 +++- src/overlays/actors/ovl_En_Slime/z_en_slime.c | 66 ++- .../actors/ovl_En_Snowman/z_en_snowman.c | 76 +++- .../actors/ovl_En_Snowwd/z_en_snowwd.c | 15 +- src/overlays/actors/ovl_En_Sob1/z_en_sob1.c | 13 +- src/overlays/actors/ovl_En_Ssh/z_en_ssh.c | 46 ++- src/overlays/actors/ovl_En_St/z_en_st.c | 85 +++- src/overlays/actors/ovl_En_Sth/z_en_sth.c | 15 +- src/overlays/actors/ovl_En_Sth2/z_en_sth2.c | 5 +- .../ovl_En_Stone_heishi/z_en_stone_heishi.c | 15 +- .../ovl_En_Stop_heishi/z_en_stop_heishi.c | 15 +- .../actors/ovl_En_Stream/z_en_stream.c | 13 +- .../actors/ovl_En_Suttari/z_en_suttari.c | 58 ++- src/overlays/actors/ovl_En_Sw/z_en_sw.c | 101 ++++- .../ovl_En_Syateki_Crow/z_en_syateki_crow.c | 33 +- .../z_en_syateki_dekunuts.c | 24 +- .../ovl_En_Syateki_Man/z_en_syateki_man.c | 5 +- .../ovl_En_Syateki_Okuta/z_en_syateki_okuta.c | 23 +- .../ovl_En_Syateki_Wf/z_en_syateki_wf.c | 49 ++- src/overlays/actors/ovl_En_Tab/z_en_tab.c | 20 +- .../actors/ovl_En_Takaraya/z_en_takaraya.c | 14 +- src/overlays/actors/ovl_En_Talk/z_en_talk.c | 5 +- .../ovl_En_Talk_Gibud/z_en_talk_gibud.c | 67 ++- .../actors/ovl_En_Tanron1/z_en_tanron1.c | 5 +- .../actors/ovl_En_Tanron2/z_en_tanron2.c | 62 ++- .../actors/ovl_En_Tanron3/z_en_tanron3.c | 15 +- .../actors/ovl_En_Tanron4/z_en_tanron4.c | 5 +- .../actors/ovl_En_Tanron5/z_en_tanron5.c | 15 +- src/overlays/actors/ovl_En_Test/z_en_test.c | 5 +- src/overlays/actors/ovl_En_Test2/z_en_test2.c | 16 +- src/overlays/actors/ovl_En_Test3/z_en_test3.c | 5 +- src/overlays/actors/ovl_En_Test4/z_en_test4.c | 5 +- src/overlays/actors/ovl_En_Test5/z_en_test5.c | 5 +- src/overlays/actors/ovl_En_Test6/z_en_test6.c | 5 +- src/overlays/actors/ovl_En_Test7/z_en_test7.c | 5 +- src/overlays/actors/ovl_En_Tg/z_en_tg.c | 58 ++- .../actors/ovl_En_Thiefbird/z_en_thiefbird.c | 84 +++- .../actors/ovl_En_Time_Tag/z_en_time_tag.c | 5 +- src/overlays/actors/ovl_En_Tite/z_en_tite.c | 68 +++- src/overlays/actors/ovl_En_Tk/z_en_tk.c | 15 +- src/overlays/actors/ovl_En_Trt/z_en_trt.c | 13 +- src/overlays/actors/ovl_En_Trt2/z_en_trt2.c | 66 ++- src/overlays/actors/ovl_En_Tru/z_en_tru.c | 20 +- .../actors/ovl_En_Tru_Mt/z_en_tru_mt.c | 53 ++- src/overlays/actors/ovl_En_Tsn/z_en_tsn.c | 15 +- src/overlays/actors/ovl_En_Twig/z_en_twig.c | 16 +- .../actors/ovl_En_Viewer/z_en_viewer.c | 5 +- src/overlays/actors/ovl_En_Vm/z_en_vm.c | 96 ++++- .../actors/ovl_En_Wallmas/z_en_wallmas.c | 67 ++- .../actors/ovl_En_Warp_tag/z_en_warp_tag.c | 14 +- .../ovl_En_Water_Effect/z_en_water_effect.c | 5 +- .../actors/ovl_En_Wdhand/z_en_wdhand.c | 90 ++++- src/overlays/actors/ovl_En_Wf/z_en_wf.c | 142 ++++++- src/overlays/actors/ovl_En_Wiz/z_en_wiz.c | 144 ++++++- .../actors/ovl_En_Wiz_Brock/z_en_wiz_brock.c | 5 +- .../actors/ovl_En_Wiz_Fire/z_en_wiz_fire.c | 15 +- .../actors/ovl_En_Wood02/z_en_wood02.c | 15 +- src/overlays/actors/ovl_En_Yb/z_en_yb.c | 15 +- src/overlays/actors/ovl_En_Zl4/z_en_zl4.c | 5 +- src/overlays/actors/ovl_En_Zo/z_en_zo.c | 58 ++- src/overlays/actors/ovl_En_Zob/z_en_zob.c | 15 +- src/overlays/actors/ovl_En_Zod/z_en_zod.c | 15 +- src/overlays/actors/ovl_En_Zog/z_en_zog.c | 15 +- .../actors/ovl_En_Zoraegg/z_en_zoraegg.c | 5 +- src/overlays/actors/ovl_En_Zos/z_en_zos.c | 15 +- src/overlays/actors/ovl_En_Zot/z_en_zot.c | 15 +- src/overlays/actors/ovl_En_Zov/z_en_zov.c | 15 +- src/overlays/actors/ovl_En_Zow/z_en_zow.c | 15 +- .../ovl_Item_Etcetera/z_item_etcetera.c | 5 +- src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c | 42 +- src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c | 23 +- src/overlays/actors/ovl_Mir_Ray3/z_mir_ray3.c | 24 +- src/overlays/actors/ovl_Obj_Aqua/z_obj_aqua.c | 28 +- .../actors/ovl_Obj_Armos/z_obj_armos.c | 17 +- src/overlays/actors/ovl_Obj_Bean/z_obj_bean.c | 34 +- .../ovl_Obj_Bigicicle/z_obj_bigicicle.c | 32 +- .../ovl_Obj_Blockstop/z_obj_blockstop.c | 5 +- src/overlays/actors/ovl_Obj_Boat/z_obj_boat.c | 16 +- .../actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c | 39 +- src/overlays/actors/ovl_Obj_Chan/z_obj_chan.c | 22 +- .../actors/ovl_Obj_Chikuwa/z_obj_chikuwa.c | 16 +- src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c | 33 +- .../ovl_Obj_Danpeilift/z_obj_danpeilift.c | 16 +- src/overlays/actors/ovl_Obj_Demo/z_obj_demo.c | 5 +- .../actors/ovl_Obj_Dhouse/z_obj_dhouse.c | 16 +- src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c | 86 +++- .../actors/ovl_Obj_Dowsing/z_obj_dowsing.c | 5 +- .../actors/ovl_Obj_Driftice/z_obj_driftice.c | 13 +- .../actors/ovl_Obj_Entotu/z_obj_entotu.c | 5 +- .../actors/ovl_Obj_Etcetera/z_obj_etcetera.c | 15 +- .../ovl_Obj_Fireshield/z_obj_fireshield.c | 24 +- .../ovl_Obj_Flowerpot/z_obj_flowerpot.c | 39 +- .../actors/ovl_Obj_Ghaka/z_obj_ghaka.c | 2 +- .../actors/ovl_Obj_Grass/z_obj_grass.c | 15 +- .../ovl_Obj_Grass_Carry/z_obj_grass_carry.c | 24 +- .../ovl_Obj_Grass_Unit/z_obj_grass_unit.c | 5 +- .../actors/ovl_Obj_Hakaisi/z_obj_hakaisi.c | 5 +- .../actors/ovl_Obj_Hamishi/z_obj_hamishi.c | 30 +- src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c | 1 + .../actors/ovl_Obj_Hariko/z_obj_hariko.c | 5 +- .../actors/ovl_Obj_Hsblock/z_obj_hsblock.c | 16 +- .../ovl_Obj_Hugebombiwa/z_obj_hugebombiwa.c | 24 +- .../actors/ovl_Obj_Hunsui/z_obj_hunsui.c | 5 +- .../actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c | 24 +- .../actors/ovl_Obj_Iceblock/z_obj_iceblock.c | 28 +- .../actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c | 5 +- .../ovl_Obj_Jgame_Light/z_obj_jgame_light.c | 15 +- .../ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c | 79 +++- .../actors/ovl_Obj_Kibako2/z_obj_kibako2.c | 25 +- .../actors/ovl_Obj_Kinoko/z_obj_kinoko.c | 5 +- .../actors/ovl_Obj_Kzsaku/z_obj_kzsaku.c | 5 +- src/overlays/actors/ovl_Obj_Lift/z_obj_lift.c | 17 +- .../ovl_Obj_Lightblock/z_obj_lightblock.c | 24 +- .../ovl_Obj_Lupygamelift/z_obj_lupygamelift.c | 16 +- .../ovl_Obj_Makekinsuta/z_obj_makekinsuta.c | 15 +- .../ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c | 5 +- src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c | 33 +- .../ovl_Obj_Moon_Stone/z_obj_moon_stone.c | 2 +- src/overlays/actors/ovl_Obj_Mure/z_obj_mure.c | 15 +- .../actors/ovl_Obj_Mure2/z_obj_mure2.c | 15 +- .../actors/ovl_Obj_Mure3/z_obj_mure3.c | 15 +- .../actors/ovl_Obj_Nozoki/z_obj_nozoki.c | 14 +- .../ovl_Obj_Ocarinalift/z_obj_ocarinalift.c | 17 +- .../actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c | 15 +- .../actors/ovl_Obj_Purify/z_obj_purify.c | 5 +- .../actors/ovl_Obj_Pzlblock/z_obj_pzlblock.c | 16 +- .../actors/ovl_Obj_Raillift/z_obj_raillift.c | 4 +- .../ovl_Obj_Roomtimer/z_obj_roomtimer.c | 5 +- .../actors/ovl_Obj_Rotlift/z_obj_rotlift.c | 16 +- .../actors/ovl_Obj_Shutter/z_obj_shutter.c | 5 +- .../ovl_Obj_Skateblock/z_obj_skateblock.c | 18 +- .../actors/ovl_Obj_Smork/z_obj_smork.c | 5 +- .../actors/ovl_Obj_Snowball/z_obj_snowball.c | 30 +- .../ovl_Obj_Snowball2/z_obj_snowball2.c | 35 +- .../actors/ovl_Obj_Sound/z_obj_sound.c | 5 +- .../ovl_Obj_Spidertent/z_obj_spidertent.c | 90 ++++- .../ovl_Obj_Spinyroll/z_obj_spinyroll.c | 51 ++- .../actors/ovl_Obj_Switch/z_obj_switch.c | 74 +++- .../actors/ovl_Obj_Swprize/z_obj_swprize.c | 5 +- .../actors/ovl_Obj_Syokudai/z_obj_syokudai.c | 34 +- .../actors/ovl_Obj_Syokudai/z_obj_syokudai.h | 3 +- .../z_obj_takaraya_wall.c | 22 +- src/overlays/actors/ovl_Obj_Taru/z_obj_taru.c | 25 +- src/overlays/actors/ovl_Obj_Toge/z_obj_toge.c | 25 +- .../ovl_Obj_Tokei_Tobira/z_obj_tokei_tobira.c | 16 +- .../ovl_Obj_Tokei_Turret/z_obj_tokei_turret.c | 14 +- .../actors/ovl_Obj_Tokeidai/z_obj_tokeidai.c | 5 +- .../actors/ovl_Obj_Toudai/z_obj_toudai.c | 5 +- src/overlays/actors/ovl_Obj_Tree/z_obj_tree.c | 58 ++- .../actors/ovl_Obj_Tsubo/z_obj_tsubo.c | 26 +- src/overlays/actors/ovl_Obj_Um/z_obj_um.c | 23 +- .../actors/ovl_Obj_Usiyane/z_obj_usiyane.c | 15 +- .../ovl_Obj_Vspinyroll/z_obj_vspinyroll.c | 23 +- .../ovl_Obj_Warpstone/z_obj_warpstone.c | 22 +- src/overlays/actors/ovl_Obj_Wind/z_obj_wind.c | 15 +- .../actors/ovl_Obj_Wturn/z_obj_wturn.c | 5 +- .../actors/ovl_Obj_Y2lift/z_obj_y2lift.c | 16 +- .../ovl_Obj_Y2shutter/z_obj_y2shutter.c | 16 +- src/overlays/actors/ovl_Obj_Yado/z_obj_yado.c | 13 +- src/overlays/actors/ovl_Obj_Yasi/z_obj_yasi.c | 16 +- .../ovl_Object_Kankyo/z_object_kankyo.c | 5 +- .../actors/ovl_Oceff_Spot/z_oceff_spot.c | 14 +- .../actors/ovl_Oceff_Storm/z_oceff_storm.c | 5 +- .../actors/ovl_Oceff_Wipe/z_oceff_wipe.c | 5 +- .../actors/ovl_Oceff_Wipe2/z_oceff_wipe2.c | 5 +- .../actors/ovl_Oceff_Wipe3/z_oceff_wipe3.c | 5 +- .../actors/ovl_Oceff_Wipe4/z_oceff_wipe4.c | 5 +- .../actors/ovl_Oceff_Wipe5/z_oceff_wipe5.c | 5 +- .../actors/ovl_Oceff_Wipe6/z_oceff_wipe6.c | 5 +- .../actors/ovl_Oceff_Wipe7/z_oceff_wipe7.c | 5 +- src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c | 15 +- tools/overlayhelpers/colchkinfoinit.py | 2 +- 490 files changed, 13388 insertions(+), 962 deletions(-) diff --git a/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c b/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c index 2bb11f0c0..9b4823f22 100644 --- a/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c +++ b/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c @@ -9,7 +9,15 @@ void ArrowFire_Destroy(Actor* thisx, GlobalContext* globalCtx); void ArrowFire_Update(Actor* thisx, GlobalContext* globalCtx); void ArrowFire_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80922230 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_TYPE_PLAYER, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0x08000000, 0x00, 0x02 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + const ActorInit Arrow_Fire_InitVars = { ACTOR_ARROW_FIRE, ACTORCAT_ITEMACTION, @@ -21,7 +29,10 @@ const ActorInit Arrow_Fire_InitVars = { (ActorFunc)ArrowFire_Update, (ActorFunc)ArrowFire_Draw, }; -*/ + + +extern ColliderQuadInit D_80922230; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Arrow_Fire_0x80920340/FireArrow_SetUpdateFunc.asm") diff --git a/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c b/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c index b9ddb4049..d2c4c755f 100644 --- a/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c +++ b/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c @@ -9,7 +9,7 @@ void ArrowIce_Destroy(Actor* thisx, GlobalContext* globalCtx); void ArrowIce_Update(Actor* thisx, GlobalContext* globalCtx); void ArrowIce_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Arrow_Ice_InitVars = { ACTOR_ARROW_ICE, ACTORCAT_ITEMACTION, @@ -21,7 +21,16 @@ const ActorInit Arrow_Ice_InitVars = { (ActorFunc)ArrowIce_Update, (ActorFunc)ArrowIce_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809241F0[] = { + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809241F0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Arrow_Ice_0x80922430/func_80922430.asm") diff --git a/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c b/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c index 4a372d9a3..32835a3e8 100644 --- a/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c +++ b/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c @@ -9,7 +9,7 @@ void ArrowLight_Destroy(Actor* thisx, GlobalContext* globalCtx); void ArrowLight_Update(Actor* thisx, GlobalContext* globalCtx); void ArrowLight_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Arrow_Light_InitVars = { ACTOR_ARROW_LIGHT, ACTORCAT_ITEMACTION, @@ -21,7 +21,16 @@ const ActorInit Arrow_Light_InitVars = { (ActorFunc)ArrowLight_Update, (ActorFunc)ArrowLight_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809260A0[] = { + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809260A0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Arrow_Light_0x80924300/func_80924300.asm") diff --git a/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c b/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c index 567d08db6..6db3e4938 100644 --- a/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c @@ -9,7 +9,7 @@ void BgAstrBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgAstrBombwall_Update(Actor* thisx, GlobalContext* globalCtx); void BgAstrBombwall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Astr_Bombwall_InitVars = { ACTOR_BG_ASTR_BOMBWALL, ACTORCAT_BG, @@ -21,7 +21,37 @@ const ActorInit Bg_Astr_Bombwall_InitVars = { (ActorFunc)BgAstrBombwall_Update, (ActorFunc)BgAstrBombwall_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_80C0A620[2] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -70.0f, 0.0f, 3.0f }, { 70.0f, 0.0f, 3.0f }, { -70.0f, 200.0f, 3.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 70.0f, 0.0f, 3.0f }, { 70.0f, 200.0f, 3.0f }, { -70.0f, 200.0f, 3.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80C0A698 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 2, D_80C0A620, // sTrisElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C0A6A8[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80C0A620[2]; +extern ColliderTrisInit D_80C0A698; +extern InitChainEntry D_80C0A6A8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Astr_Bombwall_0x80C09ED0/func_80C09ED0.asm") diff --git a/src/overlays/actors/ovl_Bg_Botihasira/z_bg_botihasira.c b/src/overlays/actors/ovl_Bg_Botihasira/z_bg_botihasira.c index ccdc6d039..f802879e3 100644 --- a/src/overlays/actors/ovl_Bg_Botihasira/z_bg_botihasira.c +++ b/src/overlays/actors/ovl_Bg_Botihasira/z_bg_botihasira.c @@ -9,7 +9,7 @@ void BgBotihasira_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgBotihasira_Update(Actor* thisx, GlobalContext* globalCtx); void BgBotihasira_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Botihasira_InitVars = { ACTOR_BG_BOTIHASIRA, ACTORCAT_ITEMACTION, @@ -21,7 +21,18 @@ const ActorInit Bg_Botihasira_InitVars = { (ActorFunc)BgBotihasira_Update, (ActorFunc)BgBotihasira_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B282F0 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 27, 80, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80B282F0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Botihasira_0x80B28080/BgBotihasira_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Breakwall/z_bg_breakwall.c b/src/overlays/actors/ovl_Bg_Breakwall/z_bg_breakwall.c index 616f41b1b..064496c0b 100644 --- a/src/overlays/actors/ovl_Bg_Breakwall/z_bg_breakwall.c +++ b/src/overlays/actors/ovl_Bg_Breakwall/z_bg_breakwall.c @@ -7,7 +7,7 @@ void BgBreakwall_Init(Actor* thisx, GlobalContext* globalCtx); void BgBreakwall_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Breakwall_InitVars = { ACTOR_BG_BREAKWALL, ACTORCAT_ITEMACTION, @@ -19,7 +19,19 @@ const ActorInit Bg_Breakwall_InitVars = { (ActorFunc)BgBreakwall_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808B82E0[] = { + ICHAIN_VEC3F(scale, 1, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern InitChainEntry D_808B82E0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Breakwall_0x808B7360/func_808B7360.asm") diff --git a/src/overlays/actors/ovl_Bg_Crace_Movebg/z_bg_crace_movebg.c b/src/overlays/actors/ovl_Bg_Crace_Movebg/z_bg_crace_movebg.c index da5ab5277..0156c38a1 100644 --- a/src/overlays/actors/ovl_Bg_Crace_Movebg/z_bg_crace_movebg.c +++ b/src/overlays/actors/ovl_Bg_Crace_Movebg/z_bg_crace_movebg.c @@ -9,7 +9,7 @@ void BgCraceMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgCraceMovebg_Update(Actor* thisx, GlobalContext* globalCtx); void BgCraceMovebg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Crace_Movebg_InitVars = { ACTOR_BG_CRACE_MOVEBG, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Crace_Movebg_InitVars = { (ActorFunc)BgCraceMovebg_Update, (ActorFunc)BgCraceMovebg_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Crace_Movebg_0x80A706F0/BgCraceMovebg_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Ctower_Gear/z_bg_ctower_gear.c b/src/overlays/actors/ovl_Bg_Ctower_Gear/z_bg_ctower_gear.c index e780bd5e9..48b02a870 100644 --- a/src/overlays/actors/ovl_Bg_Ctower_Gear/z_bg_ctower_gear.c +++ b/src/overlays/actors/ovl_Bg_Ctower_Gear/z_bg_ctower_gear.c @@ -1,6 +1,6 @@ /* * File: z_bg_ctower_gear.c - * Overlay: Bg_Ctower_Gear + * Overlay: ovl_Bg_Ctower_Gear * Description: Different Cogs/Organ inside Clock Tower */ diff --git a/src/overlays/actors/ovl_Bg_Ctower_Rot/z_bg_ctower_rot.c b/src/overlays/actors/ovl_Bg_Ctower_Rot/z_bg_ctower_rot.c index 1924e2f48..5ad930230 100644 --- a/src/overlays/actors/ovl_Bg_Ctower_Rot/z_bg_ctower_rot.c +++ b/src/overlays/actors/ovl_Bg_Ctower_Rot/z_bg_ctower_rot.c @@ -1,7 +1,7 @@ /* * File: z_bg_ctower_rot.c * Overlay: ovl_Bg_CtowerRot - * Description: Twisting path along with the Doors to Clocktower + * Description: Twisting path along with the Doors to Clock Tower */ #include "z_bg_ctower_rot.h" diff --git a/src/overlays/actors/ovl_Bg_Danpei_Movebg/z_bg_danpei_movebg.c b/src/overlays/actors/ovl_Bg_Danpei_Movebg/z_bg_danpei_movebg.c index 78d4da4fa..10474c41e 100644 --- a/src/overlays/actors/ovl_Bg_Danpei_Movebg/z_bg_danpei_movebg.c +++ b/src/overlays/actors/ovl_Bg_Danpei_Movebg/z_bg_danpei_movebg.c @@ -8,7 +8,7 @@ void BgDanpeiMovebg_Init(Actor* thisx, GlobalContext* globalCtx); void BgDanpeiMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDanpeiMovebg_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Danpei_Movebg_InitVars = { ACTOR_BG_DANPEI_MOVEBG, ACTORCAT_BG, @@ -20,7 +20,19 @@ const ActorInit Bg_Danpei_Movebg_InitVars = { (ActorFunc)BgDanpeiMovebg_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AF753C[] = { + ICHAIN_F32(uncullZoneScale, 1500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AF753C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Danpei_Movebg_0x80AF6DE0/func_80AF6DE0.asm") diff --git a/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c b/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c index 544fe757e..16aabb24a 100644 --- a/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c +++ b/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c @@ -9,7 +9,7 @@ void BgDblueBalance_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDblueBalance_Update(Actor* thisx, GlobalContext* globalCtx); void BgDblueBalance_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Dblue_Balance_InitVars = { ACTOR_BG_DBLUE_BALANCE, ACTORCAT_BG, @@ -21,7 +21,17 @@ const ActorInit Bg_Dblue_Balance_InitVars = { (ActorFunc)BgDblueBalance_Update, (ActorFunc)BgDblueBalance_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B83A98[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B83A98[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Dblue_Balance_0x80B823B0/func_80B823B0.asm") diff --git a/src/overlays/actors/ovl_Bg_Dblue_Elevator/z_bg_dblue_elevator.c b/src/overlays/actors/ovl_Bg_Dblue_Elevator/z_bg_dblue_elevator.c index 6855a8cd4..143d2b915 100644 --- a/src/overlays/actors/ovl_Bg_Dblue_Elevator/z_bg_dblue_elevator.c +++ b/src/overlays/actors/ovl_Bg_Dblue_Elevator/z_bg_dblue_elevator.c @@ -9,7 +9,7 @@ void BgDblueElevator_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDblueElevator_Update(Actor* thisx, GlobalContext* globalCtx); void BgDblueElevator_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Dblue_Elevator_InitVars = { ACTOR_BG_DBLUE_ELEVATOR, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Bg_Dblue_Elevator_InitVars = { (ActorFunc)BgDblueElevator_Update, (ActorFunc)BgDblueElevator_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B929EC[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 250, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 250, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B929EC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Dblue_Elevator_0x80B91F20/func_80B91F20.asm") diff --git a/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c b/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c index e9d2b6e75..a6f171e3d 100644 --- a/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c +++ b/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c @@ -9,7 +9,7 @@ void BgDblueMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDblueMovebg_Update(Actor* thisx, GlobalContext* globalCtx); void BgDblueMovebg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Dblue_Movebg_InitVars = { ACTOR_BG_DBLUE_MOVEBG, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Dblue_Movebg_InitVars = { (ActorFunc)BgDblueMovebg_Update, (ActorFunc)BgDblueMovebg_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Dblue_Movebg_0x80A29A80/func_80A29A80.asm") diff --git a/src/overlays/actors/ovl_Bg_Dblue_Waterfall/z_bg_dblue_waterfall.c b/src/overlays/actors/ovl_Bg_Dblue_Waterfall/z_bg_dblue_waterfall.c index a00fd98ac..b3dd893e0 100644 --- a/src/overlays/actors/ovl_Bg_Dblue_Waterfall/z_bg_dblue_waterfall.c +++ b/src/overlays/actors/ovl_Bg_Dblue_Waterfall/z_bg_dblue_waterfall.c @@ -9,7 +9,7 @@ void BgDblueWaterfall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDblueWaterfall_Update(Actor* thisx, GlobalContext* globalCtx); void BgDblueWaterfall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Dblue_Waterfall_InitVars = { ACTOR_BG_DBLUE_WATERFALL, ACTORCAT_PROP, @@ -21,7 +21,28 @@ const ActorInit Bg_Dblue_Waterfall_InitVars = { (ActorFunc)BgDblueWaterfall_Update, (ActorFunc)BgDblueWaterfall_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B85370 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00CBFBB0, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 50, 740, -740, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B853A8[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1500, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B85370; +extern InitChainEntry D_80B853A8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Dblue_Waterfall_0x80B83C80/func_80B83C80.asm") diff --git a/src/overlays/actors/ovl_Bg_Dkjail_Ivy/z_bg_dkjail_ivy.c b/src/overlays/actors/ovl_Bg_Dkjail_Ivy/z_bg_dkjail_ivy.c index 8d5fb3b14..aa0eb2efb 100644 --- a/src/overlays/actors/ovl_Bg_Dkjail_Ivy/z_bg_dkjail_ivy.c +++ b/src/overlays/actors/ovl_Bg_Dkjail_Ivy/z_bg_dkjail_ivy.c @@ -9,7 +9,7 @@ void BgDkjailIvy_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDkjailIvy_Update(Actor* thisx, GlobalContext* globalCtx); void BgDkjailIvy_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Dkjail_Ivy_InitVars = { ACTOR_BG_DKJAIL_IVY, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Bg_Dkjail_Ivy_InitVars = { (ActorFunc)BgDkjailIvy_Update, (ActorFunc)BgDkjailIvy_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ADE950 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01000200, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 20, 80, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ADE98C[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80ADE950; +extern InitChainEntry D_80ADE98C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Dkjail_Ivy_0x80ADE230/func_80ADE230.asm") diff --git a/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c b/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c index 3ec656608..994a72e35 100644 --- a/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c +++ b/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c @@ -8,7 +8,7 @@ void BgDyYoseizo_Init(Actor* thisx, GlobalContext* globalCtx); void BgDyYoseizo_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgDyYoseizo_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Dy_Yoseizo_InitVars = { ACTOR_BG_DY_YOSEIZO, ACTORCAT_PROP, @@ -20,7 +20,8 @@ const ActorInit Bg_Dy_Yoseizo_InitVars = { (ActorFunc)BgDyYoseizo_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Dy_Yoseizo_0x80A0A8A0/BgDyYoseizo_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_F40_Block/z_bg_f40_block.c b/src/overlays/actors/ovl_Bg_F40_Block/z_bg_f40_block.c index bfe8b4150..6d0003cc9 100644 --- a/src/overlays/actors/ovl_Bg_F40_Block/z_bg_f40_block.c +++ b/src/overlays/actors/ovl_Bg_F40_Block/z_bg_f40_block.c @@ -9,7 +9,7 @@ void BgF40Block_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgF40Block_Update(Actor* thisx, GlobalContext* globalCtx); void BgF40Block_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_F40_Block_InitVars = { ACTOR_BG_F40_BLOCK, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Bg_F40_Block_InitVars = { (ActorFunc)BgF40Block_Update, (ActorFunc)BgF40Block_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BC4668[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 400, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80BC4668[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_F40_Block_0x80BC3980/func_80BC3980.asm") diff --git a/src/overlays/actors/ovl_Bg_F40_Flift/z_bg_f40_flift.c b/src/overlays/actors/ovl_Bg_F40_Flift/z_bg_f40_flift.c index 2f30ccfb5..dcb643a15 100644 --- a/src/overlays/actors/ovl_Bg_F40_Flift/z_bg_f40_flift.c +++ b/src/overlays/actors/ovl_Bg_F40_Flift/z_bg_f40_flift.c @@ -9,7 +9,7 @@ void BgF40Flift_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgF40Flift_Update(Actor* thisx, GlobalContext* globalCtx); void BgF40Flift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_F40_Flift_InitVars = { ACTOR_BG_F40_FLIFT, ACTORCAT_BG, @@ -21,7 +21,18 @@ const ActorInit Bg_F40_Flift_InitVars = { (ActorFunc)BgF40Flift_Update, (ActorFunc)BgF40Flift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808D7830[] = { + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 5000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_808D7830[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_F40_Flift_0x808D7550/BgF40Flift_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_F40_Switch/z_bg_f40_switch.c b/src/overlays/actors/ovl_Bg_F40_Switch/z_bg_f40_switch.c index 5bbbd6216..de1717f10 100644 --- a/src/overlays/actors/ovl_Bg_F40_Switch/z_bg_f40_switch.c +++ b/src/overlays/actors/ovl_Bg_F40_Switch/z_bg_f40_switch.c @@ -9,7 +9,7 @@ void BgF40Switch_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgF40Switch_Update(Actor* thisx, GlobalContext* globalCtx); void BgF40Switch_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_F40_Switch_InitVars = { ACTOR_BG_F40_SWITCH, ACTORCAT_SWITCH, @@ -21,7 +21,19 @@ const ActorInit Bg_F40_Switch_InitVars = { (ActorFunc)BgF40Switch_Update, (ActorFunc)BgF40Switch_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BC4E04[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 123, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80BC4E04[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_F40_Switch_0x80BC47B0/func_80BC47B0.asm") diff --git a/src/overlays/actors/ovl_Bg_F40_Swlift/z_bg_f40_swlift.c b/src/overlays/actors/ovl_Bg_F40_Swlift/z_bg_f40_swlift.c index b2cd12176..2a309cc98 100644 --- a/src/overlays/actors/ovl_Bg_F40_Swlift/z_bg_f40_swlift.c +++ b/src/overlays/actors/ovl_Bg_F40_Swlift/z_bg_f40_swlift.c @@ -9,7 +9,7 @@ void BgF40Swlift_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgF40Swlift_Update(Actor* thisx, GlobalContext* globalCtx); void BgF40Swlift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_F40_Swlift_InitVars = { ACTOR_BG_F40_SWLIFT, ACTORCAT_BG, @@ -21,7 +21,18 @@ const ActorInit Bg_F40_Swlift_InitVars = { (ActorFunc)BgF40Swlift_Update, (ActorFunc)BgF40Swlift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8096F540[] = { + ICHAIN_F32(uncullZoneScale, 550, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 5000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8096F540[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_F40_Swlift_0x8096F160/BgF40Swlift_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Fire_Wall/z_bg_fire_wall.c b/src/overlays/actors/ovl_Bg_Fire_Wall/z_bg_fire_wall.c index b7ff32010..9db6c885d 100644 --- a/src/overlays/actors/ovl_Bg_Fire_Wall/z_bg_fire_wall.c +++ b/src/overlays/actors/ovl_Bg_Fire_Wall/z_bg_fire_wall.c @@ -8,7 +8,7 @@ void BgFireWall_Init(Actor* thisx, GlobalContext* globalCtx); void BgFireWall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgFireWall_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Fire_Wall_InitVars = { ACTOR_BG_FIRE_WALL, ACTORCAT_BG, @@ -20,7 +20,23 @@ const ActorInit Bg_Fire_Wall_InitVars = { (ActorFunc)BgFireWall_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809ACC60 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x01, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_ON, }, + { 34, 85, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_809ACC8C = { 1, 80, 100, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_809ACC60; +extern CollisionCheckInfoInit D_809ACC8C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Fire_Wall_0x809AC4B0/BgFireWall_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Fu_Mizu/z_bg_fu_mizu.c b/src/overlays/actors/ovl_Bg_Fu_Mizu/z_bg_fu_mizu.c index b6f48be2b..27027c909 100644 --- a/src/overlays/actors/ovl_Bg_Fu_Mizu/z_bg_fu_mizu.c +++ b/src/overlays/actors/ovl_Bg_Fu_Mizu/z_bg_fu_mizu.c @@ -9,7 +9,7 @@ void BgFuMizu_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgFuMizu_Update(Actor* thisx, GlobalContext* globalCtx); void BgFuMizu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Fu_Mizu_InitVars = { ACTOR_BG_FU_MIZU, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Fu_Mizu_InitVars = { (ActorFunc)BgFuMizu_Update, (ActorFunc)BgFuMizu_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Fu_Mizu_0x80ADAAF0/BgFuMizu_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Goron_Oyu/z_bg_goron_oyu.c b/src/overlays/actors/ovl_Bg_Goron_Oyu/z_bg_goron_oyu.c index d333555e5..8aaa82116 100644 --- a/src/overlays/actors/ovl_Bg_Goron_Oyu/z_bg_goron_oyu.c +++ b/src/overlays/actors/ovl_Bg_Goron_Oyu/z_bg_goron_oyu.c @@ -9,7 +9,7 @@ void BgGoronOyu_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgGoronOyu_Update(Actor* thisx, GlobalContext* globalCtx); void BgGoronOyu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Goron_Oyu_InitVars = { ACTOR_BG_GORON_OYU, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Goron_Oyu_InitVars = { (ActorFunc)BgGoronOyu_Update, (ActorFunc)BgGoronOyu_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Goron_Oyu_0x80B40080/func_80B40080.asm") diff --git a/src/overlays/actors/ovl_Bg_Haka_Bombwall/z_bg_haka_bombwall.c b/src/overlays/actors/ovl_Bg_Haka_Bombwall/z_bg_haka_bombwall.c index a55b31da2..3efacef06 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Bombwall/z_bg_haka_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Haka_Bombwall/z_bg_haka_bombwall.c @@ -9,7 +9,7 @@ void BgHakaBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgHakaBombwall_Update(Actor* thisx, GlobalContext* globalCtx); void BgHakaBombwall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Haka_Bombwall_InitVars = { ACTOR_BG_HAKA_BOMBWALL, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Bg_Haka_Bombwall_InitVars = { (ActorFunc)BgHakaBombwall_Update, (ActorFunc)BgHakaBombwall_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD64A0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 80, 80, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BD64D4[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BD64A0; +extern InitChainEntry D_80BD64D4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Haka_Bombwall_0x80BD5E00/func_80BD5E00.asm") diff --git a/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c b/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c index eb63627fe..cf40ac5da 100644 --- a/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c @@ -9,7 +9,7 @@ void BgHakuginBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgHakuginBombwall_Update(Actor* thisx, GlobalContext* globalCtx); void BgHakuginBombwall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Hakugin_Bombwall_InitVars = { ACTOR_BG_HAKUGIN_BOMBWALL, ACTORCAT_BG, @@ -21,7 +21,26 @@ const ActorInit Bg_Hakugin_Bombwall_InitVars = { (ActorFunc)BgHakuginBombwall_Update, (ActorFunc)BgHakuginBombwall_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ABCF80 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 80, 80, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ABD040[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80ABCF80; +extern InitChainEntry D_80ABD040[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Hakugin_Bombwall_0x80ABBFC0/func_80ABBFC0.asm") diff --git a/src/overlays/actors/ovl_Bg_Hakugin_Elvpole/z_bg_hakugin_elvpole.c b/src/overlays/actors/ovl_Bg_Hakugin_Elvpole/z_bg_hakugin_elvpole.c index f0f025b57..756a3c901 100644 --- a/src/overlays/actors/ovl_Bg_Hakugin_Elvpole/z_bg_hakugin_elvpole.c +++ b/src/overlays/actors/ovl_Bg_Hakugin_Elvpole/z_bg_hakugin_elvpole.c @@ -9,7 +9,7 @@ void BgHakuginElvpole_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgHakuginElvpole_Update(Actor* thisx, GlobalContext* globalCtx); void BgHakuginElvpole_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Hakugin_Elvpole_InitVars = { ACTOR_BG_HAKUGIN_ELVPOLE, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Hakugin_Elvpole_InitVars = { (ActorFunc)BgHakuginElvpole_Update, (ActorFunc)BgHakuginElvpole_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Hakugin_Elvpole_0x80ABD830/BgHakuginElvpole_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c b/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c index 07afed272..e59eae4e7 100644 --- a/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c +++ b/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c @@ -8,7 +8,7 @@ void BgHakuginPost_Init(Actor* thisx, GlobalContext* globalCtx); void BgHakuginPost_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgHakuginPost_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Hakugin_Post_InitVars = { ACTOR_BG_HAKUGIN_POST, ACTORCAT_BG, @@ -20,7 +20,25 @@ const ActorInit Bg_Hakugin_Post_InitVars = { (ActorFunc)BgHakuginPost_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A9D8B8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000100, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 276, 0, 20, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A9D8F8[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A9D8B8; +extern InitChainEntry D_80A9D8F8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Hakugin_Post_0x80A9ACD0/func_80A9ACD0.asm") diff --git a/src/overlays/actors/ovl_Bg_Hakugin_Switch/z_bg_hakugin_switch.c b/src/overlays/actors/ovl_Bg_Hakugin_Switch/z_bg_hakugin_switch.c index eb061c103..525878f47 100644 --- a/src/overlays/actors/ovl_Bg_Hakugin_Switch/z_bg_hakugin_switch.c +++ b/src/overlays/actors/ovl_Bg_Hakugin_Switch/z_bg_hakugin_switch.c @@ -9,7 +9,7 @@ void BgHakuginSwitch_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgHakuginSwitch_Update(Actor* thisx, GlobalContext* globalCtx); void BgHakuginSwitch_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Hakugin_Switch_InitVars = { ACTOR_BG_HAKUGIN_SWITCH, ACTORCAT_SWITCH, @@ -21,7 +21,37 @@ const ActorInit Bg_Hakugin_Switch_InitVars = { (ActorFunc)BgHakuginSwitch_Update, (ActorFunc)BgHakuginSwitch_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B16860 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000400, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 60, 10, 180, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B16904[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 150, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 130, ICHAIN_STOP), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B16910[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 260, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 360, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B16860; +extern InitChainEntry D_80B16904[]; +extern InitChainEntry D_80B16910[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Hakugin_Switch_0x80B15790/func_80B15790.asm") diff --git a/src/overlays/actors/ovl_Bg_Icefloe/z_bg_icefloe.c b/src/overlays/actors/ovl_Bg_Icefloe/z_bg_icefloe.c index 71700d67f..b5ddc920a 100644 --- a/src/overlays/actors/ovl_Bg_Icefloe/z_bg_icefloe.c +++ b/src/overlays/actors/ovl_Bg_Icefloe/z_bg_icefloe.c @@ -9,7 +9,7 @@ void BgIcefloe_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIcefloe_Update(Actor* thisx, GlobalContext* globalCtx); void BgIcefloe_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Icefloe_InitVars = { ACTOR_BG_ICEFLOE, ACTORCAT_BG, @@ -21,7 +21,16 @@ const ActorInit Bg_Icefloe_InitVars = { (ActorFunc)BgIcefloe_Update, (ActorFunc)BgIcefloe_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AC4F3C[] = { + ICHAIN_VEC3F_DIV1000(scale, 0, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AC4F3C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Icefloe_0x80AC48F0/BgIcefloe_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Ikana_Block/z_bg_ikana_block.c b/src/overlays/actors/ovl_Bg_Ikana_Block/z_bg_ikana_block.c index 08a1c3170..a78c50b96 100644 --- a/src/overlays/actors/ovl_Bg_Ikana_Block/z_bg_ikana_block.c +++ b/src/overlays/actors/ovl_Bg_Ikana_Block/z_bg_ikana_block.c @@ -8,7 +8,7 @@ void BgIkanaBlock_Init(Actor* thisx, GlobalContext* globalCtx); void BgIkanaBlock_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIkanaBlock_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ikana_Block_InitVars = { ACTOR_BG_IKANA_BLOCK, ACTORCAT_BG, @@ -20,7 +20,19 @@ const ActorInit Bg_Ikana_Block_InitVars = { (ActorFunc)BgIkanaBlock_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B7F640[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 250, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 250, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B7F640[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ikana_Block_0x80B7EA60/func_80B7EA60.asm") diff --git a/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c b/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c index a4f62910c..75945a297 100644 --- a/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c @@ -9,7 +9,7 @@ void BgIkanaBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIkanaBombwall_Update(Actor* thisx, GlobalContext* globalCtx); void BgIkanaBombwall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ikana_Bombwall_InitVars = { ACTOR_BG_IKANA_BOMBWALL, ACTORCAT_BG, @@ -21,7 +21,37 @@ const ActorInit Bg_Ikana_Bombwall_InitVars = { (ActorFunc)BgIkanaBombwall_Update, (ActorFunc)BgIkanaBombwall_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD5270 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 80, 80, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD529C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 50, 20, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BD52D0[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BD5270; +extern ColliderCylinderInit D_80BD529C; +extern InitChainEntry D_80BD52D0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ikana_Bombwall_0x80BD4720/func_80BD4720.asm") diff --git a/src/overlays/actors/ovl_Bg_Ikana_Dharma/z_bg_ikana_dharma.c b/src/overlays/actors/ovl_Bg_Ikana_Dharma/z_bg_ikana_dharma.c index 6fae68821..1e33fde7d 100644 --- a/src/overlays/actors/ovl_Bg_Ikana_Dharma/z_bg_ikana_dharma.c +++ b/src/overlays/actors/ovl_Bg_Ikana_Dharma/z_bg_ikana_dharma.c @@ -9,7 +9,7 @@ void BgIkanaDharma_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIkanaDharma_Update(Actor* thisx, GlobalContext* globalCtx); void BgIkanaDharma_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ikana_Dharma_InitVars = { ACTOR_BG_IKANA_DHARMA, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Bg_Ikana_Dharma_InitVars = { (ActorFunc)BgIkanaDharma_Update, (ActorFunc)BgIkanaDharma_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BECAD0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000100, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 98, 10, 25, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BECAFC[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 320, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 320, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BECAD0; +extern InitChainEntry D_80BECAFC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ikana_Dharma_0x80BEC240/func_80BEC240.asm") diff --git a/src/overlays/actors/ovl_Bg_Ikana_Mirror/z_bg_ikana_mirror.c b/src/overlays/actors/ovl_Bg_Ikana_Mirror/z_bg_ikana_mirror.c index 0087603b8..407e65ff5 100644 --- a/src/overlays/actors/ovl_Bg_Ikana_Mirror/z_bg_ikana_mirror.c +++ b/src/overlays/actors/ovl_Bg_Ikana_Mirror/z_bg_ikana_mirror.c @@ -9,7 +9,7 @@ void BgIkanaMirror_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIkanaMirror_Update(Actor* thisx, GlobalContext* globalCtx); void BgIkanaMirror_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ikana_Mirror_InitVars = { ACTOR_BG_IKANA_MIRROR, ACTORCAT_PROP, @@ -21,7 +21,86 @@ const ActorInit Bg_Ikana_Mirror_InitVars = { (ActorFunc)BgIkanaMirror_Update, (ActorFunc)BgIkanaMirror_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[9] = { +static ColliderTrisElementInit D_80B7FF50[9] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 21.600000381469727f, 13.699999809265137f }, { -25.299999237060547f, 6.0f, 8.399999618530273f }, { 25.299999237060547f, 6.0f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { -25.299999237060547f, 6.0f, 8.399999618530273f }, { 0.0f, 21.600000381469727f, 13.699999809265137f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { 0.0f, 21.600000381469727f, 13.699999809265137f }, { 25.299999237060547f, 6.0f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { -25.299999237060547f, 45.0f, 8.399999618530273f }, { -25.299999237060547f, 6.0f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { 25.299999237060547f, 6.0f, 8.399999618530273f }, { 25.299999237060547f, 45.0f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { -17.899999618530273f, 64.0999984741211f, 8.399999618530273f }, { -25.299999237060547f, 45.0f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { 25.299999237060547f, 45.0f, 8.399999618530273f }, { 17.899999618530273f, 64.0999984741211f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { 0.0f, 72.0f, 8.399999618530273f }, { -17.899999618530273f, 64.0999984741211f, 8.399999618530273f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 45.0f, 13.699999809265137f }, { 17.899999618530273f, 64.0999984741211f, 8.399999618530273f }, { 0.0f, 72.0f, 8.399999618530273f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B8016C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 9, D_80B7FF50, // sTrisElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80B8017C = { + { COLTYPE_NONE, AT_ON | AT_TYPE_OTHER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0x00200000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 72.0f, 20.0f }, { 0.0f, 72.0f, 240.0f }, { 0.0f, 6.0f, 20.0f }, { 0.0f, 6.0f, 240.0f } } }, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80B801FC = { + { 0x41, AT_NONE | AT_TYPE_OTHER, AC_NONE, OC1_NONE, OC2_FIRST_ONLY | OC2_UNK1 | OC2_HIT_PLAYER, 0x70, }, + { 0xC1, { 0x41A00000, 0x41, 0xA0 }, { 0xC1CA6666, 0x41, 0xA0 }, TOUCH_ON | TOUCH_HIT | TOUCH_SFX_NORMAL | TOUCH_DREW_HITMARK, BUMP_NONE | BUMP_NO_DAMAGE | BUMP_NO_SWORD_SFX | BUMP_NO_HITMARK, OCELEM_NONE, }, + { { { -1.8339854079840734e-09f, -1.8626939990440405e-09f, -1.9208972190654094e-09f }, { 221185.5625f, 0.0f, 0.003921568859368563f }, { 0.0f, 0.0f, 0.0f }, { 2.8698592549372254e-42f, 1.0761972206014595e-42f, 2.2420775429197073e-44f } } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B8021C[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 220, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80B7FF50[9]; +extern ColliderTrisInit D_80B8016C; +extern ColliderQuadInit D_80B8017C; +extern ColliderQuadInit D_80B801FC; +extern InitChainEntry D_80B8021C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ikana_Mirror_0x80B7F730/func_80B7F730.asm") diff --git a/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c b/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c index aa222a2bb..f39d0120e 100644 --- a/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c +++ b/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c @@ -9,7 +9,7 @@ void BgIkanaRotaryroom_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIkanaRotaryroom_Update(Actor* thisx, GlobalContext* globalCtx); void BgIkanaRotaryroom_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ikana_Rotaryroom_InitVars = { ACTOR_BG_IKANA_ROTARYROOM, ACTORCAT_BG, @@ -21,7 +21,54 @@ const ActorInit Bg_Ikana_Rotaryroom_InitVars = { (ActorFunc)BgIkanaRotaryroom_Update, (ActorFunc)BgIkanaRotaryroom_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_80B820E0[2] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00002000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 0, { { -3450, 450, 0 }, 60 }, 100 }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00002000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 0, { { 3450, 450, 0 }, 60 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B82128 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 2, D_80B820E0, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80B82138[1] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00002000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 0, { { -3750, 1200, 0 }, 60 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B8215C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 1, D_80B82138, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B82214[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80B820E0[2]; +extern ColliderJntSphInit D_80B82128; +extern ColliderJntSphElementInit D_80B82138[1]; +extern ColliderJntSphInit D_80B8215C; +extern InitChainEntry D_80B82214[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ikana_Rotaryroom_0x80B802E0/func_80B802E0.asm") diff --git a/src/overlays/actors/ovl_Bg_Ikninside/z_bg_ikninside.c b/src/overlays/actors/ovl_Bg_Ikninside/z_bg_ikninside.c index e3f9bb322..7775dd979 100644 --- a/src/overlays/actors/ovl_Bg_Ikninside/z_bg_ikninside.c +++ b/src/overlays/actors/ovl_Bg_Ikninside/z_bg_ikninside.c @@ -9,7 +9,7 @@ void BgIkninside_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIkninside_Update(Actor* thisx, GlobalContext* globalCtx); void BgIkninside_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ikninside_InitVars = { ACTOR_BG_IKNINSIDE, ACTORCAT_BG, @@ -21,7 +21,18 @@ const ActorInit Bg_Ikninside_InitVars = { (ActorFunc)BgIkninside_Update, (ActorFunc)BgIkninside_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C076A8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x80000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 32, 32, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C076A8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ikninside_0x80C07110/BgIkninside_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Iknv_Doukutu/z_bg_iknv_doukutu.c b/src/overlays/actors/ovl_Bg_Iknv_Doukutu/z_bg_iknv_doukutu.c index 883d7a459..7508569d4 100644 --- a/src/overlays/actors/ovl_Bg_Iknv_Doukutu/z_bg_iknv_doukutu.c +++ b/src/overlays/actors/ovl_Bg_Iknv_Doukutu/z_bg_iknv_doukutu.c @@ -9,7 +9,7 @@ void BgIknvDoukutu_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIknvDoukutu_Update(Actor* thisx, GlobalContext* globalCtx); void BgIknvDoukutu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Iknv_Doukutu_InitVars = { ACTOR_BG_IKNV_DOUKUTU, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Iknv_Doukutu_InitVars = { (ActorFunc)BgIknvDoukutu_Update, (ActorFunc)BgIknvDoukutu_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Iknv_Doukutu_0x80BD6F10/BgIknvDoukutu_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c b/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c index e9e8030ee..e6e4043e3 100644 --- a/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c +++ b/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c @@ -9,7 +9,7 @@ void BgIngate_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIngate_Update(Actor* thisx, GlobalContext* globalCtx); void BgIngate_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Ingate_InitVars = { ACTOR_BG_INGATE, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Bg_Ingate_InitVars = { (ActorFunc)BgIngate_Update, (ActorFunc)BgIngate_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Ingate_0x80953A90/func_80953A90.asm") diff --git a/src/overlays/actors/ovl_Bg_Inibs_Movebg/z_bg_inibs_movebg.c b/src/overlays/actors/ovl_Bg_Inibs_Movebg/z_bg_inibs_movebg.c index 99d77a0db..384a2ac39 100644 --- a/src/overlays/actors/ovl_Bg_Inibs_Movebg/z_bg_inibs_movebg.c +++ b/src/overlays/actors/ovl_Bg_Inibs_Movebg/z_bg_inibs_movebg.c @@ -8,7 +8,7 @@ void BgInibsMovebg_Init(Actor* thisx, GlobalContext* globalCtx); void BgInibsMovebg_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgInibsMovebg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Inibs_Movebg_InitVars = { ACTOR_BG_INIBS_MOVEBG, ACTORCAT_BG, @@ -20,7 +20,16 @@ const ActorInit Bg_Inibs_Movebg_InitVars = { (ActorFunc)Actor_Noop, (ActorFunc)BgInibsMovebg_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B96578[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B96578[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Inibs_Movebg_0x80B96410/BgInibsMovebg_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Keikoku_Saku/z_bg_keikoku_saku.c b/src/overlays/actors/ovl_Bg_Keikoku_Saku/z_bg_keikoku_saku.c index 32d14f9bc..9487dba71 100644 --- a/src/overlays/actors/ovl_Bg_Keikoku_Saku/z_bg_keikoku_saku.c +++ b/src/overlays/actors/ovl_Bg_Keikoku_Saku/z_bg_keikoku_saku.c @@ -9,7 +9,7 @@ void BgKeikokuSaku_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgKeikokuSaku_Update(Actor* thisx, GlobalContext* globalCtx); void BgKeikokuSaku_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Keikoku_Saku_InitVars = { ACTOR_BG_KEIKOKU_SAKU, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Bg_Keikoku_Saku_InitVars = { (ActorFunc)BgKeikokuSaku_Update, (ActorFunc)BgKeikokuSaku_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Keikoku_Saku_0x80A537D0/BgKeikokuSaku_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Kin2_Bombwall/z_bg_kin2_bombwall.c b/src/overlays/actors/ovl_Bg_Kin2_Bombwall/z_bg_kin2_bombwall.c index dd5d75862..7417b544b 100644 --- a/src/overlays/actors/ovl_Bg_Kin2_Bombwall/z_bg_kin2_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Kin2_Bombwall/z_bg_kin2_bombwall.c @@ -9,7 +9,7 @@ void BgKin2Bombwall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgKin2Bombwall_Update(Actor* thisx, GlobalContext* globalCtx); void BgKin2Bombwall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Kin2_Bombwall_InitVars = { ACTOR_BG_KIN2_BOMBWALL, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Bg_Kin2_Bombwall_InitVars = { (ActorFunc)BgKin2Bombwall_Update, (ActorFunc)BgKin2Bombwall_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B6E6F0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 60, 60, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B6E748[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B6E6F0; +extern InitChainEntry D_80B6E748[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Kin2_Bombwall_0x80B6E020/func_80B6E020.asm") diff --git a/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c b/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c index f52330323..cb5bcd9af 100644 --- a/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c +++ b/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c @@ -9,7 +9,7 @@ void BgKin2Picture_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgKin2Picture_Update(Actor* thisx, GlobalContext* globalCtx); void BgKin2Picture_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Kin2_Picture_InitVars = { ACTOR_BG_KIN2_PICTURE, ACTORCAT_PROP, @@ -21,7 +21,42 @@ const ActorInit Bg_Kin2_Picture_InitVars = { (ActorFunc)BgKin2Picture_Update, (ActorFunc)BgKin2Picture_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_80B6F990[2] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x000138B0, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -20.0f, 53.29999923706055f, 9.0f }, { -20.0f, 3.0f, 9.0f }, { 20.0f, 3.0f, 9.0f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x000138B0, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -20.0f, 53.29999923706055f, 9.0f }, { 20.0f, 3.0f, 9.0f }, { 20.0f, 53.29999923706055f, 9.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B6FA08 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 2, D_80B6F990, // sTrisElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B6FA24[] = { + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80B6F990[2]; +extern ColliderTrisInit D_80B6FA08; +extern InitChainEntry D_80B6FA24[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Kin2_Picture_0x80B6EFA0/func_80B6EFA0.asm") diff --git a/src/overlays/actors/ovl_Bg_Kin2_Shelf/z_bg_kin2_shelf.c b/src/overlays/actors/ovl_Bg_Kin2_Shelf/z_bg_kin2_shelf.c index 1c0d8e40f..fcd95014e 100644 --- a/src/overlays/actors/ovl_Bg_Kin2_Shelf/z_bg_kin2_shelf.c +++ b/src/overlays/actors/ovl_Bg_Kin2_Shelf/z_bg_kin2_shelf.c @@ -9,7 +9,7 @@ void BgKin2Shelf_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgKin2Shelf_Update(Actor* thisx, GlobalContext* globalCtx); void BgKin2Shelf_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Kin2_Shelf_InitVars = { ACTOR_BG_KIN2_SHELF, ACTORCAT_BG, @@ -21,7 +21,16 @@ const ActorInit Bg_Kin2_Shelf_InitVars = { (ActorFunc)BgKin2Shelf_Update, (ActorFunc)BgKin2Shelf_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B7077C[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B7077C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Kin2_Shelf_0x80B6FB30/func_80B6FB30.asm") diff --git a/src/overlays/actors/ovl_Bg_Ladder/z_bg_ladder.c b/src/overlays/actors/ovl_Bg_Ladder/z_bg_ladder.c index b497d7d89..0c391f43b 100644 --- a/src/overlays/actors/ovl_Bg_Ladder/z_bg_ladder.c +++ b/src/overlays/actors/ovl_Bg_Ladder/z_bg_ladder.c @@ -3,6 +3,7 @@ * Overlay: ovl_Bg_Ladder * Description: Wooden Ladder */ + #include "z_bg_ladder.h" #define FLAGS 0x00000010 diff --git a/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c b/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c index 2de552db6..a73562b95 100644 --- a/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c +++ b/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c @@ -9,7 +9,7 @@ void BgLastBwall_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgLastBwall_Update(Actor* thisx, GlobalContext* globalCtx); void BgLastBwall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Last_Bwall_InitVars = { ACTOR_BG_LAST_BWALL, ACTORCAT_BG, @@ -21,7 +21,37 @@ const ActorInit Bg_Last_Bwall_InitVars = { (ActorFunc)BgLastBwall_Update, (ActorFunc)BgLastBwall_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_80C189C0[2] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -70.0f, 0.0f, 3.0f }, { 70.0f, 0.0f, 3.0f }, { -70.0f, 200.0f, 3.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 70.0f, 0.0f, 3.0f }, { 70.0f, 200.0f, 3.0f }, { -70.0f, 200.0f, 3.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80C18A38 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 2, D_80C189C0, // sTrisElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C18AC8[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80C189C0[2]; +extern ColliderTrisInit D_80C18A38; +extern InitChainEntry D_80C18AC8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Last_Bwall_0x80C18240/func_80C18240.asm") diff --git a/src/overlays/actors/ovl_Bg_Numa_Hana/z_bg_numa_hana.c b/src/overlays/actors/ovl_Bg_Numa_Hana/z_bg_numa_hana.c index 4e3113f37..62aff4c64 100644 --- a/src/overlays/actors/ovl_Bg_Numa_Hana/z_bg_numa_hana.c +++ b/src/overlays/actors/ovl_Bg_Numa_Hana/z_bg_numa_hana.c @@ -9,7 +9,7 @@ void BgNumaHana_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgNumaHana_Update(Actor* thisx, GlobalContext* globalCtx); void BgNumaHana_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Numa_Hana_InitVars = { ACTOR_BG_NUMA_HANA, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Bg_Numa_Hana_InitVars = { (ActorFunc)BgNumaHana_Update, (ActorFunc)BgNumaHana_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A1B260 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0x01CBFBB6, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 18, 16, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A1B2A8[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 600, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A1B260; +extern InitChainEntry D_80A1B2A8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Numa_Hana_0x80A1A500/func_80A1A500.asm") diff --git a/src/overlays/actors/ovl_Bg_Open_Shutter/z_bg_open_shutter.c b/src/overlays/actors/ovl_Bg_Open_Shutter/z_bg_open_shutter.c index 7d8abd8ad..d4f5c32d3 100644 --- a/src/overlays/actors/ovl_Bg_Open_Shutter/z_bg_open_shutter.c +++ b/src/overlays/actors/ovl_Bg_Open_Shutter/z_bg_open_shutter.c @@ -9,7 +9,7 @@ void BgOpenShutter_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgOpenShutter_Update(Actor* thisx, GlobalContext* globalCtx); void BgOpenShutter_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Open_Shutter_InitVars = { ACTOR_BG_OPEN_SHUTTER, ACTORCAT_DOOR, @@ -21,7 +21,19 @@ const ActorInit Bg_Open_Shutter_InitVars = { (ActorFunc)BgOpenShutter_Update, (ActorFunc)BgOpenShutter_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ACB140[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 350, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 350, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80ACB140[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Open_Shutter_0x80ACAB10/func_80ACAB10.asm") diff --git a/src/overlays/actors/ovl_Bg_Open_Spot/z_bg_open_spot.c b/src/overlays/actors/ovl_Bg_Open_Spot/z_bg_open_spot.c index 6ebb39381..ac6819d14 100644 --- a/src/overlays/actors/ovl_Bg_Open_Spot/z_bg_open_spot.c +++ b/src/overlays/actors/ovl_Bg_Open_Spot/z_bg_open_spot.c @@ -8,7 +8,7 @@ void BgOpenSpot_Init(Actor* thisx, GlobalContext* globalCtx); void BgOpenSpot_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgOpenSpot_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Open_Spot_InitVars = { ACTOR_BG_OPEN_SPOT, ACTORCAT_PROP, @@ -20,7 +20,19 @@ const ActorInit Bg_Open_Spot_InitVars = { (ActorFunc)BgOpenSpot_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ACB3B0[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 560, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80ACB3B0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Open_Spot_0x80ACB1E0/BgOpenSpot_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Sinkai_Kabe/z_bg_sinkai_kabe.c b/src/overlays/actors/ovl_Bg_Sinkai_Kabe/z_bg_sinkai_kabe.c index 82b62e5ba..c4273ccaa 100644 --- a/src/overlays/actors/ovl_Bg_Sinkai_Kabe/z_bg_sinkai_kabe.c +++ b/src/overlays/actors/ovl_Bg_Sinkai_Kabe/z_bg_sinkai_kabe.c @@ -8,7 +8,7 @@ void BgSinkaiKabe_Init(Actor* thisx, GlobalContext* globalCtx); void BgSinkaiKabe_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgSinkaiKabe_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Sinkai_Kabe_InitVars = { ACTOR_BG_SINKAI_KABE, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Bg_Sinkai_Kabe_InitVars = { (ActorFunc)BgSinkaiKabe_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Sinkai_Kabe_0x80B6D660/BgSinkaiKabe_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c b/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c index 0a65bda40..52900f7a9 100644 --- a/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c +++ b/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c @@ -9,7 +9,7 @@ void BgSpdweb_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgSpdweb_Update(Actor* thisx, GlobalContext* globalCtx); void BgSpdweb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Spdweb_InitVars = { ACTOR_BG_SPDWEB, ACTORCAT_BG, @@ -21,7 +21,67 @@ const ActorInit Bg_Spdweb_InitVars = { (ActorFunc)BgSpdweb_Update, (ActorFunc)BgSpdweb_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_809CF080[2] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000C00, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 75.0f, -8.0f, 75.0f }, { 75.0f, -8.0f, -75.0f }, { -75.0f, -8.0f, -75.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000C00, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 75.0f, -8.0f, 75.0f }, { -75.0f, -8.0f, -75.0f }, { -75.0f, -8.0f, 75.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_809CF0F8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_TRIS, }, + 2, D_809CF080, // sTrisElementsInit, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[4] = { +static ColliderTrisElementInit D_809CF108[4] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 70.0f, 160.0f, 15.0f }, { -70.0f, 160.0f, 15.0f }, { -70.0f, 20.0f, 15.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 70.0f, 160.0f, 15.0f }, { -70.0f, 20.0f, 15.0f }, { 70.0f, 20.0f, 15.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -70.0f, 160.0f, -15.0f }, { 70.0f, 160.0f, -15.0f }, { 70.0f, 20.0f, -15.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -70.0f, 160.0f, -15.0f }, { 70.0f, 20.0f, -15.0f }, { -70.0f, 20.0f, -15.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_809CF1F8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_TRIS, }, + 4, D_809CF108, // sTrisElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809CF210[] = { + ICHAIN_F32(uncullZoneForward, 1500, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_809CF080[2]; +extern ColliderTrisInit D_809CF0F8; +extern ColliderTrisElementInit D_809CF108[4]; +extern ColliderTrisInit D_809CF1F8; +extern InitChainEntry D_809CF210[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Spdweb_0x809CDEC0/BgSpdweb_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Spout_Fire/z_bg_spout_fire.c b/src/overlays/actors/ovl_Bg_Spout_Fire/z_bg_spout_fire.c index 0cca8bb5e..3e5e24cb3 100644 --- a/src/overlays/actors/ovl_Bg_Spout_Fire/z_bg_spout_fire.c +++ b/src/overlays/actors/ovl_Bg_Spout_Fire/z_bg_spout_fire.c @@ -8,7 +8,7 @@ void BgSpoutFire_Init(Actor* thisx, GlobalContext* globalCtx); void BgSpoutFire_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgSpoutFire_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Spout_Fire_InitVars = { ACTOR_BG_SPOUT_FIRE, ACTORCAT_BG, @@ -20,7 +20,23 @@ const ActorInit Bg_Spout_Fire_InitVars = { (ActorFunc)BgSpoutFire_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A61160 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x01, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_ON, }, + { 30, 83, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80A6118C = { 1, 80, 100, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80A61160; +extern CollisionCheckInfoInit D_80A6118C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Spout_Fire_0x80A60B20/BgSpoutFire_Init.asm") diff --git a/src/overlays/actors/ovl_Bg_Umajump/z_bg_umajump.c b/src/overlays/actors/ovl_Bg_Umajump/z_bg_umajump.c index 1b75fdce2..24e2d7137 100644 --- a/src/overlays/actors/ovl_Bg_Umajump/z_bg_umajump.c +++ b/src/overlays/actors/ovl_Bg_Umajump/z_bg_umajump.c @@ -8,7 +8,7 @@ void BgUmajump_Init(Actor* thisx, GlobalContext* globalCtx); void BgUmajump_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgUmajump_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Bg_Umajump_InitVars = { ACTOR_BG_UMAJUMP, ACTORCAT_PROP, @@ -20,7 +20,18 @@ const ActorInit Bg_Umajump_InitVars = { (ActorFunc)BgUmajump_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8091A810[] = { + ICHAIN_F32(uncullZoneScale, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8091A810[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Bg_Umajump_0x80919F30/func_80919F30.asm") diff --git a/src/overlays/actors/ovl_Boss_01/z_boss_01.c b/src/overlays/actors/ovl_Boss_01/z_boss_01.c index 09bd00ac3..aeab434d8 100644 --- a/src/overlays/actors/ovl_Boss_01/z_boss_01.c +++ b/src/overlays/actors/ovl_Boss_01/z_boss_01.c @@ -9,7 +9,209 @@ void Boss01_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss01_Update(Actor* thisx, GlobalContext* globalCtx); void Boss01_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809D7990 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xE), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0x1), + /* Deku launch */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0xB), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(1, 0xD), + /* Sword beam */ DMG_ENTRY(2, 0xC), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xE), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_809D79B0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0x1), + /* Normal arrow */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0x1), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x1), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(2, 0xD), + /* Sword beam */ DMG_ENTRY(2, 0xD), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[3] = { +static ColliderJntSphElementInit D_809D79D0[3] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 35 }, 100 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 35 }, 100 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 70 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809D7A3C = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 3, D_809D79D0, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809D7A4C[1] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 36 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809D7A70 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809D7A4C, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[11] = { +static ColliderJntSphElementInit D_809D7A80[11] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 25 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809D7C0C = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 11, D_809D7A80, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_809D7C1C[2] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 36 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 36 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809D7C64 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_809D7C1C, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809D7C74 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 15, 15, 10, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809D7CA0 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 8, 15, 10, { 0, 0, 0 } }, +}; + + const ActorInit Boss_01_InitVars = { ACTOR_BOSS_01, ACTORCAT_BOSS, @@ -21,7 +223,21 @@ const ActorInit Boss_01_InitVars = { (ActorFunc)Boss01_Update, (ActorFunc)Boss01_Draw, }; -*/ + + +extern DamageTable D_809D7990; +extern DamageTable D_809D79B0; +extern ColliderJntSphElementInit D_809D79D0[3]; +extern ColliderJntSphInit D_809D7A3C; +extern ColliderJntSphElementInit D_809D7A4C[1]; +extern ColliderJntSphInit D_809D7A70; +extern ColliderJntSphElementInit D_809D7A80[11]; +extern ColliderJntSphInit D_809D7C0C; +extern ColliderJntSphElementInit D_809D7C1C[2]; +extern ColliderJntSphInit D_809D7C64; +extern ColliderCylinderInit D_809D7C74; +extern ColliderCylinderInit D_809D7CA0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_01_0x809D0530/func_809D0530.asm") diff --git a/src/overlays/actors/ovl_Boss_02/z_boss_02.c b/src/overlays/actors/ovl_Boss_02/z_boss_02.c index 834f7394c..be1c08a93 100644 --- a/src/overlays/actors/ovl_Boss_02/z_boss_02.c +++ b/src/overlays/actors/ovl_Boss_02/z_boss_02.c @@ -9,7 +9,81 @@ void Boss02_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss02_Update(Actor* thisx, GlobalContext* globalCtx); void Boss02_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809DF550 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(5, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0xF), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_809DF570 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(5, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0xF), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit Boss_02_InitVars = { ACTOR_BOSS_02, ACTORCAT_BOSS, @@ -21,7 +95,142 @@ const ActorInit Boss_02_InitVars = { (ActorFunc)Boss02_Update, (ActorFunc)Boss02_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[22] = { +static ColliderJntSphElementInit D_809DF614[22] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 2, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 3, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 4, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 5, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 7, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 8, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 10, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 11, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 12, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 13, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 14, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 15, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 16, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 17, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 19, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 21, { { 0, 0, 0 }, 85 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 130 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809DF92C = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 22, D_809DF614, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_809DF93C[2] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 130 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 22, { { 0, 0, 0 }, 110 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809DF984 = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_809DF93C, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809DF994 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 150, 200, 0, { 0, 0, 0 } }, +}; + + +extern DamageTable D_809DF550; +extern DamageTable D_809DF570; +extern ColliderJntSphElementInit D_809DF614[22]; +extern ColliderJntSphInit D_809DF92C; +extern ColliderJntSphElementInit D_809DF93C[2]; +extern ColliderJntSphInit D_809DF984; +extern ColliderCylinderInit D_809DF994; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_02_0x809DA1D0/func_809DA1D0.asm") diff --git a/src/overlays/actors/ovl_Boss_03/z_boss_03.c b/src/overlays/actors/ovl_Boss_03/z_boss_03.c index ff2f04667..329e9ff83 100644 --- a/src/overlays/actors/ovl_Boss_03/z_boss_03.c +++ b/src/overlays/actors/ovl_Boss_03/z_boss_03.c @@ -9,7 +9,7 @@ void Boss03_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss03_Update(Actor* thisx, GlobalContext* globalCtx); void Boss03_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Boss_03_InitVars = { ACTOR_BOSS_03, ACTORCAT_BOSS, @@ -21,7 +21,63 @@ const ActorInit Boss_03_InitVars = { (ActorFunc)Boss03_Update, (ActorFunc)Boss03_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_809E8ECC[2] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 70 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809E8F14 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_809E8ECC, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[5] = { +static ColliderJntSphElementInit D_809E8F24[5] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 2, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 5, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, { { 0, 0, 0 }, 70 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 7, { { 0, 0, 0 }, 70 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 8, { { 0, 0, 0 }, 30 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809E8FD8 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 5, D_809E8F24, // sJntSphElementsInit, +}; + + +extern ColliderJntSphElementInit D_809E8ECC[2]; +extern ColliderJntSphInit D_809E8F14; +extern ColliderJntSphElementInit D_809E8F24[5]; +extern ColliderJntSphInit D_809E8FD8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_03_0x809E2760/func_809E2760.asm") diff --git a/src/overlays/actors/ovl_Boss_04/z_boss_04.c b/src/overlays/actors/ovl_Boss_04/z_boss_04.c index 098c76fb5..dad5a97e1 100644 --- a/src/overlays/actors/ovl_Boss_04/z_boss_04.c +++ b/src/overlays/actors/ovl_Boss_04/z_boss_04.c @@ -9,7 +9,44 @@ void Boss04_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss04_Update(Actor* thisx, GlobalContext* globalCtx); void Boss04_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809EE150 = { + /* Deku Nut */ DMG_ENTRY(1, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(2, 0xF), + /* Goron pound */ DMG_ENTRY(2, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(2, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0xF), + /* Light ray */ DMG_ENTRY(0, 0xF), + /* Thrown object */ DMG_ENTRY(2, 0xF), + /* Zora punch */ DMG_ENTRY(2, 0xF), + /* Spin attack */ DMG_ENTRY(2, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit Boss_04_InitVars = { ACTOR_BOSS_04, ACTORCAT_BOSS, @@ -21,7 +58,44 @@ const ActorInit Boss_04_InitVars = { (ActorFunc)Boss04_Update, (ActorFunc)Boss04_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809EE190[1] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809EE1B4 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809EE190, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809EE1C4[1] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 70 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809EE1E8 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809EE1C4, // sJntSphElementsInit, +}; + + +extern DamageTable D_809EE150; +extern ColliderJntSphElementInit D_809EE190[1]; +extern ColliderJntSphInit D_809EE1B4; +extern ColliderJntSphElementInit D_809EE1C4[1]; +extern ColliderJntSphInit D_809EE1E8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_04_0x809EC040/func_809EC040.asm") diff --git a/src/overlays/actors/ovl_Boss_05/z_boss_05.c b/src/overlays/actors/ovl_Boss_05/z_boss_05.c index 01c2fb5ab..8af49488d 100644 --- a/src/overlays/actors/ovl_Boss_05/z_boss_05.c +++ b/src/overlays/actors/ovl_Boss_05/z_boss_05.c @@ -9,7 +9,130 @@ void Boss05_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss05_Update(Actor* thisx, GlobalContext* globalCtx); void Boss05_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_809F1B2C[2] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809F1B74 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_809F1B2C, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809F1B84[1] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809F1BA8 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809F1B84, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809F1BB8[1] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809F1BDC = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809F1BB8, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_809F1C00 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(3, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(3, 0x0), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(3, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(3, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_809F1C20 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(3, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x2), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit Boss_05_InitVars = { ACTOR_BOSS_05, ACTORCAT_ENEMY, @@ -21,7 +144,17 @@ const ActorInit Boss_05_InitVars = { (ActorFunc)Boss05_Update, (ActorFunc)Boss05_Draw, }; -*/ + + +extern ColliderJntSphElementInit D_809F1B2C[2]; +extern ColliderJntSphInit D_809F1B74; +extern ColliderJntSphElementInit D_809F1B84[1]; +extern ColliderJntSphInit D_809F1BA8; +extern ColliderJntSphElementInit D_809F1BB8[1]; +extern ColliderJntSphInit D_809F1BDC; +extern DamageTable D_809F1C00; +extern DamageTable D_809F1C20; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_05_0x809EE4E0/func_809EE4E0.asm") diff --git a/src/overlays/actors/ovl_Boss_06/z_boss_06.c b/src/overlays/actors/ovl_Boss_06/z_boss_06.c index 953683f07..e587e5462 100644 --- a/src/overlays/actors/ovl_Boss_06/z_boss_06.c +++ b/src/overlays/actors/ovl_Boss_06/z_boss_06.c @@ -9,7 +9,44 @@ void Boss06_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss06_Update(Actor* thisx, GlobalContext* globalCtx); void Boss06_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809F4080 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(0, 0xF), + /* Sword */ DMG_ENTRY(0, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(0, 0x3), + /* Light arrow */ DMG_ENTRY(0, 0x4), + /* Goron spikes */ DMG_ENTRY(0, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0xF), + /* Light ray */ DMG_ENTRY(0, 0xF), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0xF), +}; + + const ActorInit Boss_06_InitVars = { ACTOR_BOSS_06, ACTORCAT_BOSS, @@ -21,7 +58,19 @@ const ActorInit Boss_06_InitVars = { (ActorFunc)Boss06_Update, (ActorFunc)Boss06_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809F40C0 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 90, 140, 10, { 0, 0, 0 } }, +}; + + +extern DamageTable D_809F4080; +extern ColliderCylinderInit D_809F40C0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_06_0x809F2120/func_809F2120.asm") diff --git a/src/overlays/actors/ovl_Boss_07/z_boss_07.c b/src/overlays/actors/ovl_Boss_07/z_boss_07.c index 3b8cf4da1..c61f737b1 100644 --- a/src/overlays/actors/ovl_Boss_07/z_boss_07.c +++ b/src/overlays/actors/ovl_Boss_07/z_boss_07.c @@ -9,7 +9,192 @@ void Boss07_Destroy(Actor* thisx, GlobalContext* globalCtx); void Boss07_Update(Actor* thisx, GlobalContext* globalCtx); void Boss07_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80A07980 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(2, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0x9), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(2, 0xF), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A079A0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xC), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xA), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xD), + /* Sword beam */ DMG_ENTRY(2, 0x9), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(4, 0xC), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A079C0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xE), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xC), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xE), + /* Deku spin */ DMG_ENTRY(1, 0xE), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xA), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(1, 0xD), + /* Sword beam */ DMG_ENTRY(2, 0x9), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(2, 0xC), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A079E0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xE), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xD), + /* Sword beam */ DMG_ENTRY(2, 0x9), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(2, 0xE), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A07A00 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xD), + /* Horse trample */ DMG_ENTRY(1, 0xE), + /* Explosives */ DMG_ENTRY(1, 0xB), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(1, 0xD), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0xE), + /* Ice arrow */ DMG_ENTRY(1, 0xE), + /* Light arrow */ DMG_ENTRY(1, 0xE), + /* Goron spikes */ DMG_ENTRY(1, 0xC), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0xD), + /* Light ray */ DMG_ENTRY(1, 0xD), + /* Thrown object */ DMG_ENTRY(1, 0xE), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(1, 0xA), + /* Sword beam */ DMG_ENTRY(1, 0xA), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(2, 0xB), +}; + + const ActorInit Boss_07_InitVars = { ACTOR_BOSS_07, ACTORCAT_BOSS, @@ -21,7 +206,199 @@ const ActorInit Boss_07_InitVars = { (ActorFunc)Boss07_Update, (ActorFunc)Boss07_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[11] = { +static ColliderJntSphElementInit D_80A07A40[11] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 25 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A07BCC = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 11, D_80A07A40, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A07BDC = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 80, 200, 0, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A07C08[1] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 36 }, 200 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A07C2C = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A07C08, // sJntSphElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80A07C3C = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x00 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80A07C8C = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[11] = { +static ColliderJntSphElementInit D_80A07CDC[11] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 25 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 40 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CEFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 150 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A07E68 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 11, D_80A07CDC, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A07E78 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x10 }, { 0x00300000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 15, 30, -15, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A07EA4 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 50, 100, -50, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A07ED0 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 40, 20, 15, { 0, 0, 0 } }, +}; + + +extern DamageTable D_80A07980; +extern DamageTable D_80A079A0; +extern DamageTable D_80A079C0; +extern DamageTable D_80A079E0; +extern DamageTable D_80A07A00; +extern ColliderJntSphElementInit D_80A07A40[11]; +extern ColliderJntSphInit D_80A07BCC; +extern ColliderCylinderInit D_80A07BDC; +extern ColliderJntSphElementInit D_80A07C08[1]; +extern ColliderJntSphInit D_80A07C2C; +extern ColliderQuadInit D_80A07C3C; +extern ColliderQuadInit D_80A07C8C; +extern ColliderJntSphElementInit D_80A07CDC[11]; +extern ColliderJntSphInit D_80A07E68; +extern ColliderCylinderInit D_80A07E78; +extern ColliderCylinderInit D_80A07EA4; +extern ColliderCylinderInit D_80A07ED0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_07_0x809F4980/func_809F4980.asm") diff --git a/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c b/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c index 7282595b3..1d84958d0 100644 --- a/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c +++ b/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c @@ -9,7 +9,7 @@ void BossHakugin_Destroy(Actor* thisx, GlobalContext* globalCtx); void BossHakugin_Update(Actor* thisx, GlobalContext* globalCtx); void BossHakugin_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Boss_Hakugin_InitVars = { ACTOR_BOSS_HAKUGIN, ACTORCAT_BOSS, @@ -21,7 +21,186 @@ const ActorInit Boss_Hakugin_InitVars = { (ActorFunc)BossHakugin_Update, (ActorFunc)BossHakugin_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[19] = { +static ColliderJntSphElementInit D_80B0E700[19] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 16, { { 1300, 200, 0 }, 30 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 15, { { 1400, 300, 0 }, 35 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 2, { { 1600, -400, 0 }, 26 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 6, { { 1700, 200, 400 }, 18 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 8, { { 1000, 0, 0 }, 10 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 9, { { 500, 0, 0 }, 9 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 11, { { 1700, 200, -400 }, 18 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 13, { { 1000, 0, 0 }, 10 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 14, { { 500, 0, 0 }, 9 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 21, { { 800, 0, 400 }, 15 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 22, { { 500, 200, 0 }, 9 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 24, { { 300, 0, 0 }, 8 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 25, { { 500, 100, 0 }, 9 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 28, { { 800, 0, -400 }, 15 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 29, { { 500, 200, 0 }, 9 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 31, { { 300, 0, 0 }, 8 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 32, { { 500, 100, 0 }, 9 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 16, { { 2400, -400, -2900 }, 12 }, 270 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_HITMARK, OCELEM_ON, }, + { 16, { { 2400, -400, 2900 }, 12 }, 270 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B0E9AC = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 19, D_80B0E700, // sJntSphElementsInit, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[1] = { +static ColliderTrisElementInit D_80B0E9BC[1] = { + { + { ELEMTYPE_UNK5, { 0x20000000, 0x03, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { { { 22.0f, 0.0f, 100.0f }, { 0.0f, 0.0f, -100.0f }, { -22.0f, 0.0f, 100.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B0E9F8 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_TYPE_1, COLSHAPE_TRIS, }, + 1, D_80B0E9BC, // sTrisElementsInit, +}; + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80B0EA08 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_TYPE_2, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK5, { 0x20000000, 0x00, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_NONE, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 23 }, 100 }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B0EA34 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x02, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 170, 40, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B0EA60 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xC), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(1, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0xD), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xC), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80B0EA80 = { 30, 80, 100, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B0EAD8[] = { + ICHAIN_S8(hintId, 27, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 27, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 5, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80B0E700[19]; +extern ColliderJntSphInit D_80B0E9AC; +extern ColliderTrisElementInit D_80B0E9BC[1]; +extern ColliderTrisInit D_80B0E9F8; +extern ColliderSphereInit D_80B0EA08; +extern ColliderCylinderInit D_80B0EA34; +extern DamageTable D_80B0EA60; +extern CollisionCheckInfoInit D_80B0EA80; +extern InitChainEntry D_80B0EAD8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Boss_Hakugin_0x80B05290/BossHakugin_Init.asm") diff --git a/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c b/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c index a6ecb7f93..28ff099c0 100644 --- a/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c +++ b/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c @@ -8,7 +8,7 @@ void DemoEffect_Init(Actor* thisx, GlobalContext* globalCtx); void DemoEffect_Destroy(Actor* thisx, GlobalContext* globalCtx); void DemoEffect_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Demo_Effect_InitVars = { ACTOR_DEMO_EFFECT, ACTORCAT_BG, @@ -20,7 +20,8 @@ const ActorInit Demo_Effect_InitVars = { (ActorFunc)DemoEffect_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Demo_Effect_0x808CD740/DemoEffect_Init.asm") diff --git a/src/overlays/actors/ovl_Demo_Getitem/z_demo_getitem.c b/src/overlays/actors/ovl_Demo_Getitem/z_demo_getitem.c index d53fa0543..0999c96c2 100644 --- a/src/overlays/actors/ovl_Demo_Getitem/z_demo_getitem.c +++ b/src/overlays/actors/ovl_Demo_Getitem/z_demo_getitem.c @@ -8,7 +8,7 @@ void DemoGetitem_Init(Actor* thisx, GlobalContext* globalCtx); void DemoGetitem_Destroy(Actor* thisx, GlobalContext* globalCtx); void DemoGetitem_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Demo_Getitem_InitVars = { ACTOR_DEMO_GETITEM, ACTORCAT_BG, @@ -20,7 +20,8 @@ const ActorInit Demo_Getitem_InitVars = { (ActorFunc)DemoGetitem_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Demo_Getitem_0x80A4FA40/DemoGetitem_Init.asm") diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c index 1dda1def5..6799e323c 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c @@ -9,7 +9,7 @@ void DemoKankyo_Destroy(Actor* thisx, GlobalContext* globalCtx); void DemoKankyo_Update(Actor* thisx, GlobalContext* globalCtx); void DemoKankyo_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Demo_Kankyo_InitVars = { ACTOR_DEMO_KANKYO, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Demo_Kankyo_InitVars = { (ActorFunc)DemoKankyo_Update, (ActorFunc)DemoKankyo_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Demo_Kankyo_0x808CE450/func_808CE450.asm") diff --git a/src/overlays/actors/ovl_Demo_Moonend/z_demo_moonend.c b/src/overlays/actors/ovl_Demo_Moonend/z_demo_moonend.c index e3955f9dc..dd8f38c2f 100644 --- a/src/overlays/actors/ovl_Demo_Moonend/z_demo_moonend.c +++ b/src/overlays/actors/ovl_Demo_Moonend/z_demo_moonend.c @@ -9,7 +9,7 @@ void DemoMoonend_Destroy(Actor* thisx, GlobalContext* globalCtx); void DemoMoonend_Update(Actor* thisx, GlobalContext* globalCtx); void DemoMoonend_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Demo_Moonend_InitVars = { ACTOR_DEMO_MOONEND, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Demo_Moonend_InitVars = { (ActorFunc)DemoMoonend_Update, (ActorFunc)DemoMoonend_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Demo_Moonend_0x80C17A10/DemoMoonend_Init.asm") diff --git a/src/overlays/actors/ovl_Demo_Syoten/z_demo_syoten.c b/src/overlays/actors/ovl_Demo_Syoten/z_demo_syoten.c index 2d946a30e..ca9066b77 100644 --- a/src/overlays/actors/ovl_Demo_Syoten/z_demo_syoten.c +++ b/src/overlays/actors/ovl_Demo_Syoten/z_demo_syoten.c @@ -9,7 +9,7 @@ void DemoSyoten_Destroy(Actor* thisx, GlobalContext* globalCtx); void DemoSyoten_Update(Actor* thisx, GlobalContext* globalCtx); void DemoSyoten_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Demo_Syoten_InitVars = { ACTOR_DEMO_SYOTEN, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Demo_Syoten_InitVars = { (ActorFunc)DemoSyoten_Update, (ActorFunc)DemoSyoten_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Demo_Syoten_0x80C16480/DemoSyoten_Init.asm") diff --git a/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c b/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c index ba5800f68..4e9e95a1d 100644 --- a/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c +++ b/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c @@ -9,7 +9,7 @@ void DemoTreLgt_Destroy(Actor* thisx, GlobalContext* globalCtx); void DemoTreLgt_Update(Actor* thisx, GlobalContext* globalCtx); void DemoTreLgt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Demo_Tre_Lgt_InitVars = { ACTOR_DEMO_TRE_LGT, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Demo_Tre_Lgt_InitVars = { (ActorFunc)DemoTreLgt_Update, (ActorFunc)DemoTreLgt_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Demo_Tre_Lgt_0x808E0E40/DemoTreLgt_Init.asm") diff --git a/src/overlays/actors/ovl_Dm_Ah/z_dm_ah.c b/src/overlays/actors/ovl_Dm_Ah/z_dm_ah.c index 23d6cc408..b4e9d9b02 100644 --- a/src/overlays/actors/ovl_Dm_Ah/z_dm_ah.c +++ b/src/overlays/actors/ovl_Dm_Ah/z_dm_ah.c @@ -9,7 +9,7 @@ void DmAh_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmAh_Update(Actor* thisx, GlobalContext* globalCtx); void DmAh_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Ah_InitVars = { ACTOR_DM_AH, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit Dm_Ah_InitVars = { (ActorFunc)DmAh_Update, (ActorFunc)DmAh_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Ah_0x80C1D410/func_80C1D410.asm") diff --git a/src/overlays/actors/ovl_Dm_Al/z_dm_al.c b/src/overlays/actors/ovl_Dm_Al/z_dm_al.c index b125e556f..b9c84d9d2 100644 --- a/src/overlays/actors/ovl_Dm_Al/z_dm_al.c +++ b/src/overlays/actors/ovl_Dm_Al/z_dm_al.c @@ -9,7 +9,7 @@ void DmAl_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmAl_Update(Actor* thisx, GlobalContext* globalCtx); void DmAl_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Al_InitVars = { ACTOR_EN_AL, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit Dm_Al_InitVars = { (ActorFunc)DmAl_Update, (ActorFunc)DmAl_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Al_0x80C1BD90/func_80C1BD90.asm") diff --git a/src/overlays/actors/ovl_Dm_An/z_dm_an.c b/src/overlays/actors/ovl_Dm_An/z_dm_an.c index 5220fbf04..65c24155d 100644 --- a/src/overlays/actors/ovl_Dm_An/z_dm_an.c +++ b/src/overlays/actors/ovl_Dm_An/z_dm_an.c @@ -8,7 +8,7 @@ void DmAn_Init(Actor* thisx, GlobalContext* globalCtx); void DmAn_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmAn_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_An_InitVars = { ACTOR_DM_AN, ACTORCAT_NPC, @@ -20,7 +20,8 @@ const ActorInit Dm_An_InitVars = { (ActorFunc)DmAn_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_An_0x80C1C410/func_80C1C410.asm") diff --git a/src/overlays/actors/ovl_Dm_Bal/z_dm_bal.c b/src/overlays/actors/ovl_Dm_Bal/z_dm_bal.c index 5b30f48bd..91c1c07d0 100644 --- a/src/overlays/actors/ovl_Dm_Bal/z_dm_bal.c +++ b/src/overlays/actors/ovl_Dm_Bal/z_dm_bal.c @@ -9,7 +9,7 @@ void DmBal_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmBal_Update(Actor* thisx, GlobalContext* globalCtx); void DmBal_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Bal_InitVars = { ACTOR_DM_BAL, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit Dm_Bal_InitVars = { (ActorFunc)DmBal_Update, (ActorFunc)DmBal_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Bal_0x80C1E9E0/DmBal_Init.asm") diff --git a/src/overlays/actors/ovl_Dm_Char00/z_dm_char00.c b/src/overlays/actors/ovl_Dm_Char00/z_dm_char00.c index 410abcafa..3127b9fd6 100644 --- a/src/overlays/actors/ovl_Dm_Char00/z_dm_char00.c +++ b/src/overlays/actors/ovl_Dm_Char00/z_dm_char00.c @@ -9,7 +9,7 @@ void DmChar00_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar00_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar00_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char00_InitVars = { ACTOR_DM_CHAR00, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char00_InitVars = { (ActorFunc)DmChar00_Update, (ActorFunc)DmChar00_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char00_0x80AA5580/func_80AA5580.asm") diff --git a/src/overlays/actors/ovl_Dm_Char01/z_dm_char01.c b/src/overlays/actors/ovl_Dm_Char01/z_dm_char01.c index a9c406738..ae25d8b96 100644 --- a/src/overlays/actors/ovl_Dm_Char01/z_dm_char01.c +++ b/src/overlays/actors/ovl_Dm_Char01/z_dm_char01.c @@ -9,7 +9,7 @@ void DmChar01_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar01_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar01_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char01_InitVars = { ACTOR_DM_CHAR01, ACTORCAT_ITEMACTION, @@ -21,7 +21,16 @@ const ActorInit Dm_Char01_InitVars = { (ActorFunc)DmChar01_Update, (ActorFunc)DmChar01_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AAAAB0[] = { + ICHAIN_F32(uncullZoneScale, 300, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AAAAB0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char01_0x80AA81E0/DmChar01_Init.asm") diff --git a/src/overlays/actors/ovl_Dm_Char02/z_dm_char02.c b/src/overlays/actors/ovl_Dm_Char02/z_dm_char02.c index 223283919..11e4353ed 100644 --- a/src/overlays/actors/ovl_Dm_Char02/z_dm_char02.c +++ b/src/overlays/actors/ovl_Dm_Char02/z_dm_char02.c @@ -9,7 +9,7 @@ void DmChar02_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar02_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar02_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char02_InitVars = { ACTOR_DM_CHAR02, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char02_InitVars = { (ActorFunc)DmChar02_Update, (ActorFunc)DmChar02_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char02_0x80AAAE30/func_80AAAE30.asm") diff --git a/src/overlays/actors/ovl_Dm_Char03/z_dm_char03.c b/src/overlays/actors/ovl_Dm_Char03/z_dm_char03.c index f9ca033fe..3c8bd3aa8 100644 --- a/src/overlays/actors/ovl_Dm_Char03/z_dm_char03.c +++ b/src/overlays/actors/ovl_Dm_Char03/z_dm_char03.c @@ -9,7 +9,7 @@ void DmChar03_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar03_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar03_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char03_InitVars = { ACTOR_DM_CHAR03, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char03_InitVars = { (ActorFunc)DmChar03_Update, (ActorFunc)DmChar03_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char03_0x80AAB4A0/func_80AAB4A0.asm") diff --git a/src/overlays/actors/ovl_Dm_Char04/z_dm_char04.c b/src/overlays/actors/ovl_Dm_Char04/z_dm_char04.c index 0591930be..b05caa445 100644 --- a/src/overlays/actors/ovl_Dm_Char04/z_dm_char04.c +++ b/src/overlays/actors/ovl_Dm_Char04/z_dm_char04.c @@ -9,7 +9,7 @@ void DmChar04_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar04_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar04_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char04_InitVars = { ACTOR_DM_CHAR04, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char04_InitVars = { (ActorFunc)DmChar04_Update, (ActorFunc)DmChar04_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char04_0x80AABC40/func_80AABC40.asm") diff --git a/src/overlays/actors/ovl_Dm_Char05/z_dm_char05.c b/src/overlays/actors/ovl_Dm_Char05/z_dm_char05.c index 4d69bd6e6..d0e93375b 100644 --- a/src/overlays/actors/ovl_Dm_Char05/z_dm_char05.c +++ b/src/overlays/actors/ovl_Dm_Char05/z_dm_char05.c @@ -9,7 +9,7 @@ void DmChar05_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar05_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar05_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char05_InitVars = { ACTOR_DM_CHAR05, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char05_InitVars = { (ActorFunc)DmChar05_Update, (ActorFunc)DmChar05_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char05_0x80AAC5A0/func_80AAC5A0.asm") diff --git a/src/overlays/actors/ovl_Dm_Char06/z_dm_char06.c b/src/overlays/actors/ovl_Dm_Char06/z_dm_char06.c index 01e7363ea..7adacccc3 100644 --- a/src/overlays/actors/ovl_Dm_Char06/z_dm_char06.c +++ b/src/overlays/actors/ovl_Dm_Char06/z_dm_char06.c @@ -9,7 +9,7 @@ void DmChar06_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar06_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar06_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char06_InitVars = { ACTOR_DM_CHAR06, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char06_InitVars = { (ActorFunc)DmChar06_Update, (ActorFunc)DmChar06_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char06_0x80AAE680/func_80AAE680.asm") diff --git a/src/overlays/actors/ovl_Dm_Char07/z_dm_char07.c b/src/overlays/actors/ovl_Dm_Char07/z_dm_char07.c index 260c6ec17..c80f7222d 100644 --- a/src/overlays/actors/ovl_Dm_Char07/z_dm_char07.c +++ b/src/overlays/actors/ovl_Dm_Char07/z_dm_char07.c @@ -1,6 +1,6 @@ /* * File: z_dm_char07.c - * Overlay: Dm_Char07 + * Overlay: ovl_Dm_Char07 * Description: Different Milk Bar Objects (Stage, Credits Stage, Spotlights, Dishes) */ diff --git a/src/overlays/actors/ovl_Dm_Char08/z_dm_char08.c b/src/overlays/actors/ovl_Dm_Char08/z_dm_char08.c index 8f2bfebac..018baba9e 100644 --- a/src/overlays/actors/ovl_Dm_Char08/z_dm_char08.c +++ b/src/overlays/actors/ovl_Dm_Char08/z_dm_char08.c @@ -9,7 +9,7 @@ void DmChar08_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar08_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar08_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char08_InitVars = { ACTOR_DM_CHAR08, ACTORCAT_BG, @@ -21,7 +21,18 @@ const ActorInit Dm_Char08_InitVars = { (ActorFunc)DmChar08_Update, (ActorFunc)DmChar08_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AB1764[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 4000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AB1764[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char08_0x80AAF050/func_80AAF050.asm") diff --git a/src/overlays/actors/ovl_Dm_Char09/z_dm_char09.c b/src/overlays/actors/ovl_Dm_Char09/z_dm_char09.c index eaf2988a0..dd722b090 100644 --- a/src/overlays/actors/ovl_Dm_Char09/z_dm_char09.c +++ b/src/overlays/actors/ovl_Dm_Char09/z_dm_char09.c @@ -9,7 +9,7 @@ void DmChar09_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmChar09_Update(Actor* thisx, GlobalContext* globalCtx); void DmChar09_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Char09_InitVars = { ACTOR_DM_CHAR09, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Char09_InitVars = { (ActorFunc)DmChar09_Update, (ActorFunc)DmChar09_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Char09_0x80AB1E10/func_80AB1E10.asm") diff --git a/src/overlays/actors/ovl_Dm_Gm/z_dm_gm.c b/src/overlays/actors/ovl_Dm_Gm/z_dm_gm.c index 987ff4b29..c9f193141 100644 --- a/src/overlays/actors/ovl_Dm_Gm/z_dm_gm.c +++ b/src/overlays/actors/ovl_Dm_Gm/z_dm_gm.c @@ -8,7 +8,7 @@ void DmGm_Init(Actor* thisx, GlobalContext* globalCtx); void DmGm_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmGm_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Gm_InitVars = { ACTOR_DM_GM, ACTORCAT_NPC, @@ -20,7 +20,8 @@ const ActorInit Dm_Gm_InitVars = { (ActorFunc)DmGm_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Gm_0x80C24360/func_80C24360.asm") diff --git a/src/overlays/actors/ovl_Dm_Hina/z_dm_hina.c b/src/overlays/actors/ovl_Dm_Hina/z_dm_hina.c index c009f856b..003edea59 100644 --- a/src/overlays/actors/ovl_Dm_Hina/z_dm_hina.c +++ b/src/overlays/actors/ovl_Dm_Hina/z_dm_hina.c @@ -9,7 +9,7 @@ void DmHina_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmHina_Update(Actor* thisx, GlobalContext* globalCtx); void DmHina_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Hina_InitVars = { ACTOR_DM_HINA, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Hina_InitVars = { (ActorFunc)DmHina_Update, (ActorFunc)DmHina_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Hina_0x80A1F410/DmHina_Init.asm") diff --git a/src/overlays/actors/ovl_Dm_Opstage/z_dm_opstage.c b/src/overlays/actors/ovl_Dm_Opstage/z_dm_opstage.c index 83d064437..10609313c 100644 --- a/src/overlays/actors/ovl_Dm_Opstage/z_dm_opstage.c +++ b/src/overlays/actors/ovl_Dm_Opstage/z_dm_opstage.c @@ -9,7 +9,7 @@ void DmOpstage_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmOpstage_Update(Actor* thisx, GlobalContext* globalCtx); void DmOpstage_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Opstage_InitVars = { ACTOR_DM_OPSTAGE, ACTORCAT_ITEMACTION, @@ -21,7 +21,16 @@ const ActorInit Dm_Opstage_InitVars = { (ActorFunc)DmOpstage_Update, (ActorFunc)DmOpstage_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A9FD30[] = { + ICHAIN_F32(uncullZoneScale, 300, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A9FD30[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Opstage_0x80A9F950/func_80A9F950.asm") diff --git a/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c b/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c index 37a1aec95..fe43468e6 100644 --- a/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c +++ b/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c @@ -9,7 +9,7 @@ void DmStk_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmStk_Update(Actor* thisx, GlobalContext* globalCtx); void DmStk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Stk_InitVars = { ACTOR_DM_STK, ACTORCAT_ITEMACTION, @@ -21,7 +21,61 @@ const ActorInit Dm_Stk_InitVars = { (ActorFunc)DmStk_Update, (ActorFunc)DmStk_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AA35A0 = { + { COLTYPE_HIT1, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 14, 38, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80AA35CC = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80AA35D8 = { + /* Deku Nut */ DMG_ENTRY(1, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(1, 0xF), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0xF), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0xF), + /* Ice arrow */ DMG_ENTRY(1, 0xF), + /* Light arrow */ DMG_ENTRY(1, 0xF), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0xF), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(1, 0xF), + /* Light ray */ DMG_ENTRY(1, 0xF), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(1, 0xF), + /* Normal Roll */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0xF), + /* Unblockable */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0xF), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +extern ColliderCylinderInit D_80AA35A0; +extern CollisionCheckInfoInit2 D_80AA35CC; +extern DamageTable D_80AA35D8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Stk_0x80A9FDB0/func_80A9FDB0.asm") diff --git a/src/overlays/actors/ovl_Dm_Tag/z_dm_tag.c b/src/overlays/actors/ovl_Dm_Tag/z_dm_tag.c index b26ae28e8..5c32544e4 100644 --- a/src/overlays/actors/ovl_Dm_Tag/z_dm_tag.c +++ b/src/overlays/actors/ovl_Dm_Tag/z_dm_tag.c @@ -8,7 +8,7 @@ void DmTag_Init(Actor* thisx, GlobalContext* globalCtx); void DmTag_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmTag_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Tag_InitVars = { ACTOR_DM_TAG, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Dm_Tag_InitVars = { (ActorFunc)DmTag_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Tag_0x80C22350/func_80C22350.asm") diff --git a/src/overlays/actors/ovl_Dm_Tsg/z_dm_tsg.c b/src/overlays/actors/ovl_Dm_Tsg/z_dm_tsg.c index 0579c1ce8..9ece1c732 100644 --- a/src/overlays/actors/ovl_Dm_Tsg/z_dm_tsg.c +++ b/src/overlays/actors/ovl_Dm_Tsg/z_dm_tsg.c @@ -9,7 +9,7 @@ void DmTsg_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmTsg_Update(Actor* thisx, GlobalContext* globalCtx); void DmTsg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Tsg_InitVars = { ACTOR_DM_TSG, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Tsg_InitVars = { (ActorFunc)DmTsg_Update, (ActorFunc)DmTsg_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Tsg_0x80A3AC60/DmTsg_Init.asm") diff --git a/src/overlays/actors/ovl_Dm_Zl/z_dm_zl.c b/src/overlays/actors/ovl_Dm_Zl/z_dm_zl.c index 9e631633f..1ad9aa785 100644 --- a/src/overlays/actors/ovl_Dm_Zl/z_dm_zl.c +++ b/src/overlays/actors/ovl_Dm_Zl/z_dm_zl.c @@ -9,7 +9,7 @@ void DmZl_Destroy(Actor* thisx, GlobalContext* globalCtx); void DmZl_Update(Actor* thisx, GlobalContext* globalCtx); void DmZl_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Dm_Zl_InitVars = { ACTOR_DM_ZL, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Dm_Zl_InitVars = { (ActorFunc)DmZl_Update, (ActorFunc)DmZl_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Dm_Zl_0x80A38190/func_80A38190.asm") diff --git a/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c b/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c index 7bc56d5e4..cddf4cece 100644 --- a/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c +++ b/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c @@ -8,7 +8,7 @@ void DoorShutter_Init(Actor* thisx, GlobalContext* globalCtx); void DoorShutter_Destroy(Actor* thisx, GlobalContext* globalCtx); void DoorShutter_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Door_Shutter_InitVars = { ACTOR_DOOR_SHUTTER, ACTORCAT_DOOR, @@ -20,7 +20,19 @@ const ActorInit Door_Shutter_InitVars = { (ActorFunc)DoorShutter_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808A2248[] = { + ICHAIN_VEC3F(scale, 1, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern InitChainEntry D_808A2248[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Door_Shutter_0x808A08F0/func_808A08F0.asm") diff --git a/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c b/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c index 18f32f9fd..56057a753 100644 --- a/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c +++ b/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c @@ -9,7 +9,7 @@ void DoorWarp1_Destroy(Actor* thisx, GlobalContext* globalCtx); void DoorWarp1_Update(Actor* thisx, GlobalContext* globalCtx); void DoorWarp1_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Door_Warp1_InitVars = { ACTOR_DOOR_WARP1, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Door_Warp1_InitVars = { (ActorFunc)DoorWarp1_Update, (ActorFunc)DoorWarp1_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Door_Warp1_0x808B8490/func_808B8490.asm") diff --git a/src/overlays/actors/ovl_Eff_Change/z_eff_change.c b/src/overlays/actors/ovl_Eff_Change/z_eff_change.c index 0843d5992..913020907 100644 --- a/src/overlays/actors/ovl_Eff_Change/z_eff_change.c +++ b/src/overlays/actors/ovl_Eff_Change/z_eff_change.c @@ -8,7 +8,7 @@ void EffChange_Init(Actor* thisx, GlobalContext* globalCtx); void EffChange_Destroy(Actor* thisx, GlobalContext* globalCtx); void EffChange_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Eff_Change_InitVars = { ACTOR_EFF_CHANGE, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Eff_Change_InitVars = { (ActorFunc)EffChange_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Eff_Change_0x80A4C490/EffChange_Init.asm") diff --git a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c index d67560970..106f55651 100644 --- a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c +++ b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c @@ -1,4 +1,4 @@ -/** +/* * File z_eff_dust.c * Overlay: ovl_Eff_Dust * Description: Dust effects diff --git a/src/overlays/actors/ovl_Eff_Kamejima_Wave/z_eff_kamejima_wave.c b/src/overlays/actors/ovl_Eff_Kamejima_Wave/z_eff_kamejima_wave.c index bc6dc586d..c36f1765c 100644 --- a/src/overlays/actors/ovl_Eff_Kamejima_Wave/z_eff_kamejima_wave.c +++ b/src/overlays/actors/ovl_Eff_Kamejima_Wave/z_eff_kamejima_wave.c @@ -8,7 +8,7 @@ void EffKamejimaWave_Init(Actor* thisx, GlobalContext* globalCtx); void EffKamejimaWave_Destroy(Actor* thisx, GlobalContext* globalCtx); void EffKamejimaWave_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Eff_Kamejima_Wave_InitVars = { ACTOR_EFF_KAMEJIMA_WAVE, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Eff_Kamejima_Wave_InitVars = { (ActorFunc)EffKamejimaWave_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Eff_Kamejima_Wave_0x80BCEB20/EffKamejimaWave_Init.asm") diff --git a/src/overlays/actors/ovl_Eff_Lastday/z_eff_lastday.c b/src/overlays/actors/ovl_Eff_Lastday/z_eff_lastday.c index e21e1d7ef..9f08d854c 100644 --- a/src/overlays/actors/ovl_Eff_Lastday/z_eff_lastday.c +++ b/src/overlays/actors/ovl_Eff_Lastday/z_eff_lastday.c @@ -9,7 +9,7 @@ void EffLastday_Destroy(Actor* thisx, GlobalContext* globalCtx); void EffLastday_Update(Actor* thisx, GlobalContext* globalCtx); void EffLastday_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Eff_Lastday_InitVars = { ACTOR_EFF_LASTDAY, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Eff_Lastday_InitVars = { (ActorFunc)EffLastday_Update, (ActorFunc)EffLastday_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Eff_Lastday_0x80BEBAC0/EffLastday_Init.asm") diff --git a/src/overlays/actors/ovl_Eff_Stk/z_eff_stk.c b/src/overlays/actors/ovl_Eff_Stk/z_eff_stk.c index 459e12471..81749b85f 100644 --- a/src/overlays/actors/ovl_Eff_Stk/z_eff_stk.c +++ b/src/overlays/actors/ovl_Eff_Stk/z_eff_stk.c @@ -9,7 +9,7 @@ void EffStk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EffStk_Update(Actor* thisx, GlobalContext* globalCtx); void EffStk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Eff_Stk_InitVars = { ACTOR_EFF_STK, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Eff_Stk_InitVars = { (ActorFunc)EffStk_Update, (ActorFunc)EffStk_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Eff_Stk_0x80BF0D90/EffStk_Init.asm") diff --git a/src/overlays/actors/ovl_Eff_Zoraband/z_eff_zoraband.c b/src/overlays/actors/ovl_Eff_Zoraband/z_eff_zoraband.c index 76e937816..c81fb07eb 100644 --- a/src/overlays/actors/ovl_Eff_Zoraband/z_eff_zoraband.c +++ b/src/overlays/actors/ovl_Eff_Zoraband/z_eff_zoraband.c @@ -9,7 +9,7 @@ void EffZoraband_Destroy(Actor* thisx, GlobalContext* globalCtx); void EffZoraband_Update(Actor* thisx, GlobalContext* globalCtx); void EffZoraband_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Eff_Zoraband_InitVars = { ACTOR_EFF_ZORABAND, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Eff_Zoraband_InitVars = { (ActorFunc)EffZoraband_Update, (ActorFunc)EffZoraband_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Eff_Zoraband_0x80C07740/EffZoraband_Init.asm") diff --git a/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c b/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c index 524e3b28a..331fd500b 100644 --- a/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c +++ b/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c @@ -8,7 +8,7 @@ void ElfMsg_Init(Actor* thisx, GlobalContext* globalCtx); void ElfMsg_Destroy(Actor* thisx, GlobalContext* globalCtx); void ElfMsg_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Elf_Msg_InitVars = { ACTOR_ELF_MSG, ACTORCAT_ITEMACTION, @@ -20,7 +20,17 @@ const ActorInit Elf_Msg_InitVars = { (ActorFunc)ElfMsg_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8092E470[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8092E470[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Elf_Msg_0x8092DF90/func_8092DF90.asm") diff --git a/src/overlays/actors/ovl_Elf_Msg2/z_elf_msg2.c b/src/overlays/actors/ovl_Elf_Msg2/z_elf_msg2.c index f9d7f8e21..caf51468c 100644 --- a/src/overlays/actors/ovl_Elf_Msg2/z_elf_msg2.c +++ b/src/overlays/actors/ovl_Elf_Msg2/z_elf_msg2.c @@ -8,7 +8,7 @@ void ElfMsg2_Init(Actor* thisx, GlobalContext* globalCtx); void ElfMsg2_Destroy(Actor* thisx, GlobalContext* globalCtx); void ElfMsg2_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Elf_Msg2_InitVars = { ACTOR_ELF_MSG2, ACTORCAT_BG, @@ -20,7 +20,17 @@ const ActorInit Elf_Msg2_InitVars = { (ActorFunc)ElfMsg2_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8096F0B0[] = { + ICHAIN_VEC3F_DIV1000(scale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8096F0B0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Elf_Msg2_0x8096EC40/func_8096EC40.asm") diff --git a/src/overlays/actors/ovl_Elf_Msg3/z_elf_msg3.c b/src/overlays/actors/ovl_Elf_Msg3/z_elf_msg3.c index 2652e32bb..bb9a28419 100644 --- a/src/overlays/actors/ovl_Elf_Msg3/z_elf_msg3.c +++ b/src/overlays/actors/ovl_Elf_Msg3/z_elf_msg3.c @@ -8,7 +8,7 @@ void ElfMsg3_Init(Actor* thisx, GlobalContext* globalCtx); void ElfMsg3_Destroy(Actor* thisx, GlobalContext* globalCtx); void ElfMsg3_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Elf_Msg3_InitVars = { ACTOR_ELF_MSG3, ACTORCAT_ITEMACTION, @@ -20,7 +20,17 @@ const ActorInit Elf_Msg3_InitVars = { (ActorFunc)ElfMsg3_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A2D1E0[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A2D1E0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Elf_Msg3_0x80A2CD10/func_80A2CD10.asm") diff --git a/src/overlays/actors/ovl_Elf_Msg4/z_elf_msg4.c b/src/overlays/actors/ovl_Elf_Msg4/z_elf_msg4.c index 7d0a6eab4..73ffd9be5 100644 --- a/src/overlays/actors/ovl_Elf_Msg4/z_elf_msg4.c +++ b/src/overlays/actors/ovl_Elf_Msg4/z_elf_msg4.c @@ -8,7 +8,7 @@ void ElfMsg4_Init(Actor* thisx, GlobalContext* globalCtx); void ElfMsg4_Destroy(Actor* thisx, GlobalContext* globalCtx); void ElfMsg4_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Elf_Msg4_InitVars = { ACTOR_ELF_MSG4, ACTORCAT_ITEMACTION, @@ -20,7 +20,17 @@ const ActorInit Elf_Msg4_InitVars = { (ActorFunc)ElfMsg4_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AFD8F0[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AFD8F0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Elf_Msg4_0x80AFD380/func_80AFD380.asm") diff --git a/src/overlays/actors/ovl_Elf_Msg5/z_elf_msg5.c b/src/overlays/actors/ovl_Elf_Msg5/z_elf_msg5.c index 3d48fa2c3..e2c739bdd 100644 --- a/src/overlays/actors/ovl_Elf_Msg5/z_elf_msg5.c +++ b/src/overlays/actors/ovl_Elf_Msg5/z_elf_msg5.c @@ -8,7 +8,7 @@ void ElfMsg5_Init(Actor* thisx, GlobalContext* globalCtx); void ElfMsg5_Destroy(Actor* thisx, GlobalContext* globalCtx); void ElfMsg5_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Elf_Msg5_InitVars = { ACTOR_ELF_MSG5, ACTORCAT_BG, @@ -20,7 +20,17 @@ const ActorInit Elf_Msg5_InitVars = { (ActorFunc)ElfMsg5_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AFDBD0[] = { + ICHAIN_VEC3F_DIV1000(scale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AFDBD0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Elf_Msg5_0x80AFD990/func_80AFD990.asm") diff --git a/src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c b/src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c index 37241b429..60f5faf5f 100644 --- a/src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c +++ b/src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c @@ -8,7 +8,7 @@ void ElfMsg6_Init(Actor* thisx, GlobalContext* globalCtx); void ElfMsg6_Destroy(Actor* thisx, GlobalContext* globalCtx); void ElfMsg6_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Elf_Msg6_InitVars = { ACTOR_ELF_MSG6, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Elf_Msg6_InitVars = { (ActorFunc)ElfMsg6_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Elf_Msg6_0x80BA15A0/func_80BA15A0.asm") diff --git a/src/overlays/actors/ovl_En_Ah/z_en_ah.c b/src/overlays/actors/ovl_En_Ah/z_en_ah.c index 4e982594d..53b32e265 100644 --- a/src/overlays/actors/ovl_En_Ah/z_en_ah.c +++ b/src/overlays/actors/ovl_En_Ah/z_en_ah.c @@ -9,7 +9,7 @@ void EnAh_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAh_Update(Actor* thisx, GlobalContext* globalCtx); void EnAh_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ah_InitVars = { ACTOR_EN_AH, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Ah_InitVars = { (ActorFunc)EnAh_Update, (ActorFunc)EnAh_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD3E34 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 68, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BD3E60 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BD3E34; +extern CollisionCheckInfoInit2 D_80BD3E60; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ah_0x80BD2A30/func_80BD2A30.asm") diff --git a/src/overlays/actors/ovl_En_Akindonuts/z_en_akindonuts.c b/src/overlays/actors/ovl_En_Akindonuts/z_en_akindonuts.c index 120284d73..04a406161 100644 --- a/src/overlays/actors/ovl_En_Akindonuts/z_en_akindonuts.c +++ b/src/overlays/actors/ovl_En_Akindonuts/z_en_akindonuts.c @@ -9,7 +9,7 @@ void EnAkindonuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAkindonuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnAkindonuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Akindonuts_InitVars = { ACTOR_EN_AKINDONUTS, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Akindonuts_InitVars = { (ActorFunc)EnAkindonuts_Update, (ActorFunc)EnAkindonuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BF02F0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 27, 32, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BF04B4[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 30, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BF02F0; +extern InitChainEntry D_80BF04B4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Akindonuts_0x80BECBE0/func_80BECBE0.asm") diff --git a/src/overlays/actors/ovl_En_Al/z_en_al.c b/src/overlays/actors/ovl_En_Al/z_en_al.c index cfbf0ffd6..41b24d397 100644 --- a/src/overlays/actors/ovl_En_Al/z_en_al.c +++ b/src/overlays/actors/ovl_En_Al/z_en_al.c @@ -9,7 +9,7 @@ void EnAl_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAl_Update(Actor* thisx, GlobalContext* globalCtx); void EnAl_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Al_InitVars = { ACTOR_EN_AL, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Al_InitVars = { (ActorFunc)EnAl_Update, (ActorFunc)EnAl_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BDFFB8 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 14, 62, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BDFFE4 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BDFFB8; +extern CollisionCheckInfoInit2 D_80BDFFE4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Al_0x80BDE1A0/func_80BDE1A0.asm") diff --git a/src/overlays/actors/ovl_En_Am/z_en_am.c b/src/overlays/actors/ovl_En_Am/z_en_am.c index 4409bc17c..5f18d76a4 100644 --- a/src/overlays/actors/ovl_En_Am/z_en_am.c +++ b/src/overlays/actors/ovl_En_Am/z_en_am.c @@ -9,7 +9,7 @@ void EnAm_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAm_Update(Actor* thisx, GlobalContext* globalCtx); void EnAm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Am_InitVars = { ACTOR_EN_AM, ACTORCAT_ENEMY, @@ -21,7 +21,80 @@ const ActorInit En_Am_InitVars = { (ActorFunc)EnAm_Update, (ActorFunc)EnAm_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808B1070 = { + { COLTYPE_HIT5, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0x81C2C788, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 23, 98, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808B109C = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x760D3877, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 23, 98, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808B10C8 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0xF), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xD), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0xF), + /* Ice arrow */ DMG_ENTRY(0, 0xF), + /* Light arrow */ DMG_ENTRY(0, 0xF), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808B10E8 = { 1, 23, 98, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808B10F0[] = { + ICHAIN_VEC3F_DIV1000(scale, 14, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 19, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -4000, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808B1070; +extern ColliderCylinderInit D_808B109C; +extern DamageTable D_808B10C8; +extern CollisionCheckInfoInit D_808B10E8; +extern InitChainEntry D_808B10F0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Am_0x808AFCD0/EnAm_Init.asm") diff --git a/src/overlays/actors/ovl_En_An/z_en_an.c b/src/overlays/actors/ovl_En_An/z_en_an.c index 49f199316..e9d3072e9 100644 --- a/src/overlays/actors/ovl_En_An/z_en_an.c +++ b/src/overlays/actors/ovl_En_An/z_en_an.c @@ -8,7 +8,7 @@ void EnAn_Init(Actor* thisx, GlobalContext* globalCtx); void EnAn_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAn_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_An_InitVars = { ACTOR_EN_AN, ACTORCAT_NPC, @@ -20,7 +20,23 @@ const ActorInit En_An_InitVars = { (ActorFunc)EnAn_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B58BBC = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 14, 62, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B58BE8 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80B58BBC; +extern CollisionCheckInfoInit2 D_80B58BE8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_An_0x80B53840/func_80B53840.asm") diff --git a/src/overlays/actors/ovl_En_And/z_en_and.c b/src/overlays/actors/ovl_En_And/z_en_and.c index b929e556d..c9ca73440 100644 --- a/src/overlays/actors/ovl_En_And/z_en_and.c +++ b/src/overlays/actors/ovl_En_And/z_en_and.c @@ -9,7 +9,7 @@ void EnAnd_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAnd_Update(Actor* thisx, GlobalContext* globalCtx); void EnAnd_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_And_InitVars = { ACTOR_EN_AND, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_And_InitVars = { (ActorFunc)EnAnd_Update, (ActorFunc)EnAnd_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_And_0x80C18B90/func_80C18B90.asm") diff --git a/src/overlays/actors/ovl_En_Ani/z_en_ani.c b/src/overlays/actors/ovl_En_Ani/z_en_ani.c index 8f258f6d9..0385569ae 100644 --- a/src/overlays/actors/ovl_En_Ani/z_en_ani.c +++ b/src/overlays/actors/ovl_En_Ani/z_en_ani.c @@ -9,7 +9,7 @@ void EnAni_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAni_Update(Actor* thisx, GlobalContext* globalCtx); void EnAni_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ani_InitVars = { ACTOR_EN_ANI, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Ani_InitVars = { (ActorFunc)EnAni_Update, (ActorFunc)EnAni_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80968670 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8096869C[] = { + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 850, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80968670; +extern InitChainEntry D_8096869C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ani_0x809679D0/func_809679D0.asm") diff --git a/src/overlays/actors/ovl_En_Aob_01/z_en_aob_01.c b/src/overlays/actors/ovl_En_Aob_01/z_en_aob_01.c index 170fa01e6..337016442 100644 --- a/src/overlays/actors/ovl_En_Aob_01/z_en_aob_01.c +++ b/src/overlays/actors/ovl_En_Aob_01/z_en_aob_01.c @@ -9,7 +9,7 @@ void EnAob01_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAob01_Update(Actor* thisx, GlobalContext* globalCtx); void EnAob01_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Aob_01_InitVars = { ACTOR_EN_AOB_01, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Aob_01_InitVars = { (ActorFunc)EnAob01_Update, (ActorFunc)EnAob01_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809C3820 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_809C3820; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Aob_01_0x809C10B0/func_809C10B0.asm") diff --git a/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c b/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c index 75c0818eb..052cb0ad3 100644 --- a/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c +++ b/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c @@ -9,7 +9,7 @@ void EnArrow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnArrow_Update(Actor* thisx, GlobalContext* globalCtx); void EnArrow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Arrow_InitVars = { ACTOR_EN_ARROW, ACTORCAT_ITEMACTION, @@ -21,7 +21,25 @@ const ActorInit En_Arrow_InitVars = { (ActorFunc)EnArrow_Update, (ActorFunc)EnArrow_Draw, }; -*/ + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_8088C1E0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_TYPE_PLAYER, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK2, { 0x00000020, 0x00, 0x02 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_NEAREST | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8088C230[] = { + ICHAIN_F32(minVelocityY, -150, ICHAIN_STOP), +}; + + +extern ColliderQuadInit D_8088C1E0; +extern InitChainEntry D_8088C230[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Arrow_0x8088A240/EnArrow_Init.asm") diff --git a/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c b/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c index e013caf4e..a9445dff1 100644 --- a/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c +++ b/src/overlays/actors/ovl_En_Attack_Niw/z_en_attack_niw.c @@ -9,7 +9,7 @@ void EnAttackNiw_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAttackNiw_Update(Actor* thisx, GlobalContext* globalCtx); void EnAttackNiw_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Attack_Niw_InitVars = { ACTOR_EN_ATTACK_NIW, ACTORCAT_ENEMY, @@ -21,7 +21,18 @@ const ActorInit En_Attack_Niw_InitVars = { (ActorFunc)EnAttackNiw_Update, (ActorFunc)EnAttackNiw_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80959120[] = { + ICHAIN_U8(targetMode, 1, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 0, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80959120[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Attack_Niw_0x809580C0/EnAttackNiw_Init.asm") diff --git a/src/overlays/actors/ovl_En_Az/z_en_az.c b/src/overlays/actors/ovl_En_Az/z_en_az.c index a8bb9958a..f84fb53fd 100644 --- a/src/overlays/actors/ovl_En_Az/z_en_az.c +++ b/src/overlays/actors/ovl_En_Az/z_en_az.c @@ -9,7 +9,7 @@ void EnAz_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnAz_Update(Actor* thisx, GlobalContext* globalCtx); void EnAz_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Az_InitVars = { ACTOR_EN_AZ, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Az_InitVars = { (ActorFunc)EnAz_Update, (ActorFunc)EnAz_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A99110 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 46, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80A99110; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Az_0x80A94A30/func_80A94A30.asm") diff --git a/src/overlays/actors/ovl_En_Baba/z_en_baba.c b/src/overlays/actors/ovl_En_Baba/z_en_baba.c index f48ed134d..53f3619a2 100644 --- a/src/overlays/actors/ovl_En_Baba/z_en_baba.c +++ b/src/overlays/actors/ovl_En_Baba/z_en_baba.c @@ -9,7 +9,7 @@ void EnBaba_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBaba_Update(Actor* thisx, GlobalContext* globalCtx); void EnBaba_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Baba_InitVars = { ACTOR_EN_BABA, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Baba_InitVars = { (ActorFunc)EnBaba_Update, (ActorFunc)EnBaba_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BAA430 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BAA45C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BAA468 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderCylinderInit D_80BAA430; +extern CollisionCheckInfoInit2 D_80BAA45C; +extern DamageTable D_80BAA468; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Baba_0x80BA8820/func_80BA8820.asm") diff --git a/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c b/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c index fe2f175fd..2f550ac03 100644 --- a/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c +++ b/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c @@ -8,7 +8,7 @@ void EnBaguo_Init(Actor* thisx, GlobalContext* globalCtx); void EnBaguo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBaguo_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Baguo_InitVars = { ACTOR_EN_BAGUO, ACTORCAT_ENEMY, @@ -20,7 +20,64 @@ const ActorInit En_Baguo_InitVars = { (ActorFunc)EnBaguo_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A3C2F0[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A3C314 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A3C2F0, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A3C324 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xE), + /* Zora boomerang */ DMG_ENTRY(3, 0xE), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(3, 0xE), + /* Goron punch */ DMG_ENTRY(2, 0xE), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(1, 0xE), + /* Fire arrow */ DMG_ENTRY(0, 0xF), + /* Ice arrow */ DMG_ENTRY(0, 0xF), + /* Light arrow */ DMG_ENTRY(1, 0xE), + /* Goron spikes */ DMG_ENTRY(2, 0xE), + /* Deku spin */ DMG_ENTRY(0, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(1, 0xE), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xE), +}; + + +extern ColliderJntSphElementInit D_80A3C2F0[1]; +extern ColliderJntSphInit D_80A3C314; +extern DamageTable D_80A3C324; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Baguo_0x80A3B080/EnBaguo_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bal/z_en_bal.c b/src/overlays/actors/ovl_En_Bal/z_en_bal.c index 731241383..daed7a517 100644 --- a/src/overlays/actors/ovl_En_Bal/z_en_bal.c +++ b/src/overlays/actors/ovl_En_Bal/z_en_bal.c @@ -9,7 +9,7 @@ void EnBal_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBal_Update(Actor* thisx, GlobalContext* globalCtx); void EnBal_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bal_InitVars = { ACTOR_EN_BAL, ACTORCAT_NPC, @@ -21,7 +21,69 @@ const ActorInit En_Bal_InitVars = { (ActorFunc)EnBal_Update, (ActorFunc)EnBal_Draw, }; -*/ + + +// static DamageTable sDamageTable = { +static DamageTable D_80A63CE0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0xE), + /* Normal arrow */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0xF), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0xE), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A63D00 = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A63D0C[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, { { 2400, 0, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A63D30 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A63D0C, // sJntSphElementsInit, +}; + + +extern DamageTable D_80A63CE0; +extern CollisionCheckInfoInit2 D_80A63D00; +extern ColliderJntSphElementInit D_80A63D0C[1]; +extern ColliderJntSphInit D_80A63D30; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bal_0x80A61810/EnBal_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bat/z_en_bat.c b/src/overlays/actors/ovl_En_Bat/z_en_bat.c index 78b0eacf5..7fb0aec09 100644 --- a/src/overlays/actors/ovl_En_Bat/z_en_bat.c +++ b/src/overlays/actors/ovl_En_Bat/z_en_bat.c @@ -9,7 +9,7 @@ void EnBat_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBat_Update(Actor* thisx, GlobalContext* globalCtx); void EnBat_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bat_InitVars = { ACTOR_EN_BAT, ACTORCAT_ENEMY, @@ -21,7 +21,71 @@ const ActorInit En_Bat_InitVars = { (ActorFunc)EnBat_Update, (ActorFunc)EnBat_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80A44A00 = { + { COLTYPE_HIT3, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A44A2C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80A44A4C = { 1, 15, 30, 10 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A44A54[] = { + ICHAIN_S8(hintId, 96, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 3000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -500, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_80A44A00; +extern DamageTable D_80A44A2C; +extern CollisionCheckInfoInit D_80A44A4C; +extern InitChainEntry D_80A44A54[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bat_0x80A434E0/EnBat_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bb/z_en_bb.c b/src/overlays/actors/ovl_En_Bb/z_en_bb.c index c66daf793..1f4886d3a 100644 --- a/src/overlays/actors/ovl_En_Bb/z_en_bb.c +++ b/src/overlays/actors/ovl_En_Bb/z_en_bb.c @@ -9,7 +9,7 @@ void EnBb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBb_Update(Actor* thisx, GlobalContext* globalCtx); void EnBb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bb_InitVars = { ACTOR_EN_BB, ACTORCAT_ENEMY, @@ -21,7 +21,69 @@ const ActorInit En_Bb_InitVars = { (ActorFunc)EnBb_Update, (ActorFunc)EnBb_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_808C37A0 = { + { COLTYPE_HIT3, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808C37CC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808C37EC = { 2, 20, 40, 50 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808C37F4[] = { + ICHAIN_S8(hintId, 28, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 10, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_808C37A0; +extern DamageTable D_808C37CC; +extern CollisionCheckInfoInit D_808C37EC; +extern InitChainEntry D_808C37F4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bb_0x808C1D40/EnBb_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bba_01/z_en_bba_01.c b/src/overlays/actors/ovl_En_Bba_01/z_en_bba_01.c index 122541832..e9d8f5e39 100644 --- a/src/overlays/actors/ovl_En_Bba_01/z_en_bba_01.c +++ b/src/overlays/actors/ovl_En_Bba_01/z_en_bba_01.c @@ -9,7 +9,7 @@ void EnBba01_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBba01_Update(Actor* thisx, GlobalContext* globalCtx); void EnBba01_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bba_01_InitVars = { ACTOR_EN_BBA_01, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Bba_01_InitVars = { (ActorFunc)EnBba01_Update, (ActorFunc)EnBba01_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809CCC80 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_809CCCAC = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_809CCCB8 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_809CCC80; +extern CollisionCheckInfoInit2 D_809CCCAC; +extern DamageTable D_809CCCB8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bba_01_0x809CC060/func_809CC060.asm") diff --git a/src/overlays/actors/ovl_En_Bbfall/z_en_bbfall.c b/src/overlays/actors/ovl_En_Bbfall/z_en_bbfall.c index 2eda58e07..c136e3834 100644 --- a/src/overlays/actors/ovl_En_Bbfall/z_en_bbfall.c +++ b/src/overlays/actors/ovl_En_Bbfall/z_en_bbfall.c @@ -9,7 +9,7 @@ void EnBbfall_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBbfall_Update(Actor* thisx, GlobalContext* globalCtx); void EnBbfall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bbfall_InitVars = { ACTOR_EN_BBFALL, ACTORCAT_ENEMY, @@ -21,7 +21,85 @@ const ActorInit En_Bbfall_InitVars = { (ActorFunc)EnBbfall_Update, (ActorFunc)EnBbfall_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[3] = { +static ColliderJntSphElementInit D_808C0D30[3] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x01, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x01, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x01, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808C0D9C = { + { COLTYPE_HIT3, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 3, D_808C0D30, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808C0DAC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808C0DCC = { 2, 20, 40, 50 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808C0DD4[] = { + ICHAIN_S8(hintId, 36, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 10, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_808C0D30[3]; +extern ColliderJntSphInit D_808C0D9C; +extern DamageTable D_808C0DAC; +extern CollisionCheckInfoInit D_808C0DCC; +extern InitChainEntry D_808C0DD4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bbfall_0x808BF220/EnBbfall_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bee/z_en_bee.c b/src/overlays/actors/ovl_En_Bee/z_en_bee.c index ffa724597..b15bf9cff 100644 --- a/src/overlays/actors/ovl_En_Bee/z_en_bee.c +++ b/src/overlays/actors/ovl_En_Bee/z_en_bee.c @@ -9,7 +9,7 @@ void EnBee_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBee_Update(Actor* thisx, GlobalContext* globalCtx); void EnBee_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bee_InitVars = { ACTOR_EN_BEE, ACTORCAT_ENEMY, @@ -21,7 +21,56 @@ const ActorInit En_Bee_InitVars = { (ActorFunc)EnBee_Update, (ActorFunc)EnBee_Draw, }; -*/ + + +// static DamageTable sDamageTable = { +static DamageTable D_80B5B214 = { + /* Deku Nut */ DMG_ENTRY(1, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(1, 0xF), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0xF), + /* Ice arrow */ DMG_ENTRY(2, 0xF), + /* Light arrow */ DMG_ENTRY(2, 0xF), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0xF), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(1, 0xF), + /* Normal Roll */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B5B234 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x08, 0x02 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, 13, -4, { 0, 0, 0 } }, +}; + + +extern DamageTable D_80B5B214; +extern ColliderCylinderInit D_80B5B234; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bee_0x80B5A720/EnBee_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bh/z_en_bh.c b/src/overlays/actors/ovl_En_Bh/z_en_bh.c index ecb7a9c27..d3630b445 100644 --- a/src/overlays/actors/ovl_En_Bh/z_en_bh.c +++ b/src/overlays/actors/ovl_En_Bh/z_en_bh.c @@ -9,7 +9,7 @@ void EnBh_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBh_Update(Actor* thisx, GlobalContext* globalCtx); void EnBh_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bh_InitVars = { ACTOR_EN_BH, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Bh_InitVars = { (ActorFunc)EnBh_Update, (ActorFunc)EnBh_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bh_0x80C22D40/EnBh_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c index 20ed2bde1..c2c9dca0a 100644 --- a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c +++ b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c @@ -9,7 +9,7 @@ void EnBigokuta_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBigokuta_Update(Actor* thisx, GlobalContext* globalCtx); void EnBigokuta_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bigokuta_InitVars = { ACTOR_EN_BIGOKUTA, ACTORCAT_BOSS, @@ -21,7 +21,43 @@ const ActorInit En_Bigokuta_InitVars = { (ActorFunc)EnBigokuta_Update, (ActorFunc)EnBigokuta_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AC4530 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFC74F, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 75, 125, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AC455C = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x000038B0, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 70, 125, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80AC4588 = { 4, 130, 120, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AC4590[] = { + ICHAIN_F32(uncullZoneForward, 2500, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 89, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 33, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AC4530; +extern ColliderCylinderInit D_80AC455C; +extern CollisionCheckInfoInit D_80AC4588; +extern InitChainEntry D_80AC4590[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bigokuta_0x80AC26F0/EnBigokuta_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bigpamet/z_en_bigpamet.c b/src/overlays/actors/ovl_En_Bigpamet/z_en_bigpamet.c index 9d080debc..afa76ede7 100644 --- a/src/overlays/actors/ovl_En_Bigpamet/z_en_bigpamet.c +++ b/src/overlays/actors/ovl_En_Bigpamet/z_en_bigpamet.c @@ -9,7 +9,7 @@ void EnBigpamet_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBigpamet_Update(Actor* thisx, GlobalContext* globalCtx); void EnBigpamet_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bigpamet_InitVars = { ACTOR_EN_BIGPAMET, ACTORCAT_BOSS, @@ -21,7 +21,72 @@ const ActorInit En_Bigpamet_InitVars = { (ActorFunc)EnBigpamet_Update, (ActorFunc)EnBigpamet_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A29700 = { + { COLTYPE_HARD, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CF7FFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 53, 50, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80A2972C = { 1, 53, 60, 250 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A29734 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A29764[] = { + ICHAIN_S8(hintId, 1, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 15, ICHAIN_CONTINUE), + ICHAIN_F32(gravity, -2, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 4333, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 5, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A29700; +extern CollisionCheckInfoInit D_80A2972C; +extern DamageTable D_80A29734; +extern InitChainEntry D_80A29764[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bigpamet_0x80A27520/EnBigpamet_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c b/src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c index 7cfb2d877..8431d0de9 100644 --- a/src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c +++ b/src/overlays/actors/ovl_En_Bigpo/z_en_bigpo.c @@ -8,7 +8,7 @@ void EnBigpo_Init(Actor* thisx, GlobalContext* globalCtx); void EnBigpo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBigpo_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bigpo_InitVars = { ACTOR_EN_BIGPO, ACTORCAT_ENEMY, @@ -20,7 +20,69 @@ const ActorInit En_Bigpo_InitVars = { (ActorFunc)EnBigpo_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B65010 = { + { COLTYPE_HIT3, AT_NONE | AT_TYPE_ENEMY, AC_NONE | AC_TYPE_PLAYER, OC1_NONE | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 35, 100, 10, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80B6503C = { 10, 35, 100, 50 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B65044 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B65064[] = { + ICHAIN_S8(hintId, 90, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 3200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B65010; +extern CollisionCheckInfoInit D_80B6503C; +extern DamageTable D_80B65044; +extern InitChainEntry D_80B65064[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bigpo_0x80B615E0/EnBigpo_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c index 733e31a2a..59bf7b550 100644 --- a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c +++ b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c @@ -9,7 +9,7 @@ void EnBigslime_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBigslime_Update(Actor* thisx, GlobalContext* globalCtx); void EnBigslime_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bigslime_InitVars = { ACTOR_EN_BIGSLIME, ACTORCAT_BOSS, @@ -21,7 +21,71 @@ const ActorInit En_Bigslime_InitVars = { (ActorFunc)EnBigslime_Update, (ActorFunc)EnBigslime_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808F02A0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_NO_PUSH | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 30, 60, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808F02CC = { 10, 100, 100, 50 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808F02D4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xD), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808F0338[] = { + ICHAIN_S8(hintId, 95, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(targetArrowOffset, -13221, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 5, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808F02A0; +extern CollisionCheckInfoInit D_808F02CC; +extern DamageTable D_808F02D4; +extern InitChainEntry D_808F0338[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bigslime_0x808E4FC0/EnBigslime_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bjt/z_en_bjt.c b/src/overlays/actors/ovl_En_Bjt/z_en_bjt.c index 9d6af7208..0ad57f4e9 100644 --- a/src/overlays/actors/ovl_En_Bjt/z_en_bjt.c +++ b/src/overlays/actors/ovl_En_Bjt/z_en_bjt.c @@ -9,7 +9,7 @@ void EnBjt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBjt_Update(Actor* thisx, GlobalContext* globalCtx); void EnBjt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bjt_InitVars = { ACTOR_EN_BJT, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Bjt_InitVars = { (ActorFunc)EnBjt_Update, (ActorFunc)EnBjt_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BFDF48 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 68, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BFDF74 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BFDF48; +extern CollisionCheckInfoInit2 D_80BFDF74; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bjt_0x80BFD2E0/func_80BFD2E0.asm") diff --git a/src/overlays/actors/ovl_En_Bom/z_en_bom.c b/src/overlays/actors/ovl_En_Bom/z_en_bom.c index 79c3b37dc..d434a12c2 100644 --- a/src/overlays/actors/ovl_En_Bom/z_en_bom.c +++ b/src/overlays/actors/ovl_En_Bom/z_en_bom.c @@ -9,7 +9,7 @@ void EnBom_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBom_Update(Actor* thisx, GlobalContext* globalCtx); void EnBom_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bom_InitVars = { ACTOR_EN_BOM, ACTORCAT_EXPLOSIVES, @@ -21,7 +21,61 @@ const ActorInit En_Bom_InitVars = { (ActorFunc)EnBom_Update, (ActorFunc)EnBom_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80872DC8 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0x00013828, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, 11, 14, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80872DF4[1] = { + { + { ELEMTYPE_UNK0, { 0x00000008, 0x00, 0x02 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 0 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80872E18 = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ALL, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 1, D_80872DF4, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80872E28[1] = { + { + { ELEMTYPE_UNK0, { 0x80000008, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 0 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80872E4C = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ALL, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 1, D_80872E28, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80872E5C[] = { + ICHAIN_VEC3F(scale, 0, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -4000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80872DC8; +extern ColliderJntSphElementInit D_80872DF4[1]; +extern ColliderJntSphInit D_80872E18; +extern ColliderJntSphElementInit D_80872E28[1]; +extern ColliderJntSphInit D_80872E4C; +extern InitChainEntry D_80872E5C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bom_0x80870DB0/EnBom_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c b/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c index db8d93e7b..e16c01313 100644 --- a/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c +++ b/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c @@ -9,7 +9,7 @@ void EnBomBowlMan_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBomBowlMan_Update(Actor* thisx, GlobalContext* globalCtx); void EnBomBowlMan_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bom_Bowl_Man_InitVars = { ACTOR_EN_BOM_BOWL_MAN, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Bom_Bowl_Man_InitVars = { (ActorFunc)EnBomBowlMan_Update, (ActorFunc)EnBomBowlMan_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bom_Bowl_Man_0x809C4790/EnBomBowlMan_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c index 7a67306f3..bdb581cf0 100644 --- a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c +++ b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c @@ -9,7 +9,7 @@ void EnBomChu_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBomChu_Update(Actor* thisx, GlobalContext* globalCtx); void EnBomChu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bom_Chu_InitVars = { ACTOR_EN_BOM_CHU, ACTORCAT_EXPLOSIVES, @@ -21,7 +21,26 @@ const ActorInit En_Bom_Chu_InitVars = { (ActorFunc)EnBomChu_Update, (ActorFunc)EnBomChu_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_808F88E0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_1 | OC1_TYPE_2, OC2_TYPE_2, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 13 }, 100 }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808F890C[] = { + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_808F88E0; +extern InitChainEntry D_808F890C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bom_Chu_0x808F74B0/EnBomChu_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bombal/z_en_bombal.c b/src/overlays/actors/ovl_En_Bombal/z_en_bombal.c index f81ae5d80..dcc9f8e9f 100644 --- a/src/overlays/actors/ovl_En_Bombal/z_en_bombal.c +++ b/src/overlays/actors/ovl_En_Bombal/z_en_bombal.c @@ -9,7 +9,7 @@ void EnBombal_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBombal_Update(Actor* thisx, GlobalContext* globalCtx); void EnBombal_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bombal_InitVars = { ACTOR_EN_BOMBAL, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Bombal_InitVars = { (ActorFunc)EnBombal_Update, (ActorFunc)EnBombal_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C06460 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x004138B0, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 60, 90, -50, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C06460; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bombal_0x80C05A70/EnBombal_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bombers/z_en_bombers.c b/src/overlays/actors/ovl_En_Bombers/z_en_bombers.c index e51743ef1..aec1c03b4 100644 --- a/src/overlays/actors/ovl_En_Bombers/z_en_bombers.c +++ b/src/overlays/actors/ovl_En_Bombers/z_en_bombers.c @@ -9,7 +9,7 @@ void EnBombers_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBombers_Update(Actor* thisx, GlobalContext* globalCtx); void EnBombers_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bombers_InitVars = { ACTOR_EN_BOMBERS, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Bombers_InitVars = { (ActorFunc)EnBombers_Update, (ActorFunc)EnBombers_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C04770 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C04770; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bombers_0x80C03530/EnBombers_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bombers2/z_en_bombers2.c b/src/overlays/actors/ovl_En_Bombers2/z_en_bombers2.c index 18fc7e6b6..283197210 100644 --- a/src/overlays/actors/ovl_En_Bombers2/z_en_bombers2.c +++ b/src/overlays/actors/ovl_En_Bombers2/z_en_bombers2.c @@ -9,7 +9,7 @@ void EnBombers2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBombers2_Update(Actor* thisx, GlobalContext* globalCtx); void EnBombers2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bombers2_InitVars = { ACTOR_EN_BOMBERS2, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Bombers2_InitVars = { (ActorFunc)EnBombers2_Update, (ActorFunc)EnBombers2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C058B0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 35, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C058B0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bombers2_0x80C04930/EnBombers2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c index ba5737630..a82c84d7a 100644 --- a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c +++ b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c @@ -9,7 +9,7 @@ void EnBombf_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBombf_Update(Actor* thisx, GlobalContext* globalCtx); void EnBombf_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bombf_InitVars = { ACTOR_EN_BOMBF, ACTORCAT_PROP, @@ -21,7 +21,35 @@ const ActorInit En_Bombf_InitVars = { (ActorFunc)EnBombf_Update, (ActorFunc)EnBombf_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808AFB20 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0x00013A28, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, 18, 10, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_808AFB4C[1] = { + { + { ELEMTYPE_UNK0, { 0x00000008, 0x00, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 0 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808AFB70 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ALL, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 1, D_808AFB4C, // sJntSphElementsInit, +}; + + +extern ColliderCylinderInit D_808AFB20; +extern ColliderJntSphElementInit D_808AFB4C[1]; +extern ColliderJntSphInit D_808AFB70; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bombf_0x808AE8C0/func_808AE8C0.asm") diff --git a/src/overlays/actors/ovl_En_Bomjima/z_en_bomjima.c b/src/overlays/actors/ovl_En_Bomjima/z_en_bomjima.c index 8fff6bf05..5c09e043f 100644 --- a/src/overlays/actors/ovl_En_Bomjima/z_en_bomjima.c +++ b/src/overlays/actors/ovl_En_Bomjima/z_en_bomjima.c @@ -9,7 +9,7 @@ void EnBomjima_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBomjima_Update(Actor* thisx, GlobalContext* globalCtx); void EnBomjima_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bomjima_InitVars = { ACTOR_EN_BOMJIMA, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Bomjima_InitVars = { (ActorFunc)EnBomjima_Update, (ActorFunc)EnBomjima_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C00A18 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C00A18; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bomjima_0x80BFE170/EnBomjima_Init.asm") diff --git a/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c b/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c index 67b82d391..4bfbd98fd 100644 --- a/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c +++ b/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c @@ -9,7 +9,7 @@ void EnBomjimb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBomjimb_Update(Actor* thisx, GlobalContext* globalCtx); void EnBomjimb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bomjimb_InitVars = { ACTOR_EN_BOMJIMB, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Bomjimb_InitVars = { (ActorFunc)EnBomjimb_Update, (ActorFunc)EnBomjimb_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C03194 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C03194; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bomjimb_0x80C00EA0/EnBomjimb_Init.asm") diff --git a/src/overlays/actors/ovl_En_Boom/z_en_boom.c b/src/overlays/actors/ovl_En_Boom/z_en_boom.c index 6ad91eb35..648d26998 100644 --- a/src/overlays/actors/ovl_En_Boom/z_en_boom.c +++ b/src/overlays/actors/ovl_En_Boom/z_en_boom.c @@ -9,7 +9,7 @@ void EnBoom_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBoom_Update(Actor* thisx, GlobalContext* globalCtx); void EnBoom_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Boom_InitVars = { ACTOR_EN_BOOM, ACTORCAT_ITEMACTION, @@ -21,7 +21,26 @@ const ActorInit En_Boom_InitVars = { (ActorFunc)EnBoom_Update, (ActorFunc)EnBoom_Draw, }; -*/ + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_808A3010 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_TYPE_PLAYER, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK2, { 0x00000010, 0x00, 0x02 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_NEAREST | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808A3060[] = { + ICHAIN_S8(targetMode, 5, ICHAIN_CONTINUE), + ICHAIN_VEC3S(shape.rot, 0, ICHAIN_STOP), +}; + + +extern ColliderQuadInit D_808A3010; +extern InitChainEntry D_808A3060[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Boom_0x808A24D0/func_808A24D0.asm") diff --git a/src/overlays/actors/ovl_En_Box/z_en_box.c b/src/overlays/actors/ovl_En_Box/z_en_box.c index b2fad3f60..b14ee6362 100644 --- a/src/overlays/actors/ovl_En_Box/z_en_box.c +++ b/src/overlays/actors/ovl_En_Box/z_en_box.c @@ -9,7 +9,7 @@ void EnBox_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBox_Update(Actor* thisx, GlobalContext* globalCtx); void EnBox_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Box_InitVars = { ACTOR_EN_BOX, ACTORCAT_CHEST, @@ -21,7 +21,16 @@ const ActorInit En_Box_InitVars = { (ActorFunc)EnBox_Update, (ActorFunc)EnBox_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80869B50[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80869B50[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Box_0x80867BD0/func_80867BD0.asm") diff --git a/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c b/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c index 2ec52ae33..e2a0462b4 100644 --- a/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c +++ b/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c @@ -9,7 +9,83 @@ void EnBsb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBsb_Update(Actor* thisx, GlobalContext* globalCtx); void EnBsb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderJntSphElementInit sJntSphElementsInit[7] = { +static ColliderJntSphElementInit D_80C0F8D4[7] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 10, { { 1000, 400, 0 }, 40 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 0, 700, 200 }, 35 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, { { 100, 600, 0 }, 35 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 3, { { 400, 200, 0 }, 40 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 13, { { 700, -100, 0 }, 35 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 16, { { 200, 300, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 19, { { 200, 300, 0 }, 30 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80C0F9D0 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 7, D_80C0F8D4, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80C0F9E0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xD), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xE), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0xD), + /* Sword */ DMG_ENTRY(1, 0xD), + /* Goron pound */ DMG_ENTRY(1, 0xD), + /* Fire arrow */ DMG_ENTRY(0, 0x2), + /* Ice arrow */ DMG_ENTRY(0, 0x3), + /* Light arrow */ DMG_ENTRY(0, 0x4), + /* Goron spikes */ DMG_ENTRY(0, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xC), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xD), + /* Spin attack */ DMG_ENTRY(1, 0xD), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xD), +}; + + const ActorInit En_Bsb_InitVars = { ACTOR_EN_BSB, ACTORCAT_PROP, @@ -21,7 +97,12 @@ const ActorInit En_Bsb_InitVars = { (ActorFunc)EnBsb_Update, (ActorFunc)EnBsb_Draw, }; -*/ + + +extern ColliderJntSphElementInit D_80C0F8D4[7]; +extern ColliderJntSphInit D_80C0F9D0; +extern DamageTable D_80C0F9E0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bsb_0x80C0B290/func_80C0B290.asm") diff --git a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c index eda993467..a13d7a01e 100644 --- a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c +++ b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c @@ -9,7 +9,7 @@ void EnBubble_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBubble_Update(Actor* thisx, GlobalContext* globalCtx); void EnBubble_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Bubble_InitVars = { ACTOR_EN_BUBBLE, ACTORCAT_ENEMY, @@ -21,7 +21,35 @@ const ActorInit En_Bubble_InitVars = { (ActorFunc)EnBubble_Update, (ActorFunc)EnBubble_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_808A0700[2] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x04 }, { 0xF7CFD757, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 16 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00002820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_AT_INFO | BUMP_NO_DAMAGE | BUMP_NO_SWORD_SFX | BUMP_NO_HITMARK, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 16 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808A0748 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_808A0700, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_808A0758 = { 1, 2, 25, 25, MASS_IMMOVABLE }; + + +extern ColliderJntSphElementInit D_808A0700[2]; +extern ColliderJntSphInit D_808A0748; +extern CollisionCheckInfoInit2 D_808A0758; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Bubble_0x8089F4E0/func_8089F4E0.asm") diff --git a/src/overlays/actors/ovl_En_Butte/z_en_butte.c b/src/overlays/actors/ovl_En_Butte/z_en_butte.c index fd358524f..5954377fa 100644 --- a/src/overlays/actors/ovl_En_Butte/z_en_butte.c +++ b/src/overlays/actors/ovl_En_Butte/z_en_butte.c @@ -9,7 +9,22 @@ void EnButte_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnButte_Update(Actor* thisx, GlobalContext* globalCtx); void EnButte_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_8091D2D0[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 5 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8091D2F4 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_8091D2D0, // sJntSphElementsInit, +}; + + const ActorInit En_Butte_InitVars = { ACTOR_EN_BUTTE, ACTORCAT_ITEMACTION, @@ -21,7 +36,21 @@ const ActorInit En_Butte_InitVars = { (ActorFunc)EnButte_Update, (ActorFunc)EnButte_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8091D3B0[] = { + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 700, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 20, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 60, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8091D2D0[1]; +extern ColliderJntSphInit D_8091D2F4; +extern InitChainEntry D_8091D3B0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Butte_0x8091C0A0/func_8091C0A0.asm") diff --git a/src/overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.c b/src/overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.c index 43eedf37c..28f10a2aa 100644 --- a/src/overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.c +++ b/src/overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.c @@ -1,6 +1,6 @@ /* * File z_en_clear_tag.c - * Overlay: ovl_en_clear_tag + * Overlay: ovl_En_Clear_Tag * Description: Various effects: explosions and pops, splashes, light rays */ diff --git a/src/overlays/actors/ovl_En_Cne_01/z_en_cne_01.c b/src/overlays/actors/ovl_En_Cne_01/z_en_cne_01.c index 568ec0c86..eef5a55b3 100644 --- a/src/overlays/actors/ovl_En_Cne_01/z_en_cne_01.c +++ b/src/overlays/actors/ovl_En_Cne_01/z_en_cne_01.c @@ -9,7 +9,7 @@ void EnCne01_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnCne01_Update(Actor* thisx, GlobalContext* globalCtx); void EnCne01_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Cne_01_InitVars = { ACTOR_EN_CNE_01, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Cne_01_InitVars = { (ActorFunc)EnCne01_Update, (ActorFunc)EnCne01_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809CBF00 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_809CBF2C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_809CBF38 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_809CBF00; +extern CollisionCheckInfoInit2 D_809CBF2C; +extern DamageTable D_809CBF38; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Cne_01_0x809CB290/func_809CB290.asm") diff --git a/src/overlays/actors/ovl_En_Col_Man/z_en_col_man.c b/src/overlays/actors/ovl_En_Col_Man/z_en_col_man.c index 772c746c2..24b8466f6 100644 --- a/src/overlays/actors/ovl_En_Col_Man/z_en_col_man.c +++ b/src/overlays/actors/ovl_En_Col_Man/z_en_col_man.c @@ -8,7 +8,15 @@ void EnColMan_Init(Actor* thisx, GlobalContext* globalCtx); void EnColMan_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnColMan_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AFE730 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 11, 1, { 0, 0, 0 } }, +}; + + const ActorInit En_Col_Man_InitVars = { ACTOR_EN_COL_MAN, ACTORCAT_MISC, @@ -20,7 +28,10 @@ const ActorInit En_Col_Man_InitVars = { (ActorFunc)EnColMan_Update, (ActorFunc)NULL, }; -*/ + + +extern ColliderCylinderInit D_80AFE730; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Col_Man_0x80AFDC40/EnColMan_Init.asm") diff --git a/src/overlays/actors/ovl_En_Cow/z_en_cow.c b/src/overlays/actors/ovl_En_Cow/z_en_cow.c index 2b3979f10..ee1f7b333 100644 --- a/src/overlays/actors/ovl_En_Cow/z_en_cow.c +++ b/src/overlays/actors/ovl_En_Cow/z_en_cow.c @@ -9,7 +9,7 @@ void EnCow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnCow_Update(Actor* thisx, GlobalContext* globalCtx); void EnCow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Cow_InitVars = { ACTOR_EN_COW, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Cow_InitVars = { (ActorFunc)EnCow_Update, (ActorFunc)EnCow_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8099D610 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_8099D610; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Cow_0x8099C290/func_8099C290.asm") diff --git a/src/overlays/actors/ovl_En_Crow/z_en_crow.c b/src/overlays/actors/ovl_En_Crow/z_en_crow.c index 183c18cce..20a6cfbd6 100644 --- a/src/overlays/actors/ovl_En_Crow/z_en_crow.c +++ b/src/overlays/actors/ovl_En_Crow/z_en_crow.c @@ -9,7 +9,7 @@ void EnCrow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnCrow_Update(Actor* thisx, GlobalContext* globalCtx); void EnCrow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Crow_InitVars = { ACTOR_EN_CROW, ACTORCAT_ENEMY, @@ -21,7 +21,79 @@ const ActorInit En_Crow_InitVars = { (ActorFunc)EnCrow_Update, (ActorFunc)EnCrow_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_8099C070[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8099C094 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_8099C070, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8099C0A4 = { 1, 15, 30, 30 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_8099C0AC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8099C0D0[] = { + ICHAIN_F32(uncullZoneForward, 3000, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 88, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -500, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8099C070[1]; +extern ColliderJntSphInit D_8099C094; +extern CollisionCheckInfoInit D_8099C0A4; +extern DamageTable D_8099C0AC; +extern InitChainEntry D_8099C0D0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Crow_0x8099AB30/EnCrow_Init.asm") diff --git a/src/overlays/actors/ovl_En_Dai/z_en_dai.c b/src/overlays/actors/ovl_En_Dai/z_en_dai.c index 582af2bc6..846263a4b 100644 --- a/src/overlays/actors/ovl_En_Dai/z_en_dai.c +++ b/src/overlays/actors/ovl_En_Dai/z_en_dai.c @@ -9,7 +9,7 @@ void EnDai_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDai_Update(Actor* thisx, GlobalContext* globalCtx); void EnDai_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dai_InitVars = { ACTOR_EN_DAI, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Dai_InitVars = { (ActorFunc)EnDai_Update, (ActorFunc)EnDai_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dai_0x80B3DFF0/func_80B3DFF0.asm") diff --git a/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c b/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c index d466f03a9..daa505938 100644 --- a/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c +++ b/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c @@ -9,7 +9,7 @@ void EnDaiku_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDaiku_Update(Actor* thisx, GlobalContext* globalCtx); void EnDaiku_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Daiku_InitVars = { ACTOR_EN_DAIKU, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Daiku_InitVars = { (ActorFunc)EnDaiku_Update, (ActorFunc)EnDaiku_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80944078 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80944078; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Daiku_0x809434B0/EnDaiku_Init.asm") diff --git a/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c b/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c index 87398ba70..2bd567696 100644 --- a/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c +++ b/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c @@ -9,7 +9,7 @@ void EnDaiku2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDaiku2_Update(Actor* thisx, GlobalContext* globalCtx); void EnDaiku2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Daiku2_InitVars = { ACTOR_EN_DAIKU2, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Daiku2_InitVars = { (ActorFunc)EnDaiku2_Update, (ActorFunc)EnDaiku2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE7900 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE7900; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Daiku2_0x80BE61D0/func_80BE61D0.asm") diff --git a/src/overlays/actors/ovl_En_Death/z_en_death.c b/src/overlays/actors/ovl_En_Death/z_en_death.c index e9d92e8e3..89388283c 100644 --- a/src/overlays/actors/ovl_En_Death/z_en_death.c +++ b/src/overlays/actors/ovl_En_Death/z_en_death.c @@ -9,7 +9,7 @@ void EnDeath_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDeath_Update(Actor* thisx, GlobalContext* globalCtx); void EnDeath_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Death_InitVars = { ACTOR_EN_DEATH, ACTORCAT_ENEMY, @@ -21,7 +21,110 @@ const ActorInit En_Death_InitVars = { (ActorFunc)EnDeath_Update, (ActorFunc)EnDeath_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_808C98E0 = { + { COLTYPE_HIT3, AT_NONE, AC_NONE | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 22 }, 100 }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808C990C = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 35, 90, 20, { 0, 0, 0 } }, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_808C9938[2] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x20 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x20 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_808C99B0 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_TRIS, }, + 2, D_808C9938, // sTrisElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_808C99C0 = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_TYPE_2, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x20 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808C9A10 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_808C9A30 = { 20, 28, 90, 20, 100 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808C9A60[] = { + ICHAIN_VEC3F(scale, 0, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 26, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 6000, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 5, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_808C98E0; +extern ColliderCylinderInit D_808C990C; +extern ColliderTrisElementInit D_808C9938[2]; +extern ColliderTrisInit D_808C99B0; +extern ColliderQuadInit D_808C99C0; +extern DamageTable D_808C9A10; +extern CollisionCheckInfoInit2 D_808C9A30; +extern InitChainEntry D_808C9A60[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Death_0x808C4F80/EnDeath_Init.asm") diff --git a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c index 06d07c874..2d9d4f3fc 100644 --- a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c +++ b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c @@ -9,7 +9,7 @@ void EnDekubaba_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDekubaba_Update(Actor* thisx, GlobalContext* globalCtx); void EnDekubaba_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dekubaba_InitVars = { ACTOR_EN_DEKUBABA, ACTORCAT_ENEMY, @@ -21,7 +21,100 @@ const ActorInit En_Dekubaba_InitVars = { (ActorFunc)EnDekubaba_Update, (ActorFunc)EnDekubaba_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[7] = { +static ColliderJntSphElementInit D_808B4D60[7] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 100, 1000 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 51, { { 0, 0, 1500 }, 8 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 52, { { 0, 0, 500 }, 8 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 53, { { 0, 0, 1500 }, 8 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 54, { { 0, 0, 500 }, 8 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 55, { { 0, 0, 1500 }, 8 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 56, { { 0, 0, 500 }, 8 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808B4E5C = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 7, D_808B4D60, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808B4E6C = { 2, 25, 25, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808B4E74 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(3, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(3, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xD), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(4, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(3, 0x3), + /* Light arrow */ DMG_ENTRY(3, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(3, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808B4E94[] = { + ICHAIN_F32(targetArrowOffset, 1500, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_808B4D60[7]; +extern ColliderJntSphInit D_808B4E5C; +extern CollisionCheckInfoInit D_808B4E6C; +extern DamageTable D_808B4E74; +extern InitChainEntry D_808B4E94[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dekubaba_0x808B1330/EnDekubaba_Init.asm") diff --git a/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c b/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c index 9ff852aa5..9f74db249 100644 --- a/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c +++ b/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c @@ -9,7 +9,7 @@ void EnDekunuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDekunuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnDekunuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dekunuts_InitVars = { ACTOR_EN_DEKUNUTS, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Dekunuts_InitVars = { (ActorFunc)EnDekunuts_Update, (ActorFunc)EnDekunuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808BEF30 = { + { COLTYPE_HIT6, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 32, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808BEF5C = { 1, 18, 32, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808BEF64 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808BEF84[] = { + ICHAIN_S8(hintId, 77, ICHAIN_CONTINUE), + ICHAIN_F32(gravity, -1, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2600, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808BEF30; +extern CollisionCheckInfoInit D_808BEF5C; +extern DamageTable D_808BEF64; +extern InitChainEntry D_808BEF84[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dekunuts_0x808BD1E0/EnDekunuts_Init.asm") diff --git a/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c b/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c index a5a703891..677475cb6 100644 --- a/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c +++ b/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c @@ -9,7 +9,7 @@ void EnDemoheishi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDemoheishi_Update(Actor* thisx, GlobalContext* globalCtx); void EnDemoheishi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Demo_heishi_InitVars = { ACTOR_EN_DEMO_HEISHI, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Demo_heishi_InitVars = { (ActorFunc)EnDemoheishi_Update, (ActorFunc)EnDemoheishi_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE9A50 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 40, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE9A50; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Demo_heishi_0x80BE9510/EnDemoheishi_Init.asm") diff --git a/src/overlays/actors/ovl_En_Dg/z_en_dg.c b/src/overlays/actors/ovl_En_Dg/z_en_dg.c index 6dbce2f88..e7856fa02 100644 --- a/src/overlays/actors/ovl_En_Dg/z_en_dg.c +++ b/src/overlays/actors/ovl_En_Dg/z_en_dg.c @@ -9,7 +9,7 @@ void EnDg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDg_Update(Actor* thisx, GlobalContext* globalCtx); void EnDg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dg_InitVars = { ACTOR_EN_DG, ACTORCAT_ENEMY, @@ -21,7 +21,68 @@ const ActorInit En_Dg_InitVars = { (ActorFunc)EnDg_Update, (ActorFunc)EnDg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8098C304 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x04, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 13, 19, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8098C330 = { 0, 0, 0, 0, 1 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_8098C33C = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8098C45C[] = { + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8098C304; +extern CollisionCheckInfoInit2 D_8098C330; +extern DamageTable D_8098C33C; +extern InitChainEntry D_8098C45C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dg_0x80989140/func_80989140.asm") diff --git a/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c b/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c index 96a32b7a0..2cc1e1c5d 100644 --- a/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c +++ b/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c @@ -9,7 +9,7 @@ void EnDinofos_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDinofos_Update(Actor* thisx, GlobalContext* globalCtx); void EnDinofos_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dinofos_InitVars = { ACTOR_EN_DINOFOS, ACTORCAT_ENEMY, @@ -21,7 +21,120 @@ const ActorInit En_Dinofos_InitVars = { (ActorFunc)EnDinofos_Update, (ActorFunc)EnDinofos_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[9] = { +static ColliderJntSphElementInit D_8089E170[9] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 200, 300, 0 }, 19 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 8, { { 200, 200, 0 }, 17 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 16, { { 600, 200, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 15, { { 700, 100, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 2, { { 1300, 100, 0 }, 12 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 5, { { 1300, 100, 0 }, 12 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x09, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 21, { { 0, -10, 35 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x09, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 21, { { 0, -10, 70 }, 28 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x09, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 21, { { 0, -5, 110 }, 30 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8089E2B4 = { + { COLTYPE_HIT0, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 9, D_8089E170, // sJntSphElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_8089E2C4 = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_8089E314 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8089E334 = { 4, 40, 100, 80 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8089E354[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 16, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 15, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8089E170[9]; +extern ColliderJntSphInit D_8089E2B4; +extern ColliderQuadInit D_8089E2C4; +extern DamageTable D_8089E314; +extern CollisionCheckInfoInit D_8089E334; +extern InitChainEntry D_8089E354[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dinofos_0x8089A6E0/EnDinofos_Init.asm") diff --git a/src/overlays/actors/ovl_En_Dnb/z_en_dnb.c b/src/overlays/actors/ovl_En_Dnb/z_en_dnb.c index 383f49f08..31b71d6e1 100644 --- a/src/overlays/actors/ovl_En_Dnb/z_en_dnb.c +++ b/src/overlays/actors/ovl_En_Dnb/z_en_dnb.c @@ -9,7 +9,7 @@ void EnDnb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDnb_Update(Actor* thisx, GlobalContext* globalCtx); void EnDnb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dnb_InitVars = { ACTOR_EN_DNB, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit En_Dnb_InitVars = { (ActorFunc)EnDnb_Update, (ActorFunc)EnDnb_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dnb_0x80A4FDD0/func_80A4FDD0.asm") diff --git a/src/overlays/actors/ovl_En_Dnh/z_en_dnh.c b/src/overlays/actors/ovl_En_Dnh/z_en_dnh.c index dbef80531..8f7d11db6 100644 --- a/src/overlays/actors/ovl_En_Dnh/z_en_dnh.c +++ b/src/overlays/actors/ovl_En_Dnh/z_en_dnh.c @@ -9,7 +9,7 @@ void EnDnh_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDnh_Update(Actor* thisx, GlobalContext* globalCtx); void EnDnh_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dnh_InitVars = { ACTOR_EN_DNH, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Dnh_InitVars = { (ActorFunc)EnDnh_Update, (ActorFunc)EnDnh_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dnh_0x80A50D40/func_80A50D40.asm") diff --git a/src/overlays/actors/ovl_En_Dnk/z_en_dnk.c b/src/overlays/actors/ovl_En_Dnk/z_en_dnk.c index 8781783e6..0f7c3b37e 100644 --- a/src/overlays/actors/ovl_En_Dnk/z_en_dnk.c +++ b/src/overlays/actors/ovl_En_Dnk/z_en_dnk.c @@ -8,7 +8,7 @@ void EnDnk_Init(Actor* thisx, GlobalContext* globalCtx); void EnDnk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDnk_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dnk_InitVars = { ACTOR_EN_DNK, ACTORCAT_NPC, @@ -20,7 +20,61 @@ const ActorInit En_Dnk_InitVars = { (ActorFunc)EnDnk_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A521C4 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 46, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A521F0 = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A521FC = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderCylinderInit D_80A521C4; +extern CollisionCheckInfoInit2 D_80A521F0; +extern DamageTable D_80A521FC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dnk_0x80A514F0/func_80A514F0.asm") diff --git a/src/overlays/actors/ovl_En_Dno/z_en_dno.c b/src/overlays/actors/ovl_En_Dno/z_en_dno.c index 233370b1b..fee96a92d 100644 --- a/src/overlays/actors/ovl_En_Dno/z_en_dno.c +++ b/src/overlays/actors/ovl_En_Dno/z_en_dno.c @@ -9,7 +9,7 @@ void EnDno_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDno_Update(Actor* thisx, GlobalContext* globalCtx); void EnDno_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dno_InitVars = { ACTOR_EN_DNO, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Dno_InitVars = { (ActorFunc)EnDno_Update, (ActorFunc)EnDno_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A73B00 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 17, 58, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A73B38[] = { + ICHAIN_F32(uncullZoneDownward, 80, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A73B00; +extern InitChainEntry D_80A73B38[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dno_0x80A711D0/func_80A711D0.asm") diff --git a/src/overlays/actors/ovl_En_Dnp/z_en_dnp.c b/src/overlays/actors/ovl_En_Dnp/z_en_dnp.c index cd6f90e3e..9fe4fbd9d 100644 --- a/src/overlays/actors/ovl_En_Dnp/z_en_dnp.c +++ b/src/overlays/actors/ovl_En_Dnp/z_en_dnp.c @@ -9,7 +9,7 @@ void EnDnp_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDnp_Update(Actor* thisx, GlobalContext* globalCtx); void EnDnp_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dnp_InitVars = { ACTOR_EN_DNP, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Dnp_InitVars = { (ActorFunc)EnDnp_Update, (ActorFunc)EnDnp_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B3DC80 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 14, 38, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B3DCAC = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80B3DC80; +extern CollisionCheckInfoInit2 D_80B3DCAC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dnp_0x80B3CA20/func_80B3CA20.asm") diff --git a/src/overlays/actors/ovl_En_Dnq/z_en_dnq.c b/src/overlays/actors/ovl_En_Dnq/z_en_dnq.c index 0ee6d5bd3..8b1862ecd 100644 --- a/src/overlays/actors/ovl_En_Dnq/z_en_dnq.c +++ b/src/overlays/actors/ovl_En_Dnq/z_en_dnq.c @@ -9,7 +9,7 @@ void EnDnq_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDnq_Update(Actor* thisx, GlobalContext* globalCtx); void EnDnq_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dnq_InitVars = { ACTOR_EN_DNQ, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Dnq_InitVars = { (ActorFunc)EnDnq_Update, (ActorFunc)EnDnq_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A53464 = { + { COLTYPE_HIT1, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 34, 80, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A53490 = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80A53464; +extern CollisionCheckInfoInit2 D_80A53490; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dnq_0x80A52530/func_80A52530.asm") diff --git a/src/overlays/actors/ovl_En_Dns/z_en_dns.c b/src/overlays/actors/ovl_En_Dns/z_en_dns.c index a7f8256ca..879198922 100644 --- a/src/overlays/actors/ovl_En_Dns/z_en_dns.c +++ b/src/overlays/actors/ovl_En_Dns/z_en_dns.c @@ -9,7 +9,7 @@ void EnDns_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDns_Update(Actor* thisx, GlobalContext* globalCtx); void EnDns_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dns_InitVars = { ACTOR_EN_DNS, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Dns_InitVars = { (ActorFunc)EnDns_Update, (ActorFunc)EnDns_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8092DD28 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 46, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8092DD54 = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_8092DD28; +extern CollisionCheckInfoInit2 D_8092DD54; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dns_0x8092C5C0/func_8092C5C0.asm") diff --git a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c index 539e69d90..101327e99 100644 --- a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c +++ b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c @@ -9,7 +9,7 @@ void EnDodongo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDodongo_Update(Actor* thisx, GlobalContext* globalCtx); void EnDodongo_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dodongo_InitVars = { ACTOR_EN_DODONGO, ACTORCAT_ENEMY, @@ -21,7 +21,164 @@ const ActorInit En_Dodongo_InitVars = { (ActorFunc)EnDodongo_Update, (ActorFunc)EnDodongo_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[10] = { +static ColliderJntSphElementInit D_808790D0[10] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 7, { { 500, 0, 0 }, 27 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 21, { { -200, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 28, { { -200, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 22, { { 400, -400, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 29, { { 400, -400, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 16, { { 1000, 0, 0 }, 28 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 14, { { -300, 300, 0 }, 17 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 14, { { 800, 100, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 13, { { 600, 0, 0 }, 12 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 13, { { 1500, 0, 0 }, 12 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80879238 = { + { COLTYPE_HIT0, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 10, D_808790D0, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[3] = { +static ColliderJntSphElementInit D_808790D0[3] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 7, { { 500, 0, 0 }, 27 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 21, { { -200, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800CB019, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 28, { { -200, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80879248 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 3, D_808790D0, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[3] = { +static ColliderJntSphElementInit D_80879258[3] = { + { + { ELEMTYPE_UNK0, { 0x20000000, 0x01, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 2, { { 0, -10, 10 }, 25 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x01, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 2, { { 0, -5, 50 }, 37 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x01, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 2, { { 0, 0, 90 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808792C4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 3, D_80879258, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808792D4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x1), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(3, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xE), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808792F4 = { 3, 100, 100, 80 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808792FC[] = { + ICHAIN_S8(hintId, 13, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1000, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 1400, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_808790D0[10]; +extern ColliderJntSphInit D_80879238; +extern ColliderJntSphElementInit D_808790D0[3]; +extern ColliderJntSphInit D_80879248; +extern ColliderJntSphElementInit D_80879258[3]; +extern ColliderJntSphInit D_808792C4; +extern DamageTable D_808792D4; +extern CollisionCheckInfoInit D_808792F4; +extern InitChainEntry D_808792FC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dodongo_0x80876670/EnDodongo_Init.asm") diff --git a/src/overlays/actors/ovl_En_Door/z_en_door.c b/src/overlays/actors/ovl_En_Door/z_en_door.c index ec5f1fe4e..1bd641128 100644 --- a/src/overlays/actors/ovl_En_Door/z_en_door.c +++ b/src/overlays/actors/ovl_En_Door/z_en_door.c @@ -9,7 +9,7 @@ void EnDoor_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDoor_Update(Actor* thisx, GlobalContext* globalCtx); void EnDoor_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Door_InitVars = { ACTOR_EN_DOOR, ACTORCAT_DOOR, @@ -21,7 +21,19 @@ const ActorInit En_Door_InitVars = { (ActorFunc)EnDoor_Update, (ActorFunc)EnDoor_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80867954[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_U16(shape.rot.x, 0, ICHAIN_CONTINUE), + ICHAIN_U16(shape.rot.z, 0, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80867954[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Door_0x80866800/EnDoor_Init.asm") diff --git a/src/overlays/actors/ovl_En_Door_Etc/z_en_door_etc.c b/src/overlays/actors/ovl_En_Door_Etc/z_en_door_etc.c index a6f0dda2e..e226ec77c 100644 --- a/src/overlays/actors/ovl_En_Door_Etc/z_en_door_etc.c +++ b/src/overlays/actors/ovl_En_Door_Etc/z_en_door_etc.c @@ -8,7 +8,7 @@ void EnDoorEtc_Init(Actor* thisx, GlobalContext* globalCtx); void EnDoorEtc_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDoorEtc_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Door_Etc_InitVars = { ACTOR_EN_DOOR_ETC, ACTORCAT_DOOR, @@ -20,7 +20,28 @@ const ActorInit En_Door_Etc_InitVars = { (ActorFunc)EnDoorEtc_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AC25A0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 100, 40, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AC2634[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_U16(shape.rot.x, 0, ICHAIN_CONTINUE), + ICHAIN_U16(shape.rot.z, 0, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AC25A0; +extern InitChainEntry D_80AC2634[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Door_Etc_0x80AC1ED0/EnDoorEtc_Init.asm") diff --git a/src/overlays/actors/ovl_En_Dragon/z_en_dragon.c b/src/overlays/actors/ovl_En_Dragon/z_en_dragon.c index 74b39979c..a9d27bce7 100644 --- a/src/overlays/actors/ovl_En_Dragon/z_en_dragon.c +++ b/src/overlays/actors/ovl_En_Dragon/z_en_dragon.c @@ -9,7 +9,7 @@ void EnDragon_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDragon_Update(Actor* thisx, GlobalContext* globalCtx); void EnDragon_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dragon_InitVars = { ACTOR_EN_DRAGON, ACTORCAT_ENEMY, @@ -21,7 +21,92 @@ const ActorInit En_Dragon_InitVars = { (ActorFunc)EnDragon_Update, (ActorFunc)EnDragon_Draw, }; -*/ + + +// static DamageTable sDamageTable = { +static DamageTable D_80B605F4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[8] = { +static ColliderJntSphElementInit D_80B60614[8] = { + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 13, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 12, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 12, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 10, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 10, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B60734 = { + { COLTYPE_HIT6, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 8, D_80B60614, // sJntSphElementsInit, +}; + + +extern DamageTable D_80B605F4; +extern ColliderJntSphElementInit D_80B60614[8]; +extern ColliderJntSphInit D_80B60734; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dragon_0x80B5E890/EnDragon_Init.asm") diff --git a/src/overlays/actors/ovl_En_Drs/z_en_drs.c b/src/overlays/actors/ovl_En_Drs/z_en_drs.c index 3fcd88dc6..296233301 100644 --- a/src/overlays/actors/ovl_En_Drs/z_en_drs.c +++ b/src/overlays/actors/ovl_En_Drs/z_en_drs.c @@ -8,7 +8,7 @@ void EnDrs_Init(Actor* thisx, GlobalContext* globalCtx); void EnDrs_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDrs_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Drs_InitVars = { ACTOR_EN_DRS, ACTORCAT_PROP, @@ -20,7 +20,23 @@ const ActorInit En_Drs_InitVars = { (ActorFunc)EnDrs_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C1E5E0 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 16, 62, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80C1E60C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80C1E5E0; +extern CollisionCheckInfoInit2 D_80C1E60C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Drs_0x80C1E290/func_80C1E290.asm") diff --git a/src/overlays/actors/ovl_En_Ds2n/z_en_ds2n.c b/src/overlays/actors/ovl_En_Ds2n/z_en_ds2n.c index a1660a565..6a3ce7ccf 100644 --- a/src/overlays/actors/ovl_En_Ds2n/z_en_ds2n.c +++ b/src/overlays/actors/ovl_En_Ds2n/z_en_ds2n.c @@ -9,7 +9,7 @@ void EnDs2n_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDs2n_Update(Actor* thisx, GlobalContext* globalCtx); void EnDs2n_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ds2n_InitVars = { ACTOR_EN_DS2N, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Ds2n_InitVars = { (ActorFunc)EnDs2n_Update, (ActorFunc)EnDs2n_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ds2n_0x80AE1650/func_80AE1650.asm") diff --git a/src/overlays/actors/ovl_En_Dt/z_en_dt.c b/src/overlays/actors/ovl_En_Dt/z_en_dt.c index dd2feb08b..b53819b30 100644 --- a/src/overlays/actors/ovl_En_Dt/z_en_dt.c +++ b/src/overlays/actors/ovl_En_Dt/z_en_dt.c @@ -9,7 +9,7 @@ void EnDt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnDt_Update(Actor* thisx, GlobalContext* globalCtx); void EnDt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Dt_InitVars = { ACTOR_EN_DT, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Dt_InitVars = { (ActorFunc)EnDt_Update, (ActorFunc)EnDt_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BEB29C = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 25, 70, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BEB29C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Dt_0x80BE9B20/EnDt_Init.asm") diff --git a/src/overlays/actors/ovl_En_Egblock/z_en_egblock.c b/src/overlays/actors/ovl_En_Egblock/z_en_egblock.c index 7a8b8d3ac..56c5db875 100644 --- a/src/overlays/actors/ovl_En_Egblock/z_en_egblock.c +++ b/src/overlays/actors/ovl_En_Egblock/z_en_egblock.c @@ -9,7 +9,7 @@ void EnEgblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnEgblock_Update(Actor* thisx, GlobalContext* globalCtx); void EnEgblock_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Egblock_InitVars = { ACTOR_EN_EGBLOCK, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit En_Egblock_InitVars = { (ActorFunc)EnEgblock_Update, (ActorFunc)EnEgblock_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Egblock_0x80ABA7A0/EnEgblock_Init.asm") diff --git a/src/overlays/actors/ovl_En_Egol/z_en_egol.c b/src/overlays/actors/ovl_En_Egol/z_en_egol.c index a3c10ade2..f9e0b8b4f 100644 --- a/src/overlays/actors/ovl_En_Egol/z_en_egol.c +++ b/src/overlays/actors/ovl_En_Egol/z_en_egol.c @@ -9,7 +9,102 @@ void EnEgol_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnEgol_Update(Actor* thisx, GlobalContext* globalCtx); void EnEgol_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderJntSphElementInit sJntSphElementsInit[6] = { +static ColliderJntSphElementInit D_80A80C64[6] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 3, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 4, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 7, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 23, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A80D3C = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 6, D_80A80C64, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A80C40[1] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 14, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A80D4C = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A80C40, // sJntSphElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80A80D5C = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x07, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A80DAC = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xE), + /* Zora boomerang */ DMG_ENTRY(1, 0xE), + /* Normal arrow */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(0, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0xE), + /* Ice arrow */ DMG_ENTRY(2, 0xE), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xE), + /* Deku spin */ DMG_ENTRY(1, 0xE), + /* Deku bubble */ DMG_ENTRY(1, 0xE), + /* Deku launch */ DMG_ENTRY(2, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xF), + /* Thrown object */ DMG_ENTRY(1, 0xE), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(0, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit En_Egol_InitVars = { ACTOR_EN_EGOL, ACTORCAT_ENEMY, @@ -21,7 +116,15 @@ const ActorInit En_Egol_InitVars = { (ActorFunc)EnEgol_Update, (ActorFunc)EnEgol_Draw, }; -*/ + + +extern ColliderJntSphElementInit D_80A80C64[6]; +extern ColliderJntSphInit D_80A80D3C; +extern ColliderJntSphElementInit D_80A80C40[1]; +extern ColliderJntSphInit D_80A80D4C; +extern ColliderQuadInit D_80A80D5C; +extern DamageTable D_80A80DAC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Egol_0x80A7C990/func_80A7C990.asm") diff --git a/src/overlays/actors/ovl_En_Elf/z_en_elf.c b/src/overlays/actors/ovl_En_Elf/z_en_elf.c index 265e3acb5..8ea70dc7c 100644 --- a/src/overlays/actors/ovl_En_Elf/z_en_elf.c +++ b/src/overlays/actors/ovl_En_Elf/z_en_elf.c @@ -9,7 +9,7 @@ void EnElf_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnElf_Update(Actor* thisx, GlobalContext* globalCtx); void EnElf_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Elf_InitVars = { ACTOR_EN_ELF, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Elf_InitVars = { (ActorFunc)EnElf_Update, (ActorFunc)EnElf_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Elf_0x8088C510/func_8088C510.asm") diff --git a/src/overlays/actors/ovl_En_Elfbub/z_en_elfbub.c b/src/overlays/actors/ovl_En_Elfbub/z_en_elfbub.c index 90d4edb80..6473e2288 100644 --- a/src/overlays/actors/ovl_En_Elfbub/z_en_elfbub.c +++ b/src/overlays/actors/ovl_En_Elfbub/z_en_elfbub.c @@ -9,7 +9,7 @@ void EnElfbub_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnElfbub_Update(Actor* thisx, GlobalContext* globalCtx); void EnElfbub_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Elfbub_InitVars = { ACTOR_EN_ELFBUB, ACTORCAT_MISC, @@ -21,7 +21,18 @@ const ActorInit En_Elfbub_InitVars = { (ActorFunc)EnElfbub_Update, (ActorFunc)EnElfbub_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ACE270 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 16, 32, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80ACE270; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Elfbub_0x80ACDCD0/EnElfbub_Init.asm") diff --git a/src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c b/src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c index 084d5d3ab..f1f8ca9d7 100644 --- a/src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c +++ b/src/overlays/actors/ovl_En_Elfgrp/z_en_elfgrp.c @@ -8,7 +8,7 @@ void EnElfgrp_Init(Actor* thisx, GlobalContext* globalCtx); void EnElfgrp_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnElfgrp_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Elfgrp_InitVars = { ACTOR_EN_ELFGRP, ACTORCAT_PROP, @@ -20,7 +20,8 @@ const ActorInit En_Elfgrp_InitVars = { (ActorFunc)EnElfgrp_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Elfgrp_0x80A396B0/func_80A396B0.asm") diff --git a/src/overlays/actors/ovl_En_Elforg/z_en_elforg.c b/src/overlays/actors/ovl_En_Elforg/z_en_elforg.c index b488c38e0..25c4fcc02 100644 --- a/src/overlays/actors/ovl_En_Elforg/z_en_elforg.c +++ b/src/overlays/actors/ovl_En_Elforg/z_en_elforg.c @@ -9,7 +9,7 @@ void EnElforg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnElforg_Update(Actor* thisx, GlobalContext* globalCtx); void EnElforg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Elforg_InitVars = { ACTOR_EN_ELFORG, ACTORCAT_ITEMACTION, @@ -21,7 +21,18 @@ const ActorInit En_Elforg_InitVars = { (ActorFunc)EnElforg_Update, (ActorFunc)EnElforg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ACDA30 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 16, 32, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80ACDA30; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Elforg_0x80ACC470/func_80ACC470.asm") diff --git a/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c b/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c index e8e7303be..faf1660a0 100644 --- a/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c +++ b/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c @@ -7,7 +7,7 @@ void EnEncount1_Init(Actor* thisx, GlobalContext* globalCtx); void EnEncount1_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Encount1_InitVars = { ACTOR_EN_ENCOUNT1, ACTORCAT_PROP, @@ -19,7 +19,8 @@ const ActorInit En_Encount1_InitVars = { (ActorFunc)EnEncount1_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Encount1_0x808E0830/EnEncount1_Init.asm") diff --git a/src/overlays/actors/ovl_En_Encount3/z_en_encount3.c b/src/overlays/actors/ovl_En_Encount3/z_en_encount3.c index 43617cef1..c5636dfc6 100644 --- a/src/overlays/actors/ovl_En_Encount3/z_en_encount3.c +++ b/src/overlays/actors/ovl_En_Encount3/z_en_encount3.c @@ -9,7 +9,7 @@ void EnEncount3_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnEncount3_Update(Actor* thisx, GlobalContext* globalCtx); void EnEncount3_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Encount3_InitVars = { ACTOR_EN_ENCOUNT3, ACTORCAT_ENEMY, @@ -21,7 +21,8 @@ const ActorInit En_Encount3_InitVars = { (ActorFunc)EnEncount3_Update, (ActorFunc)EnEncount3_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Encount3_0x809ACF40/EnEncount3_Init.asm") diff --git a/src/overlays/actors/ovl_En_Encount4/z_en_encount4.c b/src/overlays/actors/ovl_En_Encount4/z_en_encount4.c index b618e0cdb..1e5c078dd 100644 --- a/src/overlays/actors/ovl_En_Encount4/z_en_encount4.c +++ b/src/overlays/actors/ovl_En_Encount4/z_en_encount4.c @@ -8,7 +8,7 @@ void EnEncount4_Init(Actor* thisx, GlobalContext* globalCtx); void EnEncount4_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnEncount4_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Encount4_InitVars = { ACTOR_EN_ENCOUNT4, ACTORCAT_PROP, @@ -20,7 +20,8 @@ const ActorInit En_Encount4_InitVars = { (ActorFunc)EnEncount4_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Encount4_0x809C3F30/EnEncount4_Init.asm") diff --git a/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c b/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c index b5a0b88bd..51babbbc3 100644 --- a/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c +++ b/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c @@ -9,7 +9,7 @@ void EnEndingHero6_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnEndingHero6_Update(Actor* thisx, GlobalContext* globalCtx); void EnEndingHero6_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ending_Hero6_InitVars = { ACTOR_EN_ENDING_HERO6, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Ending_Hero6_InitVars = { (ActorFunc)EnEndingHero6_Update, (ActorFunc)EnEndingHero6_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ending_Hero6_0x80C23C90/EnEndingHero6_Init.asm") diff --git a/src/overlays/actors/ovl_En_Estone/z_en_estone.c b/src/overlays/actors/ovl_En_Estone/z_en_estone.c index cb283841f..3cf50264f 100644 --- a/src/overlays/actors/ovl_En_Estone/z_en_estone.c +++ b/src/overlays/actors/ovl_En_Estone/z_en_estone.c @@ -9,7 +9,7 @@ void EnEstone_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnEstone_Update(Actor* thisx, GlobalContext* globalCtx); void EnEstone_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Estone_InitVars = { ACTOR_EN_ESTONE, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Estone_InitVars = { (ActorFunc)EnEstone_Update, (ActorFunc)EnEstone_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A9AB70 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 30, 30, -10, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80A9AB70; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Estone_0x80A99EA0/EnEstone_Init.asm") diff --git a/src/overlays/actors/ovl_En_Fall/z_en_fall.c b/src/overlays/actors/ovl_En_Fall/z_en_fall.c index cf9d50109..31b5a2b44 100644 --- a/src/overlays/actors/ovl_En_Fall/z_en_fall.c +++ b/src/overlays/actors/ovl_En_Fall/z_en_fall.c @@ -8,7 +8,7 @@ void EnFall_Init(Actor* thisx, GlobalContext* globalCtx); void EnFall_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFall_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fall_InitVars = { ACTOR_EN_FALL, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_Fall_InitVars = { (ActorFunc)EnFall_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fall_0x80A6BF90/func_80A6BF90.asm") diff --git a/src/overlays/actors/ovl_En_Fall2/z_en_fall2.c b/src/overlays/actors/ovl_En_Fall2/z_en_fall2.c index ec835b0d7..6914a8ee3 100644 --- a/src/overlays/actors/ovl_En_Fall2/z_en_fall2.c +++ b/src/overlays/actors/ovl_En_Fall2/z_en_fall2.c @@ -9,7 +9,7 @@ void EnFall2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFall2_Update(Actor* thisx, GlobalContext* globalCtx); void EnFall2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fall2_InitVars = { ACTOR_EN_FALL2, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Fall2_InitVars = { (ActorFunc)EnFall2_Update, (ActorFunc)EnFall2_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fall2_0x80C1B640/EnFall2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Famos/z_en_famos.c b/src/overlays/actors/ovl_En_Famos/z_en_famos.c index eca155cbf..4215c741f 100644 --- a/src/overlays/actors/ovl_En_Famos/z_en_famos.c +++ b/src/overlays/actors/ovl_En_Famos/z_en_famos.c @@ -9,7 +9,7 @@ void EnFamos_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFamos_Update(Actor* thisx, GlobalContext* globalCtx); void EnFamos_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Famos_InitVars = { ACTOR_EN_FAMOS, ACTORCAT_ENEMY, @@ -21,7 +21,56 @@ const ActorInit En_Famos_InitVars = { (ActorFunc)EnFamos_Update, (ActorFunc)EnFamos_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808AE600 = { + { COLTYPE_METAL, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x20000000, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 80, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808AE62C = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 70, 10, 0, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_808AE658[2] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00002000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 2, { { 2500, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00002000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 2, { { -1500, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808AE6A0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_808AE658, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808AE6B8[] = { + ICHAIN_S8(hintId, 15, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 3500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808AE600; +extern ColliderCylinderInit D_808AE62C; +extern ColliderJntSphElementInit D_808AE658[2]; +extern ColliderJntSphInit D_808AE6A0; +extern InitChainEntry D_808AE6B8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Famos_0x808AC920/EnFamos_Init.asm") diff --git a/src/overlays/actors/ovl_En_Fg/z_en_fg.c b/src/overlays/actors/ovl_En_Fg/z_en_fg.c index 82f26e426..d6e5fdc0e 100644 --- a/src/overlays/actors/ovl_En_Fg/z_en_fg.c +++ b/src/overlays/actors/ovl_En_Fg/z_en_fg.c @@ -1,6 +1,6 @@ /* * File: z_en_fg.c - * Overlay: En_Fg + * Overlay: ovl_En_Fg * Description: Likely beta frogs, a version where they were all enemies */ diff --git a/src/overlays/actors/ovl_En_Fish/z_en_fish.c b/src/overlays/actors/ovl_En_Fish/z_en_fish.c index b71faacd7..d185f7944 100644 --- a/src/overlays/actors/ovl_En_Fish/z_en_fish.c +++ b/src/overlays/actors/ovl_En_Fish/z_en_fish.c @@ -9,7 +9,22 @@ void EnFish_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFish_Update(Actor* thisx, GlobalContext* globalCtx); void EnFish_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_8091FA60[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 5 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8091FA84 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_8091FA60, // sJntSphElementsInit, +}; + + const ActorInit En_Fish_InitVars = { ACTOR_EN_FISH, ACTORCAT_ITEMACTION, @@ -21,7 +36,20 @@ const ActorInit En_Fish_InitVars = { (ActorFunc)EnFish_Update, (ActorFunc)EnFish_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8091FAC0[] = { + ICHAIN_F32(uncullZoneForward, 720, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 40, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 40, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8091FA60[1]; +extern ColliderJntSphInit D_8091FA84; +extern InitChainEntry D_8091FAC0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fish_0x8091D630/func_8091D630.asm") diff --git a/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c b/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c index 82610e3e7..5b799bfda 100644 --- a/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c +++ b/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c @@ -9,7 +9,7 @@ void EnFish2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFish2_Update(Actor* thisx, GlobalContext* globalCtx); void EnFish2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fish2_InitVars = { ACTOR_EN_FISH2, ACTORCAT_PROP, @@ -21,7 +21,30 @@ const ActorInit En_Fish2_InitVars = { (ActorFunc)EnFish2_Update, (ActorFunc)EnFish2_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_80B2B318[2] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 17, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B2B360 = { + { COLTYPE_HARD, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_80B2B318, // sJntSphElementsInit, +}; + + +extern ColliderJntSphElementInit D_80B2B318[2]; +extern ColliderJntSphInit D_80B2B360; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fish2_0x80B28370/func_80B28370.asm") diff --git a/src/overlays/actors/ovl_En_Fishing/z_en_fishing.c b/src/overlays/actors/ovl_En_Fishing/z_en_fishing.c index 2b76bcbdb..7bf8cc94c 100644 --- a/src/overlays/actors/ovl_En_Fishing/z_en_fishing.c +++ b/src/overlays/actors/ovl_En_Fishing/z_en_fishing.c @@ -15,7 +15,7 @@ void EnFishing_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFishing_Update(Actor* thisx, GlobalContext* globalCtx); void EnFishing_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fishing_InitVars = { ACTOR_EN_FISHING, ACTORCAT_NPC, @@ -27,7 +27,78 @@ const ActorInit En_Fishing_InitVars = { (ActorFunc)EnFishing_Update, (ActorFunc)EnFishing_Draw, }; - */ + + +// static ColliderJntSphElementInit sJntSphElementsInit[12] = { +static ColliderJntSphElementInit D_8090CD58[12] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8090CF08 = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_NONE | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 12, D_8090CD58, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8090D4D0[] = { + ICHAIN_U8(targetMode, 5, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 0, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8090CD58[12] +extern ColliderJntSphInit D_8090CF08 +extern InitChainEntry D_8090D4D0[] +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fishing_0x808FC6C0/func_808FC6C0.asm") diff --git a/src/overlays/actors/ovl_En_Floormas/z_en_floormas.c b/src/overlays/actors/ovl_En_Floormas/z_en_floormas.c index 72c81172c..6c2748ef0 100644 --- a/src/overlays/actors/ovl_En_Floormas/z_en_floormas.c +++ b/src/overlays/actors/ovl_En_Floormas/z_en_floormas.c @@ -9,7 +9,7 @@ void EnFloormas_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFloormas_Update(Actor* thisx, GlobalContext* globalCtx); void EnFloormas_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Floormas_InitVars = { ACTOR_EN_FLOORMAS, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Floormas_InitVars = { (ActorFunc)EnFloormas_Update, (ActorFunc)EnFloormas_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808D38A0 = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7EFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 25, 40, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808D38CC = { 3, 30, 40, 150 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808D38D4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xE), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808D38F4[] = { + ICHAIN_S8(hintId, 49, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 5500, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808D38A0; +extern CollisionCheckInfoInit D_808D38CC; +extern DamageTable D_808D38D4; +extern InitChainEntry D_808D38F4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Floormas_0x808D0680/EnFloormas_Init.asm") diff --git a/src/overlays/actors/ovl_En_Fr/z_en_fr.c b/src/overlays/actors/ovl_En_Fr/z_en_fr.c index c7fdd14d3..728915565 100644 --- a/src/overlays/actors/ovl_En_Fr/z_en_fr.c +++ b/src/overlays/actors/ovl_En_Fr/z_en_fr.c @@ -8,7 +8,7 @@ void EnFr_Init(Actor* thisx, GlobalContext* globalCtx); void EnFr_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFr_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fr_InitVars = { ACTOR_EN_FR, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_Fr_InitVars = { (ActorFunc)EnFr_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fr_0x808FC550/EnFr_Init.asm") diff --git a/src/overlays/actors/ovl_En_Fu/z_en_fu.c b/src/overlays/actors/ovl_En_Fu/z_en_fu.c index 30e7ec541..190479c5b 100644 --- a/src/overlays/actors/ovl_En_Fu/z_en_fu.c +++ b/src/overlays/actors/ovl_En_Fu/z_en_fu.c @@ -9,7 +9,7 @@ void EnFu_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFu_Update(Actor* thisx, GlobalContext* globalCtx); void EnFu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fu_InitVars = { ACTOR_EN_FU, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Fu_InitVars = { (ActorFunc)EnFu_Update, (ActorFunc)EnFu_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80964BD8 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 50, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80964BD8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fu_0x809616E0/func_809616E0.asm") diff --git a/src/overlays/actors/ovl_En_Fu_Kago/z_en_fu_kago.c b/src/overlays/actors/ovl_En_Fu_Kago/z_en_fu_kago.c index 7be5e798b..2e616205f 100644 --- a/src/overlays/actors/ovl_En_Fu_Kago/z_en_fu_kago.c +++ b/src/overlays/actors/ovl_En_Fu_Kago/z_en_fu_kago.c @@ -9,7 +9,7 @@ void EnFuKago_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFuKago_Update(Actor* thisx, GlobalContext* globalCtx); void EnFuKago_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fu_Kago_InitVars = { ACTOR_EN_FU_KAGO, ACTORCAT_BG, @@ -21,7 +21,18 @@ const ActorInit En_Fu_Kago_InitVars = { (ActorFunc)EnFuKago_Update, (ActorFunc)EnFuKago_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80AD05F0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_NO_PUSH | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK4, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 200 }, 100 }, +}; + + +extern ColliderSphereInit D_80AD05F0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fu_Kago_0x80ACF780/EnFuKago_Init.asm") diff --git a/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c b/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c index 6151d3407..b76161727 100644 --- a/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c +++ b/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c @@ -9,7 +9,7 @@ void EnFuMato_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFuMato_Update(Actor* thisx, GlobalContext* globalCtx); void EnFuMato_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fu_Mato_InitVars = { ACTOR_EN_FU_MATO, ACTORCAT_BG, @@ -21,7 +21,18 @@ const ActorInit En_Fu_Mato_InitVars = { (ActorFunc)EnFuMato_Update, (ActorFunc)EnFuMato_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80ACF610 = { + { COLTYPE_HIT3, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK4, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 200 }, 100 }, +}; + + +extern ColliderSphereInit D_80ACF610; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fu_Mato_0x80ACE330/EnFuMato_Init.asm") diff --git a/src/overlays/actors/ovl_En_Fz/z_en_fz.c b/src/overlays/actors/ovl_En_Fz/z_en_fz.c index e371bed28..dde3fb293 100644 --- a/src/overlays/actors/ovl_En_Fz/z_en_fz.c +++ b/src/overlays/actors/ovl_En_Fz/z_en_fz.c @@ -9,7 +9,7 @@ void EnFz_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnFz_Update(Actor* thisx, GlobalContext* globalCtx); void EnFz_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Fz_InitVars = { ACTOR_EN_FZ, ACTORCAT_ENEMY, @@ -21,7 +21,84 @@ const ActorInit En_Fz_InitVars = { (ActorFunc)EnFz_Update, (ActorFunc)EnFz_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809346F8 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFEFDD, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 30, 80, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80934724 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00001022, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 35, 80, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80934750 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x02, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 20, 30, -15, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_8093477C = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0xD), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0xD), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(3, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(3, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xE), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8093479C[] = { + ICHAIN_S8(hintId, 59, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1400, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 30, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_809346F8; +extern ColliderCylinderInit D_80934724; +extern ColliderCylinderInit D_80934750; +extern DamageTable D_8093477C; +extern InitChainEntry D_8093479C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Fz_0x80932490/EnFz_Init.asm") diff --git a/src/overlays/actors/ovl_En_Gakufu/z_en_gakufu.c b/src/overlays/actors/ovl_En_Gakufu/z_en_gakufu.c index 50e406910..363c89d84 100644 --- a/src/overlays/actors/ovl_En_Gakufu/z_en_gakufu.c +++ b/src/overlays/actors/ovl_En_Gakufu/z_en_gakufu.c @@ -9,7 +9,7 @@ void EnGakufu_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGakufu_Update(Actor* thisx, GlobalContext* globalCtx); void EnGakufu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gakufu_InitVars = { ACTOR_EN_GAKUFU, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Gakufu_InitVars = { (ActorFunc)EnGakufu_Update, (ActorFunc)EnGakufu_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gakufu_0x80AFC960/func_80AFC960.asm") diff --git a/src/overlays/actors/ovl_En_Gamelupy/z_en_gamelupy.c b/src/overlays/actors/ovl_En_Gamelupy/z_en_gamelupy.c index 974985cb2..4155aa8a5 100644 --- a/src/overlays/actors/ovl_En_Gamelupy/z_en_gamelupy.c +++ b/src/overlays/actors/ovl_En_Gamelupy/z_en_gamelupy.c @@ -9,7 +9,7 @@ void EnGamelupy_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGamelupy_Update(Actor* thisx, GlobalContext* globalCtx); void EnGamelupy_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gamelupy_InitVars = { ACTOR_EN_GAMELUPY, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Gamelupy_InitVars = { (ActorFunc)EnGamelupy_Update, (ActorFunc)EnGamelupy_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AF6CF0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_NO_PUSH | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80AF6CF0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gamelupy_0x80AF6760/EnGamelupy_Init.asm") diff --git a/src/overlays/actors/ovl_En_Gb2/z_en_gb2.c b/src/overlays/actors/ovl_En_Gb2/z_en_gb2.c index 4daee01c6..93030452a 100644 --- a/src/overlays/actors/ovl_En_Gb2/z_en_gb2.c +++ b/src/overlays/actors/ovl_En_Gb2/z_en_gb2.c @@ -9,7 +9,7 @@ void EnGb2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGb2_Update(Actor* thisx, GlobalContext* globalCtx); void EnGb2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gb2_InitVars = { ACTOR_EN_GB2, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Gb2_InitVars = { (ActorFunc)EnGb2_Update, (ActorFunc)EnGb2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B11A40 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 40, 75, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B11AC4[] = { + ICHAIN_U8(targetMode, 4, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B11A40; +extern InitChainEntry D_80B11AC4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gb2_0x80B0F5E0/func_80B0F5E0.asm") diff --git a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c index 4cb8bc36b..3cbeda374 100644 --- a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c +++ b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c @@ -9,7 +9,7 @@ void EnGe1_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGe1_Update(Actor* thisx, GlobalContext* globalCtx); void EnGe1_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ge1_InitVars = { ACTOR_EN_GE1, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Ge1_InitVars = { (ActorFunc)EnGe1_Update, (ActorFunc)EnGe1_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809464D0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_809464D0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ge1_0x80945650/EnGe1_Init.asm") diff --git a/src/overlays/actors/ovl_En_Ge2/z_en_ge2.c b/src/overlays/actors/ovl_En_Ge2/z_en_ge2.c index 2dacead0a..df7ca7f26 100644 --- a/src/overlays/actors/ovl_En_Ge2/z_en_ge2.c +++ b/src/overlays/actors/ovl_En_Ge2/z_en_ge2.c @@ -9,7 +9,7 @@ void EnGe2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGe2_Update(Actor* thisx, GlobalContext* globalCtx); void EnGe2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ge2_InitVars = { ACTOR_EN_GE2, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Ge2_InitVars = { (ActorFunc)EnGe2_Update, (ActorFunc)EnGe2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B8CE40 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x038BFBB3, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80B8CE40; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ge2_0x80B8B2D0/EnGe2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c b/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c index e523b6b67..a71b28140 100644 --- a/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c +++ b/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c @@ -9,7 +9,7 @@ void EnGe3_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGe3_Update(Actor* thisx, GlobalContext* globalCtx); void EnGe3_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ge3_InitVars = { ACTOR_EN_GE3, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Ge3_InitVars = { (ActorFunc)EnGe3_Update, (ActorFunc)EnGe3_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809A0DA0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01000222, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 50, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_809A0DA0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ge3_0x8099FEB0/EnGe3_Init.asm") diff --git a/src/overlays/actors/ovl_En_Geg/z_en_geg.c b/src/overlays/actors/ovl_En_Geg/z_en_geg.c index c8744fbed..222d98b0f 100644 --- a/src/overlays/actors/ovl_En_Geg/z_en_geg.c +++ b/src/overlays/actors/ovl_En_Geg/z_en_geg.c @@ -9,7 +9,7 @@ void EnGeg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGeg_Update(Actor* thisx, GlobalContext* globalCtx); void EnGeg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Geg_InitVars = { ACTOR_EN_GEG, ACTORCAT_NPC, @@ -21,7 +21,70 @@ const ActorInit En_Geg_InitVars = { (ActorFunc)EnGeg_Update, (ActorFunc)EnGeg_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80BB3E70 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 0 }, 100 }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BB3E9C = { + { COLTYPE_HIT1, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, 0, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BB3EC8 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BB3ED4 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderSphereInit D_80BB3E70; +extern ColliderCylinderInit D_80BB3E9C; +extern CollisionCheckInfoInit2 D_80BB3EC8; +extern DamageTable D_80BB3ED4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Geg_0x80BB16D0/func_80BB16D0.asm") diff --git a/src/overlays/actors/ovl_En_Gg/z_en_gg.c b/src/overlays/actors/ovl_En_Gg/z_en_gg.c index 139867b4e..5c6318230 100644 --- a/src/overlays/actors/ovl_En_Gg/z_en_gg.c +++ b/src/overlays/actors/ovl_En_Gg/z_en_gg.c @@ -9,7 +9,7 @@ void EnGg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGg_Update(Actor* thisx, GlobalContext* globalCtx); void EnGg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gg_InitVars = { ACTOR_EN_GG, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Gg_InitVars = { (ActorFunc)EnGg_Update, (ActorFunc)EnGg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B36C00 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 24, 72, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B36C2C = { 0, 24, 72, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B36C38 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_80B36C00; +extern CollisionCheckInfoInit2 D_80B36C2C; +extern DamageTable D_80B36C38; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gg_0x80B34F70/func_80B34F70.asm") diff --git a/src/overlays/actors/ovl_En_Gg2/z_en_gg2.c b/src/overlays/actors/ovl_En_Gg2/z_en_gg2.c index fd5b8abb7..53a1a5785 100644 --- a/src/overlays/actors/ovl_En_Gg2/z_en_gg2.c +++ b/src/overlays/actors/ovl_En_Gg2/z_en_gg2.c @@ -9,7 +9,7 @@ void EnGg2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGg2_Update(Actor* thisx, GlobalContext* globalCtx); void EnGg2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gg2_InitVars = { ACTOR_EN_GG2, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Gg2_InitVars = { (ActorFunc)EnGg2_Update, (ActorFunc)EnGg2_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gg2_0x80B3AC50/func_80B3AC50.asm") diff --git a/src/overlays/actors/ovl_En_Giant/z_en_giant.c b/src/overlays/actors/ovl_En_Giant/z_en_giant.c index 562c94bf8..780d8248e 100644 --- a/src/overlays/actors/ovl_En_Giant/z_en_giant.c +++ b/src/overlays/actors/ovl_En_Giant/z_en_giant.c @@ -9,7 +9,7 @@ void EnGiant_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGiant_Update(Actor* thisx, GlobalContext* globalCtx); void EnGiant_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Giant_InitVars = { ACTOR_EN_GIANT, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Giant_InitVars = { (ActorFunc)EnGiant_Update, (ActorFunc)EnGiant_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Giant_0x80B01990/func_80B01990.asm") diff --git a/src/overlays/actors/ovl_En_Gk/z_en_gk.c b/src/overlays/actors/ovl_En_Gk/z_en_gk.c index 8e1cf4807..68d147165 100644 --- a/src/overlays/actors/ovl_En_Gk/z_en_gk.c +++ b/src/overlays/actors/ovl_En_Gk/z_en_gk.c @@ -9,7 +9,7 @@ void EnGk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGk_Update(Actor* thisx, GlobalContext* globalCtx); void EnGk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gk_InitVars = { ACTOR_EN_GK, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Gk_InitVars = { (ActorFunc)EnGk_Update, (ActorFunc)EnGk_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B53210 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 24, 32, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B5323C = { 0, 24, 32, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B53248 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_80B53210; +extern CollisionCheckInfoInit2 D_80B5323C; +extern DamageTable D_80B53248; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gk_0x80B50410/func_80B50410.asm") diff --git a/src/overlays/actors/ovl_En_Gm/z_en_gm.c b/src/overlays/actors/ovl_En_Gm/z_en_gm.c index 6efea2bcf..a26bec2b3 100644 --- a/src/overlays/actors/ovl_En_Gm/z_en_gm.c +++ b/src/overlays/actors/ovl_En_Gm/z_en_gm.c @@ -9,7 +9,7 @@ void EnGm_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGm_Update(Actor* thisx, GlobalContext* globalCtx); void EnGm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gm_InitVars = { ACTOR_EN_GM, ACTORCAT_NPC, @@ -21,7 +21,32 @@ const ActorInit En_Gm_InitVars = { (ActorFunc)EnGm_Update, (ActorFunc)EnGm_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80951C5C = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 14, 62, 0, { 0, 0, 0 } }, +}; + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80951C88 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80951CB4 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80951C5C; +extern ColliderSphereInit D_80951C88; +extern CollisionCheckInfoInit2 D_80951CB4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gm_0x8094DEE0/func_8094DEE0.asm") diff --git a/src/overlays/actors/ovl_En_Go/z_en_go.c b/src/overlays/actors/ovl_En_Go/z_en_go.c index 49763014a..065702030 100644 --- a/src/overlays/actors/ovl_En_Go/z_en_go.c +++ b/src/overlays/actors/ovl_En_Go/z_en_go.c @@ -8,7 +8,7 @@ void EnGo_Init(Actor* thisx, GlobalContext* globalCtx); void EnGo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGo_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Go_InitVars = { ACTOR_EN_GO, ACTORCAT_NPC, @@ -20,7 +20,79 @@ const ActorInit En_Go_InitVars = { (ActorFunc)EnGo_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80A16434 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 0 }, 100 }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A16460 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x02, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, 0, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A1648C = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, 0, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A164B8 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A164C4 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderSphereInit D_80A16434; +extern ColliderCylinderInit D_80A16460; +extern ColliderCylinderInit D_80A1648C; +extern CollisionCheckInfoInit2 D_80A164B8; +extern DamageTable D_80A164C4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Go_0x80A10FD0/func_80A10FD0.asm") diff --git a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c index 1130c00b7..451112df9 100644 --- a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c +++ b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c @@ -9,7 +9,7 @@ void EnGoroiwa_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGoroiwa_Update(Actor* thisx, GlobalContext* globalCtx); void EnGoroiwa_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Goroiwa_InitVars = { ACTOR_EN_GOROIWA, ACTORCAT_PROP, @@ -21,7 +21,42 @@ const ActorInit En_Goroiwa_InitVars = { (ActorFunc)EnGoroiwa_Update, (ActorFunc)EnGoroiwa_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80942DC0[1] = { + { + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 58 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80942DE4 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_JNTSPH, }, + 1, D_80942DC0, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80942DF4 = { 0, 12, 60, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80942E78[] = { + ICHAIN_F32_DIV1000(gravity, -900, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -26000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 160, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 350, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80942DC0[1]; +extern ColliderJntSphInit D_80942DE4; +extern CollisionCheckInfoInit D_80942DF4; +extern InitChainEntry D_80942E78[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Goroiwa_0x8093E8A0/func_8093E8A0.asm") diff --git a/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c b/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c index 1e2b09ebe..b958d72a7 100644 --- a/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c +++ b/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c @@ -9,7 +9,44 @@ void EnGrasshopper_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGrasshopper_Update(Actor* thisx, GlobalContext* globalCtx); void EnGrasshopper_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809A8CDC = { + /* Deku Nut */ DMG_ENTRY(1, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0xF), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xE), +}; + + const ActorInit En_Grasshopper_InitVars = { ACTOR_EN_GRASSHOPPER, ACTORCAT_ENEMY, @@ -21,7 +58,31 @@ const ActorInit En_Grasshopper_InitVars = { (ActorFunc)EnGrasshopper_Update, (ActorFunc)EnGrasshopper_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_809A8D1C[2] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 7, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x07, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 6, { { 0, 0, 0 }, 0 }, 0 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809A8D64 = { + { COLTYPE_HIT2, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_809A8D1C, // sJntSphElementsInit, +}; + + +extern DamageTable D_809A8CDC; +extern ColliderJntSphElementInit D_809A8D1C[2]; +extern ColliderJntSphInit D_809A8D64; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Grasshopper_0x809A6280/EnGrasshopper_Init.asm") diff --git a/src/overlays/actors/ovl_En_Gs/z_en_gs.c b/src/overlays/actors/ovl_En_Gs/z_en_gs.c index 8592592d6..f618e58fa 100644 --- a/src/overlays/actors/ovl_En_Gs/z_en_gs.c +++ b/src/overlays/actors/ovl_En_Gs/z_en_gs.c @@ -9,7 +9,7 @@ void EnGs_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGs_Update(Actor* thisx, GlobalContext* globalCtx); void EnGs_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Gs_InitVars = { ACTOR_EN_GS, ACTORCAT_PROP, @@ -21,7 +21,68 @@ const ActorInit En_Gs_InitVars = { (ActorFunc)EnGs_Update, (ActorFunc)EnGs_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8099A3A0 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 21, 48, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8099A3CC = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_8099A3D8 = { + /* Deku Nut */ DMG_ENTRY(0, 0xE), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0xC), + /* Zora boomerang */ DMG_ENTRY(0, 0xE), + /* Normal arrow */ DMG_ENTRY(0, 0xE), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(0, 0xD), + /* Sword */ DMG_ENTRY(0, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xD), + /* Fire arrow */ DMG_ENTRY(0, 0xB), + /* Ice arrow */ DMG_ENTRY(0, 0xB), + /* Light arrow */ DMG_ENTRY(0, 0xB), + /* Goron spikes */ DMG_ENTRY(0, 0xE), + /* Deku spin */ DMG_ENTRY(0, 0xE), + /* Deku bubble */ DMG_ENTRY(0, 0xD), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xE), + /* Zora punch */ DMG_ENTRY(0, 0xE), + /* Spin attack */ DMG_ENTRY(0, 0xE), + /* Sword beam */ DMG_ENTRY(0, 0xE), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0xC), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8099A404[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8099A3A0; +extern CollisionCheckInfoInit2 D_8099A3CC; +extern DamageTable D_8099A3D8; +extern InitChainEntry D_8099A404[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Gs_0x80997A90/func_80997A90.asm") diff --git a/src/overlays/actors/ovl_En_Guard_Nuts/z_en_guard_nuts.c b/src/overlays/actors/ovl_En_Guard_Nuts/z_en_guard_nuts.c index 93309a689..45e4034d1 100644 --- a/src/overlays/actors/ovl_En_Guard_Nuts/z_en_guard_nuts.c +++ b/src/overlays/actors/ovl_En_Guard_Nuts/z_en_guard_nuts.c @@ -9,7 +9,7 @@ void EnGuardNuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnGuardNuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnGuardNuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Guard_Nuts_InitVars = { ACTOR_EN_GUARD_NUTS, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Guard_Nuts_InitVars = { (ActorFunc)EnGuardNuts_Update, (ActorFunc)EnGuardNuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ABBDF0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON | OCELEM_UNK3, }, + { 50, 50, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80ABBDF0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Guard_Nuts_0x80ABB0E0/EnGuardNuts_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hakurock/z_en_hakurock.c b/src/overlays/actors/ovl_En_Hakurock/z_en_hakurock.c index f8b5d1f49..3b3ddca09 100644 --- a/src/overlays/actors/ovl_En_Hakurock/z_en_hakurock.c +++ b/src/overlays/actors/ovl_En_Hakurock/z_en_hakurock.c @@ -8,7 +8,7 @@ void EnHakurock_Init(Actor* thisx, GlobalContext* globalCtx); void EnHakurock_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHakurock_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hakurock_InitVars = { ACTOR_EN_HAKUROCK, ACTORCAT_ITEMACTION, @@ -20,7 +20,23 @@ const ActorInit En_Hakurock_InitVars = { (ActorFunc)EnHakurock_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B22A80 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_NO_PUSH | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x00 }, { 0xF3CFBBFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 60, 60, -30, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80B22AAC = { 0, 60, 60, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80B22A80; +extern CollisionCheckInfoInit D_80B22AAC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hakurock_0x80B21B00/EnHakurock_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hanabi/z_en_hanabi.c b/src/overlays/actors/ovl_En_Hanabi/z_en_hanabi.c index 961e35421..fd806c1db 100644 --- a/src/overlays/actors/ovl_En_Hanabi/z_en_hanabi.c +++ b/src/overlays/actors/ovl_En_Hanabi/z_en_hanabi.c @@ -8,7 +8,7 @@ void EnHanabi_Init(Actor* thisx, GlobalContext* globalCtx); void EnHanabi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHanabi_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hanabi_InitVars = { ACTOR_EN_HANABI, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_Hanabi_InitVars = { (ActorFunc)EnHanabi_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hanabi_0x80B22C00/func_80B22C00.asm") diff --git a/src/overlays/actors/ovl_En_Hata/z_en_hata.c b/src/overlays/actors/ovl_En_Hata/z_en_hata.c index 7b708810a..eb3318ce5 100644 --- a/src/overlays/actors/ovl_En_Hata/z_en_hata.c +++ b/src/overlays/actors/ovl_En_Hata/z_en_hata.c @@ -9,7 +9,7 @@ void EnHata_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHata_Update(Actor* thisx, GlobalContext* globalCtx); void EnHata_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hata_InitVars = { ACTOR_EN_HATA, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit En_Hata_InitVars = { (ActorFunc)EnHata_Update, (ActorFunc)EnHata_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hata_0x8089E8E0/EnHata_Init.asm") diff --git a/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c b/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c index 9aa10d7d7..0ff3fefd0 100644 --- a/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c +++ b/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c @@ -9,7 +9,7 @@ void EnHeishi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHeishi_Update(Actor* thisx, GlobalContext* globalCtx); void EnHeishi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Heishi_InitVars = { ACTOR_EN_HEISHI, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Heishi_InitVars = { (ActorFunc)EnHeishi_Update, (ActorFunc)EnHeishi_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE9450 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE9450; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Heishi_0x80BE8F20/EnHeishi_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hg/z_en_hg.c b/src/overlays/actors/ovl_En_Hg/z_en_hg.c index 868447dec..02d92af0f 100644 --- a/src/overlays/actors/ovl_En_Hg/z_en_hg.c +++ b/src/overlays/actors/ovl_En_Hg/z_en_hg.c @@ -9,7 +9,7 @@ void EnHg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHg_Update(Actor* thisx, GlobalContext* globalCtx); void EnHg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hg_InitVars = { ACTOR_EN_HG, ACTORCAT_PROP, @@ -21,7 +21,61 @@ const ActorInit En_Hg_InitVars = { (ActorFunc)EnHg_Update, (ActorFunc)EnHg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BCFFB0 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 46, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BCFFDC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xD), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(3, 0xC), + /* Normal arrow */ DMG_ENTRY(3, 0xC), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(3, 0x2), + /* Ice arrow */ DMG_ENTRY(3, 0x3), + /* Light arrow */ DMG_ENTRY(1, 0x4), + /* Goron spikes */ DMG_ENTRY(2, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0x0), + /* Normal Roll */ DMG_ENTRY(4, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BCFFFC = { 0, 0, 0, 0, 128 }; + + +extern ColliderCylinderInit D_80BCFFB0; +extern DamageTable D_80BCFFDC; +extern CollisionCheckInfoInit2 D_80BCFFFC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hg_0x80BCF1D0/EnHg_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c b/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c index 9001e19fd..d3cfb8b42 100644 --- a/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c +++ b/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c @@ -9,7 +9,7 @@ void EnHgo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHgo_Update(Actor* thisx, GlobalContext* globalCtx); void EnHgo_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hgo_InitVars = { ACTOR_EN_HGO, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Hgo_InitVars = { (ActorFunc)EnHgo_Update, (ActorFunc)EnHgo_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD0F48 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 18, 46, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BD0F74 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BD0F48; +extern CollisionCheckInfoInit2 D_80BD0F74; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hgo_0x80BD02B0/EnHgo_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hidden_Nuts/z_en_hidden_nuts.c b/src/overlays/actors/ovl_En_Hidden_Nuts/z_en_hidden_nuts.c index e9e92f8ba..2c50bcb0c 100644 --- a/src/overlays/actors/ovl_En_Hidden_Nuts/z_en_hidden_nuts.c +++ b/src/overlays/actors/ovl_En_Hidden_Nuts/z_en_hidden_nuts.c @@ -9,7 +9,7 @@ void EnHiddenNuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHiddenNuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnHiddenNuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hidden_Nuts_InitVars = { ACTOR_EN_HIDDEN_NUTS, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Hidden_Nuts_InitVars = { (ActorFunc)EnHiddenNuts_Update, (ActorFunc)EnHiddenNuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BDC0D0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 30, 20, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BDC0D0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hidden_Nuts_0x80BDB040/EnHiddenNuts_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c b/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c index 670f9e0d7..0d94b62a4 100644 --- a/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c +++ b/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c @@ -9,7 +9,7 @@ void EnHintSkb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHintSkb_Update(Actor* thisx, GlobalContext* globalCtx); void EnHintSkb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hint_Skb_InitVars = { ACTOR_EN_HINT_SKB, ACTORCAT_NPC, @@ -21,7 +21,81 @@ const ActorInit En_Hint_Skb_InitVars = { (ActorFunc)EnHintSkb_Update, (ActorFunc)EnHintSkb_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_80C21C80[2] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 15, { { 0, 0, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80C21CC8 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_80C21C80, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80C21CD8 = { 2, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80C21CE4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xD), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(3, 0xC), + /* Normal arrow */ DMG_ENTRY(3, 0xC), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(1, 0x1), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(3, 0x2), + /* Ice arrow */ DMG_ENTRY(3, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0xB), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0x0), + /* Normal Roll */ DMG_ENTRY(4, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C21E3C[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80C21C80[2]; +extern ColliderJntSphInit D_80C21CC8; +extern CollisionCheckInfoInit2 D_80C21CD8; +extern DamageTable D_80C21CE4; +extern InitChainEntry D_80C21E3C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hint_Skb_0x80C1FCF0/EnHintSkb_Init.asm") diff --git a/src/overlays/actors/ovl_En_Hit_Tag/z_en_hit_tag.c b/src/overlays/actors/ovl_En_Hit_Tag/z_en_hit_tag.c index 243fb7575..ed62f7f53 100644 --- a/src/overlays/actors/ovl_En_Hit_Tag/z_en_hit_tag.c +++ b/src/overlays/actors/ovl_En_Hit_Tag/z_en_hit_tag.c @@ -8,7 +8,7 @@ void EnHitTag_Init(Actor* thisx, GlobalContext* globalCtx); void EnHitTag_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHitTag_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hit_Tag_InitVars = { ACTOR_EN_HIT_TAG, ACTORCAT_ITEMACTION, @@ -20,7 +20,18 @@ const ActorInit En_Hit_Tag_InitVars = { (ActorFunc)EnHitTag_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE21F0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 16, 32, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE21F0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hit_Tag_0x80BE2030/EnHitTag_Init.asm") diff --git a/src/overlays/actors/ovl_En_Holl/z_en_holl.c b/src/overlays/actors/ovl_En_Holl/z_en_holl.c index 7eaf74b72..d108f992a 100644 --- a/src/overlays/actors/ovl_En_Holl/z_en_holl.c +++ b/src/overlays/actors/ovl_En_Holl/z_en_holl.c @@ -9,7 +9,7 @@ void EnHoll_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHoll_Update(Actor* thisx, GlobalContext* globalCtx); void EnHoll_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Holl_InitVars = { ACTOR_EN_HOLL, ACTORCAT_DOOR, @@ -21,7 +21,18 @@ const ActorInit En_Holl_InitVars = { (ActorFunc)EnHoll_Update, (ActorFunc)EnHoll_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8089A5D0[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 400, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8089A5D0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Holl_0x80899960/func_80899960.asm") diff --git a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c index 9961a00df..267dc6c26 100644 --- a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c +++ b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c @@ -9,7 +9,7 @@ void EnHonotrap_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHonotrap_Update(Actor* thisx, GlobalContext* globalCtx); void EnHonotrap_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Honotrap_InitVars = { ACTOR_EN_HONOTRAP, ACTORCAT_PROP, @@ -21,7 +21,53 @@ const ActorInit En_Honotrap_InitVars = { (ActorFunc)EnHonotrap_Update, (ActorFunc)EnHonotrap_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_80930424[2] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00003820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 23.0f, 8.5f }, { -23.0f, 0.0f, 8.5f }, { 0.0f, -23.0f, 8.5f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00003820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 23.0f, 8.5f }, { 0.0f, -23.0f, 8.5f }, { 23.0f, 0.0f, 8.5f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_8093049C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 2, D_80930424, // sTrisElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809304AC = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x01, 0x04 }, { 0x00100000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 10, 25, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_809304D8 = { 0, 9, 23, 1 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809304E0[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80930424[2]; +extern ColliderTrisInit D_8093049C; +extern ColliderCylinderInit D_809304AC; +extern CollisionCheckInfoInit D_809304D8; +extern InitChainEntry D_809304E0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Honotrap_0x8092E510/func_8092E510.asm") diff --git a/src/overlays/actors/ovl_En_Horse/z_en_horse.c b/src/overlays/actors/ovl_En_Horse/z_en_horse.c index 4bdc4da0a..aabe101cd 100644 --- a/src/overlays/actors/ovl_En_Horse/z_en_horse.c +++ b/src/overlays/actors/ovl_En_Horse/z_en_horse.c @@ -9,7 +9,7 @@ void EnHorse_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHorse_Update(Actor* thisx, GlobalContext* globalCtx); void EnHorse_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Horse_InitVars = { ACTOR_EN_HORSE, ACTORCAT_BG, @@ -21,7 +21,57 @@ const ActorInit En_Horse_InitVars = { (ActorFunc)EnHorse_Update, (ActorFunc)EnHorse_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80888F74 = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_PLAYER, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1 | OC2_UNK1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000004, 0x00, 0x02 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_ON, }, + { 20, 70, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80888FA0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1 | OC2_UNK1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 70, 0, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80888FCC[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00013820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_NO_AT_INFO | BUMP_NO_DAMAGE | BUMP_NO_SWORD_SFX | BUMP_NO_HITMARK, OCELEM_ON, }, + { 13, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80888FF0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1 | OC2_UNK1, COLSHAPE_JNTSPH, }, + 1, D_80888FCC, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80889000 = { 10, 35, 100, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80889010[] = { + ICHAIN_F32(uncullZoneScale, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80888F74; +extern ColliderCylinderInit D_80888FA0; +extern ColliderJntSphElementInit D_80888FCC[1]; +extern ColliderJntSphInit D_80888FF0; +extern CollisionCheckInfoInit D_80889000; +extern InitChainEntry D_80889010[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Horse_0x8087B730/func_8087B730.asm") diff --git a/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c b/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c index 497db3583..24279f830 100644 --- a/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c +++ b/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c @@ -9,7 +9,7 @@ void EnHorseGameCheck_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHorseGameCheck_Update(Actor* thisx, GlobalContext* globalCtx); void EnHorseGameCheck_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Horse_Game_Check_InitVars = { ACTOR_EN_HORSE_GAME_CHECK, ACTORCAT_BG, @@ -21,7 +21,17 @@ const ActorInit En_Horse_Game_Check_InitVars = { (ActorFunc)EnHorseGameCheck_Update, (ActorFunc)EnHorseGameCheck_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808F9BDC[] = { + ICHAIN_F32(uncullZoneScale, 2400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_STOP), +}; + + +extern InitChainEntry D_808F9BDC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Horse_Game_Check_0x808F8AA0/func_808F8AA0.asm") diff --git a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c index 896513c44..288913259 100644 --- a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c +++ b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c @@ -9,7 +9,7 @@ void EnHorseLinkChild_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHorseLinkChild_Update(Actor* thisx, GlobalContext* globalCtx); void EnHorseLinkChild_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Horse_Link_Child_InitVars = { ACTOR_EN_HORSE_LINK_CHILD, ACTORCAT_BG, @@ -21,7 +21,38 @@ const ActorInit En_Horse_Link_Child_InitVars = { (ActorFunc)EnHorseLinkChild_Update, (ActorFunc)EnHorseLinkChild_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_808DFED4[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 13, { { 0, 0, 0 }, 10 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808DFEF8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1 | OC2_UNK1, COLSHAPE_JNTSPH, }, + 1, D_808DFED4, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808DFF08 = { 10, 35, 100, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808DFF2C[] = { + ICHAIN_F32(uncullZoneScale, 1200, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_808DFED4[1]; +extern ColliderJntSphInit D_808DFEF8; +extern CollisionCheckInfoInit D_808DFF08; +extern InitChainEntry D_808DFF2C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Horse_Link_Child_0x808DE5C0/func_808DE5C0.asm") diff --git a/src/overlays/actors/ovl_En_Hs/z_en_hs.c b/src/overlays/actors/ovl_En_Hs/z_en_hs.c index 21e7cf7ee..35bad4c62 100644 --- a/src/overlays/actors/ovl_En_Hs/z_en_hs.c +++ b/src/overlays/actors/ovl_En_Hs/z_en_hs.c @@ -9,7 +9,7 @@ void EnHs_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHs_Update(Actor* thisx, GlobalContext* globalCtx); void EnHs_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Hs_InitVars = { ACTOR_EN_HS, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Hs_InitVars = { (ActorFunc)EnHs_Update, (ActorFunc)EnHs_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80953910 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 40, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80953910; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Hs_0x80952C50/func_80952C50.asm") diff --git a/src/overlays/actors/ovl_En_Ig/z_en_ig.c b/src/overlays/actors/ovl_En_Ig/z_en_ig.c index 43baaa459..c041d1e2e 100644 --- a/src/overlays/actors/ovl_En_Ig/z_en_ig.c +++ b/src/overlays/actors/ovl_En_Ig/z_en_ig.c @@ -9,7 +9,7 @@ void EnIg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnIg_Update(Actor* thisx, GlobalContext* globalCtx); void EnIg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ig_InitVars = { ACTOR_EN_IG, ACTORCAT_NPC, @@ -21,7 +21,32 @@ const ActorInit En_Ig_InitVars = { (ActorFunc)EnIg_Update, (ActorFunc)EnIg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BF3418 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 28, 62, 0, { 0, 0, 0 } }, +}; + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80BF3444 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BF3470 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BF3418; +extern ColliderSphereInit D_80BF3444; +extern CollisionCheckInfoInit2 D_80BF3470; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ig_0x80BF1150/func_80BF1150.asm") diff --git a/src/overlays/actors/ovl_En_Ik/z_en_ik.c b/src/overlays/actors/ovl_En_Ik/z_en_ik.c index 23fe508de..bd256b99d 100644 --- a/src/overlays/actors/ovl_En_Ik/z_en_ik.c +++ b/src/overlays/actors/ovl_En_Ik/z_en_ik.c @@ -9,7 +9,7 @@ void EnIk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnIk_Update(Actor* thisx, GlobalContext* globalCtx); void EnIk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ik_InitVars = { ACTOR_EN_IK, ACTORCAT_ENEMY, @@ -21,7 +21,138 @@ const ActorInit En_Ik_InitVars = { (ActorFunc)EnIk_Update, (ActorFunc)EnIk_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8092C01C = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 25, 80, 0, { 0, 0, 0 } }, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_8092C048[2] = { + { + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -10.0f, 14.0f, 2.0f }, { -10.0f, -6.0f, 2.0f }, { 9.0f, 14.0f, 2.0f } } }, + }, + { + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -10.0f, -6.0f, 2.0f }, { 9.0f, -6.0f, 2.0f }, { 9.0f, 14.0f, 2.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_8092C0C0 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_TRIS, }, + 2, D_8092C048, // sTrisElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_8092C0D0 = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_TYPE_2, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x04, 0x40 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_8092C120 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(3, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0xF), + /* Ice arrow */ DMG_ENTRY(0, 0xF), + /* Light arrow */ DMG_ENTRY(1, 0x4), + /* Goron spikes */ DMG_ENTRY(0, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_8092C140 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(3, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8092C160 = { 18, 25, 80, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8092C168[] = { + ICHAIN_F32(targetArrowOffset, 2916, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 12, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8092C01C; +extern ColliderTrisElementInit D_8092C048[2]; +extern ColliderTrisInit D_8092C0C0; +extern ColliderQuadInit D_8092C0D0; +extern DamageTable D_8092C120; +extern DamageTable D_8092C140; +extern CollisionCheckInfoInit D_8092C160; +extern InitChainEntry D_8092C168[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ik_0x80929910/EnIk_Init.asm") diff --git a/src/overlays/actors/ovl_En_In/z_en_in.c b/src/overlays/actors/ovl_En_In/z_en_in.c index 68b8a502d..6b44d3c4e 100644 --- a/src/overlays/actors/ovl_En_In/z_en_in.c +++ b/src/overlays/actors/ovl_En_In/z_en_in.c @@ -1,6 +1,6 @@ /* * File z_en_in.c - * Overlay: ovl_en_in + * Overlay: ovl_En_In * Description: Gorman Bros */ diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.c b/src/overlays/actors/ovl_En_Insect/z_en_insect.c index ef6fc135e..234350e55 100644 --- a/src/overlays/actors/ovl_En_Insect/z_en_insect.c +++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.c @@ -9,7 +9,7 @@ void EnInsect_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnInsect_Update(Actor* thisx, GlobalContext* globalCtx); void EnInsect_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Insect_InitVars = { ACTOR_EN_INSECT, ACTORCAT_ITEMACTION, @@ -21,7 +21,36 @@ const ActorInit En_Insect_InitVars = { (ActorFunc)EnInsect_Update, (ActorFunc)EnInsect_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_8091BD84[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 5 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8091BDA8 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_8091BD84, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8091BDBC[] = { + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 700, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 20, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 30, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8091BD84[1]; +extern ColliderJntSphInit D_8091BDA8; +extern InitChainEntry D_8091BDBC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Insect_0x8091A8A0/func_8091A8A0.asm") diff --git a/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c b/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c index eeeee2a77..37d9af7df 100644 --- a/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c +++ b/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c @@ -1,6 +1,6 @@ /* * File z_en_invadepoh.c - * Overlay: ovl_en_invadepoh + * Overlay: ovl_En_Invadepoh * Description: Ranch nighttime actors */ @@ -565,7 +565,7 @@ static InitChainEntry sInitChainRomani[] = { static InitChainEntry D_80B4EC68[] = { ICHAIN_F32(uncullZoneForward, 20000, ICHAIN_CONTINUE), ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE), - ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_CONTINUE), ICHAIN_VEC3S(shape, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_CONTINUE), ICHAIN_VEC3S(shape.rot, 0, ICHAIN_CONTINUE), ICHAIN_F32(minVelocityY, -100, ICHAIN_CONTINUE), ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), }; diff --git a/src/overlays/actors/ovl_En_Invadepoh_Demo/z_en_invadepoh_demo.c b/src/overlays/actors/ovl_En_Invadepoh_Demo/z_en_invadepoh_demo.c index 34b428320..3ebfab7aa 100644 --- a/src/overlays/actors/ovl_En_Invadepoh_Demo/z_en_invadepoh_demo.c +++ b/src/overlays/actors/ovl_En_Invadepoh_Demo/z_en_invadepoh_demo.c @@ -9,7 +9,7 @@ void EnInvadepohDemo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnInvadepohDemo_Update(Actor* thisx, GlobalContext* globalCtx); void EnInvadepohDemo_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Invadepoh_Demo_InitVars = { ACTOR_EN_INVADEPOH_DEMO, ACTORCAT_PROP, @@ -21,7 +21,64 @@ const ActorInit En_Invadepoh_Demo_InitVars = { (ActorFunc)EnInvadepohDemo_Update, (ActorFunc)EnInvadepohDemo_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C1AA74[] = { + ICHAIN_F32(uncullZoneForward, 20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 600, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 6000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C1AA88[] = { + ICHAIN_F32(uncullZoneForward, 20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 1500, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 6, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C1AAA0[] = { + ICHAIN_F32(uncullZoneForward, 20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C1AAB0[] = { + ICHAIN_F32(uncullZoneForward, 20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_CONTINUE), + ICHAIN_VEC3S(shape.rot, 0, ICHAIN_CONTINUE), + ICHAIN_F32(minVelocityY, -100, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 800, ICHAIN_STOP), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C1AAC8[] = { + ICHAIN_F32(uncullZoneForward, 20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80C1AA74[]; +extern InitChainEntry D_80C1AA88[]; +extern InitChainEntry D_80C1AAA0[]; +extern InitChainEntry D_80C1AAB0[]; +extern InitChainEntry D_80C1AAC8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Invadepoh_Demo_0x80C192A0/func_80C192A0.asm") diff --git a/src/overlays/actors/ovl_En_Invisible_Ruppe/z_en_invisible_ruppe.c b/src/overlays/actors/ovl_En_Invisible_Ruppe/z_en_invisible_ruppe.c index ec54f5efc..58450d52a 100644 --- a/src/overlays/actors/ovl_En_Invisible_Ruppe/z_en_invisible_ruppe.c +++ b/src/overlays/actors/ovl_En_Invisible_Ruppe/z_en_invisible_ruppe.c @@ -8,7 +8,7 @@ void EnInvisibleRuppe_Init(Actor* thisx, GlobalContext* globalCtx); void EnInvisibleRuppe_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnInvisibleRuppe_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Invisible_Ruppe_InitVars = { ACTOR_EN_INVISIBLE_RUPPE, ACTORCAT_NPC, @@ -20,7 +20,18 @@ const ActorInit En_Invisible_Ruppe_InitVars = { (ActorFunc)EnInvisibleRuppe_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C25B50 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_NO_PUSH | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C25B50; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Invisible_Ruppe_0x80C258A0/func_80C258A0.asm") diff --git a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c index 42c1a1f10..004ad2784 100644 --- a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c +++ b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c @@ -8,7 +8,7 @@ void EnIshi_Init(Actor* thisx, GlobalContext* globalCtx); void EnIshi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnIshi_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ishi_InitVars = { ACTOR_EN_ISHI, ACTORCAT_PROP, @@ -20,7 +20,54 @@ const ActorInit En_Ishi_InitVars = { (ActorFunc)EnIshi_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8095F6EC = { + { COLTYPE_HARD, AT_ON | AT_TYPE_PLAYER, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x01C37FBE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 10, 18, -2, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8095F718 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_PLAYER, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 55, 70, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8095F744 = { 0, 12, 60, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8095F784[] = { + ICHAIN_F32_DIV1000(gravity, -1200, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8095F798[] = { + ICHAIN_F32_DIV1000(gravity, -2500, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 250, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 400, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8095F6EC; +extern ColliderCylinderInit D_8095F718; +extern CollisionCheckInfoInit D_8095F744; +extern InitChainEntry D_8095F784[]; +extern InitChainEntry D_8095F798[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ishi_0x8095D6E0/func_8095D6E0.asm") diff --git a/src/overlays/actors/ovl_En_Ja/z_en_ja.c b/src/overlays/actors/ovl_En_Ja/z_en_ja.c index 71bf534b1..2fc356bd4 100644 --- a/src/overlays/actors/ovl_En_Ja/z_en_ja.c +++ b/src/overlays/actors/ovl_En_Ja/z_en_ja.c @@ -9,7 +9,7 @@ void EnJa_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnJa_Update(Actor* thisx, GlobalContext* globalCtx); void EnJa_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ja_InitVars = { ACTOR_EN_JA, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Ja_InitVars = { (ActorFunc)EnJa_Update, (ActorFunc)EnJa_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BC36DC = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 12, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BC3708 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BC36DC; +extern CollisionCheckInfoInit2 D_80BC3708; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ja_0x80BC1900/func_80BC1900.asm") diff --git a/src/overlays/actors/ovl_En_Jc_Mato/z_en_jc_mato.c b/src/overlays/actors/ovl_En_Jc_Mato/z_en_jc_mato.c index 9b7a6769e..3fee5e073 100644 --- a/src/overlays/actors/ovl_En_Jc_Mato/z_en_jc_mato.c +++ b/src/overlays/actors/ovl_En_Jc_Mato/z_en_jc_mato.c @@ -1,6 +1,6 @@ /* * File: z_en_jc_mato.c - * Overlay: ovl_en_jc_mato + * Overlay: ovl_En_Jc_Mato * Description: Boat Cruise Target */ diff --git a/src/overlays/actors/ovl_En_Jg/z_en_jg.c b/src/overlays/actors/ovl_En_Jg/z_en_jg.c index 1413eb43f..2f60ac685 100644 --- a/src/overlays/actors/ovl_En_Jg/z_en_jg.c +++ b/src/overlays/actors/ovl_En_Jg/z_en_jg.c @@ -9,7 +9,7 @@ void EnJg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnJg_Update(Actor* thisx, GlobalContext* globalCtx); void EnJg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Jg_InitVars = { ACTOR_EN_JG, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Jg_InitVars = { (ActorFunc)EnJg_Update, (ActorFunc)EnJg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B75820 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 60, 80, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B7584C = { 0, 50, 80, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B75858 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_80B75820; +extern CollisionCheckInfoInit2 D_80B7584C; +extern DamageTable D_80B75858; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Jg_0x80B73A90/func_80B73A90.asm") diff --git a/src/overlays/actors/ovl_En_Jgame_Tsn/z_en_jgame_tsn.c b/src/overlays/actors/ovl_En_Jgame_Tsn/z_en_jgame_tsn.c index 510bb8060..75ce9ba5b 100644 --- a/src/overlays/actors/ovl_En_Jgame_Tsn/z_en_jgame_tsn.c +++ b/src/overlays/actors/ovl_En_Jgame_Tsn/z_en_jgame_tsn.c @@ -9,7 +9,7 @@ void EnJgameTsn_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnJgameTsn_Update(Actor* thisx, GlobalContext* globalCtx); void EnJgameTsn_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Jgame_Tsn_InitVars = { ACTOR_EN_JGAME_TSN, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Jgame_Tsn_InitVars = { (ActorFunc)EnJgameTsn_Update, (ActorFunc)EnJgameTsn_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C15078 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C15078; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Jgame_Tsn_0x80C13930/EnJgameTsn_Init.asm") diff --git a/src/overlays/actors/ovl_En_Js/z_en_js.c b/src/overlays/actors/ovl_En_Js/z_en_js.c index 93c807e18..6b617a7a1 100644 --- a/src/overlays/actors/ovl_En_Js/z_en_js.c +++ b/src/overlays/actors/ovl_En_Js/z_en_js.c @@ -9,7 +9,7 @@ void EnJs_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnJs_Update(Actor* thisx, GlobalContext* globalCtx); void EnJs_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Js_InitVars = { ACTOR_EN_JS, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Js_InitVars = { (ActorFunc)EnJs_Update, (ActorFunc)EnJs_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8096ABA0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_8096ABA0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Js_0x809687B0/EnJs_Init.asm") diff --git a/src/overlays/actors/ovl_En_Jso/z_en_jso.c b/src/overlays/actors/ovl_En_Jso/z_en_jso.c index 1934023f6..e6e899b12 100644 --- a/src/overlays/actors/ovl_En_Jso/z_en_jso.c +++ b/src/overlays/actors/ovl_En_Jso/z_en_jso.c @@ -8,7 +8,44 @@ void EnJso_Init(Actor* thisx, GlobalContext* globalCtx); void EnJso_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnJso_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809B0F48 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit En_Jso_InitVars = { ACTOR_EN_JSO, ACTORCAT_ENEMY, @@ -20,7 +57,28 @@ const ActorInit En_Jso_InitVars = { (ActorFunc)EnJso_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809B0F88 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x08, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 22, 55, 0, { 0, 0, 0 } }, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_809B0FB4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +extern DamageTable D_809B0F48; +extern ColliderCylinderInit D_809B0F88; +extern ColliderQuadInit D_809B0FB4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Jso_0x809AD8E0/EnJso_Init.asm") diff --git a/src/overlays/actors/ovl_En_Jso2/z_en_jso2.c b/src/overlays/actors/ovl_En_Jso2/z_en_jso2.c index 66535c0c7..59e09619f 100644 --- a/src/overlays/actors/ovl_En_Jso2/z_en_jso2.c +++ b/src/overlays/actors/ovl_En_Jso2/z_en_jso2.c @@ -9,7 +9,44 @@ void EnJso2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnJso2_Update(Actor* thisx, GlobalContext* globalCtx); void EnJso2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80A7B4F0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit En_Jso2_InitVars = { ACTOR_EN_JSO2, ACTORCAT_ENEMY, @@ -21,7 +58,28 @@ const ActorInit En_Jso2_InitVars = { (ActorFunc)EnJso2_Update, (ActorFunc)EnJso2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A7B608 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x08, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 22, 70, 0, { 0, 0, 0 } }, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80A7B634 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x09, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +extern DamageTable D_80A7B4F0; +extern ColliderCylinderInit D_80A7B608; +extern ColliderQuadInit D_80A7B634; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Jso2_0x80A773C0/EnJso2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kaizoku/z_en_kaizoku.c b/src/overlays/actors/ovl_En_Kaizoku/z_en_kaizoku.c index 16b9706b6..4b15414bd 100644 --- a/src/overlays/actors/ovl_En_Kaizoku/z_en_kaizoku.c +++ b/src/overlays/actors/ovl_En_Kaizoku/z_en_kaizoku.c @@ -8,7 +8,44 @@ void EnKaizoku_Init(Actor* thisx, GlobalContext* globalCtx); void EnKaizoku_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKaizoku_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80B8AB3C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0x1), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(1, 0xE), + /* Sword */ DMG_ENTRY(1, 0xE), + /* Goron pound */ DMG_ENTRY(0, 0xD), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xE), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xE), + /* Deku launch */ DMG_ENTRY(2, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xE), + /* Zora punch */ DMG_ENTRY(1, 0xE), + /* Spin attack */ DMG_ENTRY(1, 0xD), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xE), +}; + + const ActorInit En_Kaizoku_InitVars = { ACTOR_EN_KAIZOKU, ACTORCAT_ENEMY, @@ -20,7 +57,28 @@ const ActorInit En_Kaizoku_InitVars = { (ActorFunc)EnKaizoku_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B8AB7C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 50, 0, { 0, 0, 0 } }, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80B8ABA8 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK4, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +extern DamageTable D_80B8AB3C; +extern ColliderCylinderInit D_80B8AB7C; +extern ColliderQuadInit D_80B8ABA8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kaizoku_0x80B85590/EnKaizoku_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c b/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c index c6066bb5e..6681e8994 100644 --- a/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c +++ b/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c @@ -9,7 +9,15 @@ void EnKakasi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKakasi_Update(Actor* thisx, GlobalContext* globalCtx); void EnKakasi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80971D80 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 70, 0, { 0, 0, 0 } }, +}; + + const ActorInit En_Kakasi_InitVars = { ACTOR_EN_KAKASI, ACTORCAT_NPC, @@ -21,7 +29,10 @@ const ActorInit En_Kakasi_InitVars = { (ActorFunc)EnKakasi_Update, (ActorFunc)EnKakasi_Draw, }; -*/ + + +extern ColliderCylinderInit D_80971D80; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kakasi_0x8096F5E0/EnKakasi_Destroy.asm") diff --git a/src/overlays/actors/ovl_En_Kame/z_en_kame.c b/src/overlays/actors/ovl_En_Kame/z_en_kame.c index 88e85baa9..08266b25d 100644 --- a/src/overlays/actors/ovl_En_Kame/z_en_kame.c +++ b/src/overlays/actors/ovl_En_Kame/z_en_kame.c @@ -9,7 +9,7 @@ void EnKame_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKame_Update(Actor* thisx, GlobalContext* globalCtx); void EnKame_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kame_InitVars = { ACTOR_EN_KAME, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Kame_InitVars = { (ActorFunc)EnKame_Update, (ActorFunc)EnKame_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AD8DE0 = { + { COLTYPE_HARD, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CF7FFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 35, 40, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80AD8E0C = { 3, 15, 30, 80 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80AD8E14 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xD), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0xE), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AD8E44[] = { + ICHAIN_S8(hintId, 1, ICHAIN_CONTINUE), + ICHAIN_F32(gravity, -1, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 3500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AD8DE0; +extern CollisionCheckInfoInit D_80AD8E0C; +extern DamageTable D_80AD8E14; +extern InitChainEntry D_80AD8E44[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kame_0x80AD6DD0/EnKame_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c b/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c index 3f8881547..2f70297c3 100644 --- a/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c +++ b/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c @@ -9,7 +9,7 @@ void EnKanban_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKanban_Update(Actor* thisx, GlobalContext* globalCtx); void EnKanban_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kanban_InitVars = { ACTOR_EN_KANBAN, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Kanban_InitVars = { (ActorFunc)EnKanban_Update, (ActorFunc)EnKanban_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80957300 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF3CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 50, 5, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80957300; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kanban_0x80954960/func_80954960.asm") diff --git a/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c b/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c index 8212f8067..81966a1b4 100644 --- a/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c +++ b/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c @@ -9,7 +9,7 @@ void EnKarebaba_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKarebaba_Update(Actor* thisx, GlobalContext* globalCtx); void EnKarebaba_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Karebaba_InitVars = { ACTOR_EN_KAREBABA, ACTORCAT_ENEMY, @@ -21,7 +21,78 @@ const ActorInit En_Karebaba_InitVars = { (ActorFunc)EnKarebaba_Update, (ActorFunc)EnKarebaba_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808F2DA0 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 7, 25, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808F2DCC = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_WOOD, BUMP_NONE, OCELEM_ON, }, + { 4, 25, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808F2DF8 = { 1, 15, 80, MASS_HEAVY }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808F2E00 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(3, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808F2E20[] = { + ICHAIN_F32(targetArrowOffset, 2500, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 1, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808F2DA0; +extern ColliderCylinderInit D_808F2DCC; +extern CollisionCheckInfoInit D_808F2DF8; +extern DamageTable D_808F2E00; +extern InitChainEntry D_808F2E20[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Karebaba_0x808F1200/EnKarebaba_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kbt/z_en_kbt.c b/src/overlays/actors/ovl_En_Kbt/z_en_kbt.c index f3f4f01d8..5635fd8ac 100644 --- a/src/overlays/actors/ovl_En_Kbt/z_en_kbt.c +++ b/src/overlays/actors/ovl_En_Kbt/z_en_kbt.c @@ -9,7 +9,7 @@ void EnKbt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKbt_Update(Actor* thisx, GlobalContext* globalCtx); void EnKbt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kbt_InitVars = { ACTOR_EN_KBT, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Kbt_InitVars = { (ActorFunc)EnKbt_Update, (ActorFunc)EnKbt_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kbt_0x80B33D30/EnKbt_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c b/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c index e134fb999..448a2e9ab 100644 --- a/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c +++ b/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c @@ -9,7 +9,7 @@ void EnKendoJs_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKendoJs_Update(Actor* thisx, GlobalContext* globalCtx); void EnKendoJs_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kendo_Js_InitVars = { ACTOR_EN_KENDO_JS, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Kendo_Js_InitVars = { (ActorFunc)EnKendoJs_Update, (ActorFunc)EnKendoJs_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B27C30 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 18, 30, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B27C5C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80B27C30; +extern CollisionCheckInfoInit2 D_80B27C5C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kendo_Js_0x80B262A0/EnKendoJs_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c b/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c index f1dadc955..c12023e80 100644 --- a/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c +++ b/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c @@ -9,7 +9,7 @@ void EnKgy_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKgy_Update(Actor* thisx, GlobalContext* globalCtx); void EnKgy_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kgy_InitVars = { ACTOR_EN_KGY, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Kgy_InitVars = { (ActorFunc)EnKgy_Update, (ActorFunc)EnKgy_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kgy_0x80B40800/EnKgy_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kitan/z_en_kitan.c b/src/overlays/actors/ovl_En_Kitan/z_en_kitan.c index abf48ed7a..9f809479c 100644 --- a/src/overlays/actors/ovl_En_Kitan/z_en_kitan.c +++ b/src/overlays/actors/ovl_En_Kitan/z_en_kitan.c @@ -8,7 +8,7 @@ void EnKitan_Init(Actor* thisx, GlobalContext* globalCtx); void EnKitan_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKitan_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kitan_InitVars = { ACTOR_EN_KITAN, ACTORCAT_NPC, @@ -20,7 +20,18 @@ const ActorInit En_Kitan_InitVars = { (ActorFunc)EnKitan_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C09D50 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C09D50; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kitan_0x80C090D0/EnKitan_Init.asm") diff --git a/src/overlays/actors/ovl_En_Knight/z_en_knight.c b/src/overlays/actors/ovl_En_Knight/z_en_knight.c index 87b3d06b9..64b3a352f 100644 --- a/src/overlays/actors/ovl_En_Knight/z_en_knight.c +++ b/src/overlays/actors/ovl_En_Knight/z_en_knight.c @@ -9,7 +9,161 @@ void EnKnight_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKnight_Update(Actor* thisx, GlobalContext* globalCtx); void EnKnight_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_809BDB04 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0x1), + /* Normal arrow */ DMG_ENTRY(3, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xD), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(2, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xA), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xE), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_809BDB24 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(3, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(2, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xA), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(1, 0xD), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809BDB44[1] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 27 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809BDB8C = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809BDB44, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809BDB68[1] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 32 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809BDB9C = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809BDB68, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809BDBAC[1] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 27 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809BDBD0 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809BDBAC, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_809BDBE0[2] = { + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7EFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7EFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 17 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809BDC28 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_809BDBE0, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809BDC38 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 15, 20, -10, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809BDC64 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ALL, AC_ON | AC_TYPE_PLAYER | AC_TYPE_ENEMY | AC_TYPE_OTHER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + const ActorInit En_Knight_InitVars = { ACTOR_EN_KNIGHT, ACTORCAT_BOSS, @@ -21,7 +175,21 @@ const ActorInit En_Knight_InitVars = { (ActorFunc)EnKnight_Update, (ActorFunc)EnKnight_Draw, }; -*/ + + +extern DamageTable D_809BDB04; +extern DamageTable D_809BDB24; +extern ColliderJntSphElementInit D_809BDB44[1]; +extern ColliderJntSphInit D_809BDB8C; +extern ColliderJntSphElementInit D_809BDB68[1]; +extern ColliderJntSphInit D_809BDB9C; +extern ColliderJntSphElementInit D_809BDBAC[1]; +extern ColliderJntSphInit D_809BDBD0; +extern ColliderJntSphElementInit D_809BDBE0[2]; +extern ColliderJntSphInit D_809BDC28; +extern ColliderCylinderInit D_809BDC38; +extern ColliderCylinderInit D_809BDC64; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Knight_0x809B20F0/func_809B20F0.asm") diff --git a/src/overlays/actors/ovl_En_Kujiya/z_en_kujiya.c b/src/overlays/actors/ovl_En_Kujiya/z_en_kujiya.c index 0d0cef49a..e0615854a 100644 --- a/src/overlays/actors/ovl_En_Kujiya/z_en_kujiya.c +++ b/src/overlays/actors/ovl_En_Kujiya/z_en_kujiya.c @@ -9,7 +9,7 @@ void EnKujiya_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKujiya_Update(Actor* thisx, GlobalContext* globalCtx); void EnKujiya_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kujiya_InitVars = { ACTOR_EN_KUJIYA, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Kujiya_InitVars = { (ActorFunc)EnKujiya_Update, (ActorFunc)EnKujiya_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kujiya_0x80BB08E0/EnKujiya_Init.asm") diff --git a/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c b/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c index 35f8c79f1..87e70f298 100644 --- a/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c +++ b/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c @@ -8,7 +8,7 @@ void EnKusa_Init(Actor* thisx, GlobalContext* globalCtx); void EnKusa_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKusa_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kusa_InitVars = { ACTOR_EN_KUSA, ACTORCAT_PROP, @@ -20,7 +20,35 @@ const ActorInit En_Kusa_InitVars = { (ActorFunc)EnKusa_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809366E0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_2, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x0580C71C, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 6, 44, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8093670C = { 0, 12, 30, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80936754[] = { + ICHAIN_VEC3F_DIV1000(scale, 400, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -3200, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -17000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_809366E0; +extern CollisionCheckInfoInit D_8093670C; +extern InitChainEntry D_80936754[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kusa_0x809349E0/func_809349E0.asm") diff --git a/src/overlays/actors/ovl_En_Kusa2/z_en_kusa2.c b/src/overlays/actors/ovl_En_Kusa2/z_en_kusa2.c index f581c7861..e3fa211ad 100644 --- a/src/overlays/actors/ovl_En_Kusa2/z_en_kusa2.c +++ b/src/overlays/actors/ovl_En_Kusa2/z_en_kusa2.c @@ -9,7 +9,7 @@ void EnKusa2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnKusa2_Update(Actor* thisx, GlobalContext* globalCtx); void EnKusa2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Kusa2_InitVars = { ACTOR_EN_KUSA2, ACTORCAT_PROP, @@ -21,7 +21,30 @@ const ActorInit En_Kusa2_InitVars = { (ActorFunc)EnKusa2_Update, (ActorFunc)EnKusa2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A5EAC0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_2, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x0580C71C, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, 44, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A5EB50[] = { + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -17000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A5EAC0; +extern InitChainEntry D_80A5EB50[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Kusa2_0x80A5B160/func_80A5B160.asm") diff --git a/src/overlays/actors/ovl_En_Lift_Nuts/z_en_lift_nuts.c b/src/overlays/actors/ovl_En_Lift_Nuts/z_en_lift_nuts.c index 252b5e1d1..462a0923a 100644 --- a/src/overlays/actors/ovl_En_Lift_Nuts/z_en_lift_nuts.c +++ b/src/overlays/actors/ovl_En_Lift_Nuts/z_en_lift_nuts.c @@ -9,7 +9,7 @@ void EnLiftNuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnLiftNuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnLiftNuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Lift_Nuts_InitVars = { ACTOR_EN_LIFT_NUTS, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Lift_Nuts_InitVars = { (ActorFunc)EnLiftNuts_Update, (ActorFunc)EnLiftNuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AEBF28 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 25, 75, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80AEBF54 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80AEBF28; +extern CollisionCheckInfoInit2 D_80AEBF54; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Lift_Nuts_0x80AE9A20/func_80AE9A20.asm") diff --git a/src/overlays/actors/ovl_En_Light/z_en_light.c b/src/overlays/actors/ovl_En_Light/z_en_light.c index f1cd3dad7..f19b37fe7 100644 --- a/src/overlays/actors/ovl_En_Light/z_en_light.c +++ b/src/overlays/actors/ovl_En_Light/z_en_light.c @@ -9,7 +9,7 @@ void EnLight_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnLight_Update(Actor* thisx, GlobalContext* globalCtx); void EnLight_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Light_InitVars = { ACTOR_EN_LIGHT, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Light_InitVars = { (ActorFunc)EnLight_Update, (ActorFunc)EnLight_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Light_0x80865990/EnLight_Init.asm") diff --git a/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c b/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c index ec40f7286..09be84c04 100644 --- a/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c +++ b/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c @@ -9,7 +9,7 @@ void EnLookNuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnLookNuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnLookNuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Look_Nuts_InitVars = { ACTOR_EN_LOOK_NUTS, ACTORCAT_NPC, @@ -21,7 +21,56 @@ const ActorInit En_Look_Nuts_InitVars = { (ActorFunc)EnLookNuts_Update, (ActorFunc)EnLookNuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A68600 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 20, 50, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A68630 = { + /* Deku Nut */ DMG_ENTRY(1, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(1, 0xF), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0xF), + /* Hookshot */ DMG_ENTRY(1, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0xF), + /* Ice arrow */ DMG_ENTRY(1, 0xF), + /* Light arrow */ DMG_ENTRY(1, 0xF), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0xF), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(1, 0xF), + /* Normal Roll */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0xF), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0xF), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +extern ColliderCylinderInit D_80A68600; +extern DamageTable D_80A68630; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Look_Nuts_0x80A678B0/EnLookNuts_Init.asm") diff --git a/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c b/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c index d4d000088..820af7778 100644 --- a/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c +++ b/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c @@ -9,7 +9,7 @@ void EnMThunder_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMThunder_Update(Actor* thisx, GlobalContext* globalCtx); void EnMThunder_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_M_Thunder_InitVars = { ACTOR_EN_M_THUNDER, ACTORCAT_ITEMACTION, @@ -21,7 +21,18 @@ const ActorInit En_M_Thunder_InitVars = { (ActorFunc)EnMThunder_Update, (ActorFunc)EnMThunder_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808B7120 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x01000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 200, 200, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_808B7120; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_M_Thunder_0x808B53C0/func_808B53C0.asm") diff --git a/src/overlays/actors/ovl_En_Ma4/z_en_ma4.c b/src/overlays/actors/ovl_En_Ma4/z_en_ma4.c index 872cc7551..be4eaf75d 100644 --- a/src/overlays/actors/ovl_En_Ma4/z_en_ma4.c +++ b/src/overlays/actors/ovl_En_Ma4/z_en_ma4.c @@ -1,7 +1,7 @@ /* * File: z_en_ma4.c * Overlay: ovl_En_Ma4 - * Description: Romani. + * Description: Romani */ #include "z_en_ma4.h" diff --git a/src/overlays/actors/ovl_En_Ma_Yts/z_en_ma_yts.c b/src/overlays/actors/ovl_En_Ma_Yts/z_en_ma_yts.c index 5588db382..76ad7447c 100644 --- a/src/overlays/actors/ovl_En_Ma_Yts/z_en_ma_yts.c +++ b/src/overlays/actors/ovl_En_Ma_Yts/z_en_ma_yts.c @@ -1,7 +1,7 @@ /* * File: z_en_ma_yts.c * Overlay: ovl_En_Ma_Yts - * Description: Romani. As oposed as EnMa4, this actor is used in conjunction of another actor, like EnMaYto. + * Description: Romani. As opposed as EnMa4, this actor is used in conjunction with another actor, like EnMaYto. */ #include "z_en_ma_yts.h" diff --git a/src/overlays/actors/ovl_En_Mag/z_en_mag.c b/src/overlays/actors/ovl_En_Mag/z_en_mag.c index 571e75aa0..671f4c931 100644 --- a/src/overlays/actors/ovl_En_Mag/z_en_mag.c +++ b/src/overlays/actors/ovl_En_Mag/z_en_mag.c @@ -9,7 +9,7 @@ void EnMag_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMag_Update(Actor* thisx, GlobalContext* globalCtx); void EnMag_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mag_InitVars = { ACTOR_EN_MAG, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit En_Mag_InitVars = { (ActorFunc)EnMag_Update, (ActorFunc)EnMag_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mag_0x8096B310/EnMag_Init.asm") diff --git a/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c b/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c index 796a6afb6..c46f41fef 100644 --- a/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c +++ b/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c @@ -9,7 +9,7 @@ void EnMaruta_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMaruta_Update(Actor* thisx, GlobalContext* globalCtx); void EnMaruta_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Maruta_InitVars = { ACTOR_EN_MARUTA, ACTORCAT_PROP, @@ -21,7 +21,61 @@ const ActorInit En_Maruta_InitVars = { (ActorFunc)EnMaruta_Update, (ActorFunc)EnMaruta_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B38AFC = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 12, 65, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B38B28 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B38B48 = { 8, 0, 0, 0, MASS_HEAVY }; + + +extern ColliderCylinderInit D_80B38AFC; +extern DamageTable D_80B38B28; +extern CollisionCheckInfoInit2 D_80B38B48; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Maruta_0x80B37080/EnMaruta_Init.asm") diff --git a/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c b/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c index 8b4d3f50a..b75950063 100644 --- a/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c +++ b/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c @@ -8,7 +8,7 @@ void EnMinideath_Init(Actor* thisx, GlobalContext* globalCtx); void EnMinideath_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMinideath_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Minideath_InitVars = { ACTOR_EN_MINIDEATH, ACTORCAT_ENEMY, @@ -20,7 +20,85 @@ const ActorInit En_Minideath_InitVars = { (ActorFunc)EnMinideath_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[3] = { +static ColliderJntSphElementInit D_808CBF50[3] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808CBFBC = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 3, D_808CBF50, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808CBFCC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808CBFEC = { 1, 15, 30, 10 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808CBFF4[] = { + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_808CBF50[3]; +extern ColliderJntSphInit D_808CBFBC; +extern DamageTable D_808CBFCC; +extern CollisionCheckInfoInit D_808CBFEC; +extern InitChainEntry D_808CBFF4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Minideath_0x808CA0B0/EnMinideath_Init.asm") diff --git a/src/overlays/actors/ovl_En_Minislime/z_en_minislime.c b/src/overlays/actors/ovl_En_Minislime/z_en_minislime.c index d19c26e74..f81003796 100644 --- a/src/overlays/actors/ovl_En_Minislime/z_en_minislime.c +++ b/src/overlays/actors/ovl_En_Minislime/z_en_minislime.c @@ -8,7 +8,7 @@ void EnMinislime_Init(Actor* thisx, GlobalContext* globalCtx); void EnMinislime_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMinislime_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Minislime_InitVars = { ACTOR_EN_MINISLIME, ACTORCAT_BOSS, @@ -20,7 +20,61 @@ const ActorInit En_Minislime_InitVars = { (ActorFunc)EnMinislime_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809857E0 = { + { COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_NONE | AC_TYPE_PLAYER, OC1_NONE | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 54, 60, -30, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8098580C = { 4, 40, 40, 30 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80985814 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +extern ColliderCylinderInit D_809857E0; +extern CollisionCheckInfoInit D_8098580C; +extern DamageTable D_80985814; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Minislime_0x809838F0/EnMinislime_Init.asm") diff --git a/src/overlays/actors/ovl_En_Mk/z_en_mk.c b/src/overlays/actors/ovl_En_Mk/z_en_mk.c index f8664c86c..8605b625f 100644 --- a/src/overlays/actors/ovl_En_Mk/z_en_mk.c +++ b/src/overlays/actors/ovl_En_Mk/z_en_mk.c @@ -9,7 +9,7 @@ void EnMk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMk_Update(Actor* thisx, GlobalContext* globalCtx); void EnMk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mk_InitVars = { ACTOR_EN_MK, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Mk_InitVars = { (ActorFunc)EnMk_Update, (ActorFunc)EnMk_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8095A260 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_8095A260; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mk_0x809592E0/func_809592E0.asm") diff --git a/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c b/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c index 9a3688d98..e6425a39b 100644 --- a/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c +++ b/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c @@ -9,7 +9,7 @@ void EnMkk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMkk_Update(Actor* thisx, GlobalContext* globalCtx); void EnMkk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mkk_InitVars = { ACTOR_EN_MKK, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Mkk_InitVars = { (ActorFunc)EnMkk_Update, (ActorFunc)EnMkk_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80A4F720 = { + { COLTYPE_HIT3, AT_NONE | AT_TYPE_ENEMY, AC_NONE | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 15 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80A4F74C = { 1, 15, 30, 10 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A4F754 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A4F774[] = { + ICHAIN_F32_DIV1000(gravity, -500, ICHAIN_CONTINUE), + ICHAIN_F32(minVelocityY, -5, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 3000, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_80A4F720; +extern CollisionCheckInfoInit D_80A4F74C; +extern DamageTable D_80A4F754; +extern InitChainEntry D_80A4F774[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mkk_0x80A4DED0/EnMkk_Init.asm") diff --git a/src/overlays/actors/ovl_En_Mm/z_en_mm.c b/src/overlays/actors/ovl_En_Mm/z_en_mm.c index f185b8873..a69b357a8 100644 --- a/src/overlays/actors/ovl_En_Mm/z_en_mm.c +++ b/src/overlays/actors/ovl_En_Mm/z_en_mm.c @@ -9,7 +9,7 @@ void EnMm_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMm_Update(Actor* thisx, GlobalContext* globalCtx); void EnMm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mm_InitVars = { ACTOR_EN_MM, ACTORCAT_ITEMACTION, @@ -21,7 +21,26 @@ const ActorInit En_Mm_InitVars = { (ActorFunc)EnMm_Update, (ActorFunc)EnMm_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80966340 = { + { COLTYPE_METAL, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00100000, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 6, 30, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8096636C[] = { + ICHAIN_F32_DIV1000(gravity, -1200, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 270, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80966340; +extern InitChainEntry D_8096636C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mm_0x80965BB0/func_80965BB0.asm") diff --git a/src/overlays/actors/ovl_En_Mm2/z_en_mm2.c b/src/overlays/actors/ovl_En_Mm2/z_en_mm2.c index cc70389ab..48cddfe62 100644 --- a/src/overlays/actors/ovl_En_Mm2/z_en_mm2.c +++ b/src/overlays/actors/ovl_En_Mm2/z_en_mm2.c @@ -9,7 +9,7 @@ void EnMm2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMm2_Update(Actor* thisx, GlobalContext* globalCtx); void EnMm2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mm2_InitVars = { ACTOR_EN_MM2, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Mm2_InitVars = { (ActorFunc)EnMm2_Update, (ActorFunc)EnMm2_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mm2_0x809A2030/EnMm2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c b/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c index 8ab6d45f4..dd697146f 100644 --- a/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c +++ b/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c @@ -9,7 +9,7 @@ void EnMm3_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMm3_Update(Actor* thisx, GlobalContext* globalCtx); void EnMm3_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mm3_InitVars = { ACTOR_EN_MM3, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Mm3_InitVars = { (ActorFunc)EnMm3_Update, (ActorFunc)EnMm3_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A703F0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 63, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A7041C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80A703F0; +extern CollisionCheckInfoInit2 D_80A7041C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mm3_0x80A6F0A0/EnMm3_Init.asm") diff --git a/src/overlays/actors/ovl_En_Mnk/z_en_mnk.c b/src/overlays/actors/ovl_En_Mnk/z_en_mnk.c index c4f8de74b..28be26610 100644 --- a/src/overlays/actors/ovl_En_Mnk/z_en_mnk.c +++ b/src/overlays/actors/ovl_En_Mnk/z_en_mnk.c @@ -9,7 +9,7 @@ void EnMnk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMnk_Update(Actor* thisx, GlobalContext* globalCtx); void EnMnk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mnk_InitVars = { ACTOR_EN_MNK, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Mnk_InitVars = { (ActorFunc)EnMnk_Update, (ActorFunc)EnMnk_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AB9D10 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01000200, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 15, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80AB9D10; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mnk_0x80AB4D10/func_80AB4D10.asm") diff --git a/src/overlays/actors/ovl_En_Ms/z_en_ms.c b/src/overlays/actors/ovl_En_Ms/z_en_ms.c index f68a605a1..7fa7a0324 100644 --- a/src/overlays/actors/ovl_En_Ms/z_en_ms.c +++ b/src/overlays/actors/ovl_En_Ms/z_en_ms.c @@ -9,7 +9,7 @@ void EnMs_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMs_Update(Actor* thisx, GlobalContext* globalCtx); void EnMs_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ms_InitVars = { ACTOR_EN_MS, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Ms_InitVars = { (ActorFunc)EnMs_Update, (ActorFunc)EnMs_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80952BA0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 22, 37, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80952BCC[] = { + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80952BA0; +extern InitChainEntry D_80952BCC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ms_0x80952620/EnMs_Init.asm") diff --git a/src/overlays/actors/ovl_En_Mt_tag/z_en_mt_tag.c b/src/overlays/actors/ovl_En_Mt_tag/z_en_mt_tag.c index bcd9d78aa..86a338ecc 100644 --- a/src/overlays/actors/ovl_En_Mt_tag/z_en_mt_tag.c +++ b/src/overlays/actors/ovl_En_Mt_tag/z_en_mt_tag.c @@ -8,7 +8,7 @@ void EnMttag_Init(Actor* thisx, GlobalContext* globalCtx); void EnMttag_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMttag_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mt_tag_InitVars = { ACTOR_EN_MT_TAG, ACTORCAT_BG, @@ -20,7 +20,8 @@ const ActorInit En_Mt_tag_InitVars = { (ActorFunc)EnMttag_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mt_tag_0x809CF350/func_809CF350.asm") diff --git a/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c b/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c index 238baa6f2..f0b901d40 100644 --- a/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c +++ b/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c @@ -9,7 +9,7 @@ void EnMushi2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMushi2_Update(Actor* thisx, GlobalContext* globalCtx); void EnMushi2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Mushi2_InitVars = { ACTOR_EN_MUSHI2, ACTORCAT_ITEMACTION, @@ -21,7 +21,36 @@ const ActorInit En_Mushi2_InitVars = { (ActorFunc)EnMushi2_Update, (ActorFunc)EnMushi2_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A6B950[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 5 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A6B974 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A6B950, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A6BA04[] = { + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 700, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 20, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 20, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80A6B950[1]; +extern ColliderJntSphInit D_80A6B974; +extern InitChainEntry D_80A6BA04[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Mushi2_0x80A687A0/func_80A687A0.asm") diff --git a/src/overlays/actors/ovl_En_Muto/z_en_muto.c b/src/overlays/actors/ovl_En_Muto/z_en_muto.c index dc404cf9d..80d29f681 100644 --- a/src/overlays/actors/ovl_En_Muto/z_en_muto.c +++ b/src/overlays/actors/ovl_En_Muto/z_en_muto.c @@ -9,7 +9,7 @@ void EnMuto_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnMuto_Update(Actor* thisx, GlobalContext* globalCtx); void EnMuto_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Muto_InitVars = { ACTOR_EN_MUTO, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Muto_InitVars = { (ActorFunc)EnMuto_Update, (ActorFunc)EnMuto_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE841C = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE841C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Muto_0x80BE7B00/EnMuto_Init.asm") diff --git a/src/overlays/actors/ovl_En_Nb/z_en_nb.c b/src/overlays/actors/ovl_En_Nb/z_en_nb.c index ed37a1c4d..99c21ff4c 100644 --- a/src/overlays/actors/ovl_En_Nb/z_en_nb.c +++ b/src/overlays/actors/ovl_En_Nb/z_en_nb.c @@ -9,7 +9,7 @@ void EnNb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnNb_Update(Actor* thisx, GlobalContext* globalCtx); void EnNb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Nb_InitVars = { ACTOR_EN_NB, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Nb_InitVars = { (ActorFunc)EnNb_Update, (ActorFunc)EnNb_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BC15F0 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 68, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BC161C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BC15F0; +extern CollisionCheckInfoInit2 D_80BC161C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Nb_0x80BBFDB0/func_80BBFDB0.asm") diff --git a/src/overlays/actors/ovl_En_Neo_Reeba/z_en_neo_reeba.c b/src/overlays/actors/ovl_En_Neo_Reeba/z_en_neo_reeba.c index 23de44aa6..19364cd9a 100644 --- a/src/overlays/actors/ovl_En_Neo_Reeba/z_en_neo_reeba.c +++ b/src/overlays/actors/ovl_En_Neo_Reeba/z_en_neo_reeba.c @@ -9,7 +9,7 @@ void EnNeoReeba_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnNeoReeba_Update(Actor* thisx, GlobalContext* globalCtx); void EnNeoReeba_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Neo_Reeba_InitVars = { ACTOR_EN_NEO_REEBA, ACTORCAT_ENEMY, @@ -21,7 +21,56 @@ const ActorInit En_Neo_Reeba_InitVars = { (ActorFunc)EnNeoReeba_Update, (ActorFunc)EnNeoReeba_Draw, }; -*/ + + +// static DamageTable sDamageTable = { +static DamageTable D_80B7E500 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0xE), + /* Horse trample */ DMG_ENTRY(1, 0xF), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xE), + /* Normal arrow */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0xC), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xE), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xD), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B7E520 = { + { COLTYPE_HIT5, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x08, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 18, 30, 0, { 0, 0, 0 } }, +}; + + +extern DamageTable D_80B7E500; +extern ColliderCylinderInit D_80B7E520; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Neo_Reeba_0x80B7C890/EnNeoReeba_Init.asm") diff --git a/src/overlays/actors/ovl_En_Nimotsu/z_en_nimotsu.c b/src/overlays/actors/ovl_En_Nimotsu/z_en_nimotsu.c index 20a3408e2..726290b94 100644 --- a/src/overlays/actors/ovl_En_Nimotsu/z_en_nimotsu.c +++ b/src/overlays/actors/ovl_En_Nimotsu/z_en_nimotsu.c @@ -9,7 +9,7 @@ void EnNimotsu_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnNimotsu_Update(Actor* thisx, GlobalContext* globalCtx); void EnNimotsu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Nimotsu_InitVars = { ACTOR_EN_NIMOTSU, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Nimotsu_InitVars = { (ActorFunc)EnNimotsu_Update, (ActorFunc)EnNimotsu_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE1FB0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE1FB0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Nimotsu_0x80BE1C80/func_80BE1C80.asm") diff --git a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c index 6b3d84ebe..e51ac45d2 100644 --- a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c +++ b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c @@ -9,7 +9,7 @@ void EnNwc_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnNwc_Update(Actor* thisx, GlobalContext* globalCtx); void EnNwc_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Nwc_InitVars = { ACTOR_EN_NWC, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit En_Nwc_InitVars = { (ActorFunc)EnNwc_Update, (ActorFunc)EnNwc_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Nwc_0x809441E0/EnNwc_Init.asm") diff --git a/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag.c b/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag.c index 2114f4009..51747fedc 100644 --- a/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag.c +++ b/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag.c @@ -8,7 +8,7 @@ void EnOkarinaTag_Init(Actor* thisx, GlobalContext* globalCtx); void EnOkarinaTag_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOkarinaTag_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Okarina_Tag_InitVars = { ACTOR_EN_OKARINA_TAG, ACTORCAT_SWITCH, @@ -20,7 +20,8 @@ const ActorInit En_Okarina_Tag_InitVars = { (ActorFunc)EnOkarinaTag_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Okarina_Tag_0x8093E420/EnOkarinaTag_Destroy.asm") diff --git a/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c b/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c index 79ee8c90f..4475e5ea5 100644 --- a/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c +++ b/src/overlays/actors/ovl_En_Okuta/z_en_okuta.c @@ -9,7 +9,7 @@ void EnOkuta_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOkuta_Update(Actor* thisx, GlobalContext* globalCtx); void EnOkuta_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Okuta_InitVars = { ACTOR_EN_OKUTA, ACTORCAT_ENEMY, @@ -21,7 +21,78 @@ const ActorInit En_Okuta_InitVars = { (ActorFunc)EnOkuta_Update, (ActorFunc)EnOkuta_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808708A0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 13, 20, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808708CC = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 20, 40, -30, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808708F8 = { 4, 15, 60, 100 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80870900 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80870920[] = { + ICHAIN_S8(hintId, 66, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 6500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808708A0; +extern ColliderCylinderInit D_808708CC; +extern CollisionCheckInfoInit D_808708F8; +extern DamageTable D_80870900; +extern InitChainEntry D_80870920[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Okuta_0x8086DE20/EnOkuta_Init.asm") diff --git a/src/overlays/actors/ovl_En_Onpuman/z_en_onpuman.c b/src/overlays/actors/ovl_En_Onpuman/z_en_onpuman.c index 80c6a7b23..c1406000d 100644 --- a/src/overlays/actors/ovl_En_Onpuman/z_en_onpuman.c +++ b/src/overlays/actors/ovl_En_Onpuman/z_en_onpuman.c @@ -8,7 +8,7 @@ void EnOnpuman_Init(Actor* thisx, GlobalContext* globalCtx); void EnOnpuman_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOnpuman_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Onpuman_InitVars = { ACTOR_EN_ONPUMAN, ACTORCAT_NPC, @@ -20,7 +20,18 @@ const ActorInit En_Onpuman_InitVars = { (ActorFunc)EnOnpuman_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B12390 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80B12390; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Onpuman_0x80B11E60/EnOnpuman_Init.asm") diff --git a/src/overlays/actors/ovl_En_Osk/z_en_osk.c b/src/overlays/actors/ovl_En_Osk/z_en_osk.c index ff6ed587f..4186e4f4d 100644 --- a/src/overlays/actors/ovl_En_Osk/z_en_osk.c +++ b/src/overlays/actors/ovl_En_Osk/z_en_osk.c @@ -9,7 +9,7 @@ void EnOsk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOsk_Update(Actor* thisx, GlobalContext* globalCtx); void EnOsk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Osk_InitVars = { ACTOR_EN_OSK, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Osk_InitVars = { (ActorFunc)EnOsk_Update, (ActorFunc)EnOsk_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Osk_0x80BF5C20/EnOsk_Init.asm") diff --git a/src/overlays/actors/ovl_En_Osn/z_en_osn.c b/src/overlays/actors/ovl_En_Osn/z_en_osn.c index 6a7f17af1..640ec7230 100644 --- a/src/overlays/actors/ovl_En_Osn/z_en_osn.c +++ b/src/overlays/actors/ovl_En_Osn/z_en_osn.c @@ -9,7 +9,7 @@ void EnOsn_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOsn_Update(Actor* thisx, GlobalContext* globalCtx); void EnOsn_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Osn_InitVars = { ACTOR_EN_OSN, ACTORCAT_NPC, @@ -21,7 +21,68 @@ const ActorInit En_Osn_InitVars = { (ActorFunc)EnOsn_Update, (ActorFunc)EnOsn_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AD2518 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80AD2544 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80AD2550 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AD2570[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AD2518; +extern CollisionCheckInfoInit2 D_80AD2544; +extern DamageTable D_80AD2550; +extern InitChainEntry D_80AD2570[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Osn_0x80AD0830/func_80AD0830.asm") diff --git a/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c b/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c index e5dbf946d..4471d0539 100644 --- a/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c +++ b/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c @@ -8,7 +8,7 @@ void EnOssan_Init(Actor* thisx, GlobalContext* globalCtx); void EnOssan_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOssan_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ossan_InitVars = { ACTOR_EN_OSSAN, ACTORCAT_NPC, @@ -20,7 +20,16 @@ const ActorInit En_Ossan_InitVars = { (ActorFunc)EnOssan_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808AC288[] = { + ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), +}; + + +extern InitChainEntry D_808AC288[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ossan_0x808A80A0/func_808A80A0.asm") diff --git a/src/overlays/actors/ovl_En_Ot/z_en_ot.c b/src/overlays/actors/ovl_En_Ot/z_en_ot.c index 7787014f7..158d983a8 100644 --- a/src/overlays/actors/ovl_En_Ot/z_en_ot.c +++ b/src/overlays/actors/ovl_En_Ot/z_en_ot.c @@ -9,7 +9,7 @@ void EnOt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOt_Update(Actor* thisx, GlobalContext* globalCtx); void EnOt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ot_InitVars = { ACTOR_EN_OT, ACTORCAT_NPC, @@ -21,7 +21,27 @@ const ActorInit En_Ot_InitVars = { (ActorFunc)EnOt_Update, (ActorFunc)EnOt_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B5E3A0 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 5, 33, -20, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B5E3FC[] = { + ICHAIN_F32(uncullZoneScale, 80, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 80, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B5E3A0; +extern InitChainEntry D_80B5E3FC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ot_0x80B5B2E0/func_80B5B2E0.asm") diff --git a/src/overlays/actors/ovl_En_Owl/z_en_owl.c b/src/overlays/actors/ovl_En_Owl/z_en_owl.c index 79886e2fd..21cd333be 100644 --- a/src/overlays/actors/ovl_En_Owl/z_en_owl.c +++ b/src/overlays/actors/ovl_En_Owl/z_en_owl.c @@ -9,7 +9,7 @@ void EnOwl_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnOwl_Update(Actor* thisx, GlobalContext* globalCtx); void EnOwl_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Owl_InitVars = { ACTOR_EN_OWL, ACTORCAT_NPC, @@ -21,7 +21,28 @@ const ActorInit En_Owl_InitVars = { (ActorFunc)EnOwl_Update, (ActorFunc)EnOwl_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8095D2F0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8095D31C[] = { + ICHAIN_VEC3F_DIV1000(scale, 25, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 2400, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8095D2F0; +extern InitChainEntry D_8095D31C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Owl_0x8095A510/func_8095A510.asm") diff --git a/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c b/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c index 23e4ba660..493137f39 100644 --- a/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c +++ b/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c @@ -9,7 +9,7 @@ void EnPamera_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPamera_Update(Actor* thisx, GlobalContext* globalCtx); void EnPamera_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Pamera_InitVars = { ACTOR_EN_PAMERA, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Pamera_InitVars = { (ActorFunc)EnPamera_Update, (ActorFunc)EnPamera_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BDA480 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 12, 46, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BDA4AC = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BDA480; +extern CollisionCheckInfoInit2 D_80BDA4AC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Pamera_0x80BD82B0/EnPamera_Init.asm") diff --git a/src/overlays/actors/ovl_En_Paper/z_en_paper.c b/src/overlays/actors/ovl_En_Paper/z_en_paper.c index 9f176e4bf..7da67c8b7 100644 --- a/src/overlays/actors/ovl_En_Paper/z_en_paper.c +++ b/src/overlays/actors/ovl_En_Paper/z_en_paper.c @@ -9,7 +9,7 @@ void EnPaper_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPaper_Update(Actor* thisx, GlobalContext* globalCtx); void EnPaper_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Paper_InitVars = { ACTOR_EN_PAPER, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Paper_InitVars = { (ActorFunc)EnPaper_Update, (ActorFunc)EnPaper_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Paper_0x80C1F3D0/EnPaper_Init.asm") diff --git a/src/overlays/actors/ovl_En_Part/z_en_part.c b/src/overlays/actors/ovl_En_Part/z_en_part.c index 584c9a0f7..bfef26f30 100644 --- a/src/overlays/actors/ovl_En_Part/z_en_part.c +++ b/src/overlays/actors/ovl_En_Part/z_en_part.c @@ -9,7 +9,7 @@ void EnPart_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPart_Update(Actor* thisx, GlobalContext* globalCtx); void EnPart_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Part_InitVars = { ACTOR_EN_PART, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Part_InitVars = { (ActorFunc)EnPart_Update, (ActorFunc)EnPart_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Part_0x80865370/EnPart_Init.asm") diff --git a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c index 52ab7d0fd..5452215de 100644 --- a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c +++ b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c @@ -9,7 +9,7 @@ void EnPeehat_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPeehat_Update(Actor* thisx, GlobalContext* globalCtx); void EnPeehat_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Peehat_InitVars = { ACTOR_EN_PEEHAT, ACTORCAT_ENEMY, @@ -21,7 +21,106 @@ const ActorInit En_Peehat_InitVars = { (ActorFunc)EnPeehat_Update, (ActorFunc)EnPeehat_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80899430 = { + { COLTYPE_WOOD, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 50, 120, -20, { 0, 0, 0 } }, +}; + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_8089945C = { + { COLTYPE_HIT6, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 40 }, 100 }, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_80899488[2] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80899500 = { + { COLTYPE_METAL, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_TRIS, }, + 2, D_80899488, // sTrisElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80899510 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80899530 = { 15, 50, 120, -20, MASS_HEAVY }; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8089953C = { 1, 20, 15, -5, 30 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80899548[] = { + ICHAIN_F32(uncullZoneForward, 4200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1800, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 700, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80899430; +extern ColliderSphereInit D_8089945C; +extern ColliderTrisElementInit D_80899488[2]; +extern ColliderTrisInit D_80899500; +extern DamageTable D_80899510; +extern CollisionCheckInfoInit2 D_80899530; +extern CollisionCheckInfoInit2 D_8089953C; +extern InitChainEntry D_80899548[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Peehat_0x80896F30/EnPeehat_Init.asm") diff --git a/src/overlays/actors/ovl_En_Pm/z_en_pm.c b/src/overlays/actors/ovl_En_Pm/z_en_pm.c index ebf9b2d56..cbae6b7c6 100644 --- a/src/overlays/actors/ovl_En_Pm/z_en_pm.c +++ b/src/overlays/actors/ovl_En_Pm/z_en_pm.c @@ -9,7 +9,7 @@ void EnPm_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPm_Update(Actor* thisx, GlobalContext* globalCtx); void EnPm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Pm_InitVars = { ACTOR_EN_PM, ACTORCAT_NPC, @@ -21,7 +21,32 @@ const ActorInit En_Pm_InitVars = { (ActorFunc)EnPm_Update, (ActorFunc)EnPm_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AFB790 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 14, 62, 0, { 0, 0, 0 } }, +}; + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80AFB7BC = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 26 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80AFB7E8 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80AFB790; +extern ColliderSphereInit D_80AFB7BC; +extern CollisionCheckInfoInit2 D_80AFB7E8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Pm_0x80AF7B40/func_80AF7B40.asm") diff --git a/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c b/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c index 5d7cf8f27..7890364f4 100644 --- a/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c +++ b/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c @@ -9,7 +9,7 @@ void EnPoComposer_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPoComposer_Update(Actor* thisx, GlobalContext* globalCtx); void EnPoComposer_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Po_Composer_InitVars = { ACTOR_EN_PO_COMPOSER, ACTORCAT_ITEMACTION, @@ -21,7 +21,85 @@ const ActorInit En_Po_Composer_InitVars = { (ActorFunc)EnPoComposer_Update, (ActorFunc)EnPoComposer_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BC6780 = { + { COLTYPE_HIT3, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 20, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80BC67AC[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 9, { { 0, -1500, 0 }, 10 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80BC67D0 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80BC67AC, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80BC67E0 = { 4, 25, 50, 40 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BC67E8 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(2, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(2, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x1), + /* Normal arrow */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0x0), + /* Hookshot */ DMG_ENTRY(2, 0x1), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(2, 0x0), + /* Goron pound */ DMG_ENTRY(4, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x0), + /* Goron spikes */ DMG_ENTRY(2, 0x0), + /* Deku spin */ DMG_ENTRY(2, 0x0), + /* Deku bubble */ DMG_ENTRY(2, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(4, 0x0), + /* Spin attack */ DMG_ENTRY(2, 0x0), + /* Sword beam */ DMG_ENTRY(2, 0x0), + /* Normal Roll */ DMG_ENTRY(8, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(4, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(4, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BC6958[] = { + ICHAIN_F32(targetArrowOffset, 3200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BC6780; +extern ColliderJntSphElementInit D_80BC67AC[1]; +extern ColliderJntSphInit D_80BC67D0; +extern CollisionCheckInfoInit D_80BC67E0; +extern DamageTable D_80BC67E8; +extern InitChainEntry D_80BC6958[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Po_Composer_0x80BC4F30/EnPoComposer_Init.asm") diff --git a/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c b/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c index e9b006c3e..09f4342b9 100644 --- a/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c +++ b/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c @@ -9,7 +9,7 @@ void EnPoSisters_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPoSisters_Update(Actor* thisx, GlobalContext* globalCtx); void EnPoSisters_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Po_Sisters_InitVars = { ACTOR_EN_PO_SISTERS, ACTORCAT_ENEMY, @@ -21,7 +21,69 @@ const ActorInit En_Po_Sisters_InitVars = { (ActorFunc)EnPoSisters_Update, (ActorFunc)EnPoSisters_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B1DA70 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CBFFFE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 18, 60, 15, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80B1DA9C = { 6, 25, 60, 50 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B1DAA4 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0xE), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B1DAC4[] = { + ICHAIN_VEC3F_DIV1000(scale, 7, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 6000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B1DA70; +extern CollisionCheckInfoInit D_80B1DA9C; +extern DamageTable D_80B1DAA4; +extern InitChainEntry D_80B1DAC4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Po_Sisters_0x80B1A3B0/EnPoSisters_Init.asm") diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.c b/src/overlays/actors/ovl_En_Poh/z_en_poh.c index da6d3f02f..3ee6a1203 100644 --- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c +++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c @@ -9,7 +9,7 @@ void EnPoh_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPoh_Update(Actor* thisx, GlobalContext* globalCtx); void EnPoh_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Poh_InitVars = { ACTOR_EN_POH, ACTORCAT_ENEMY, @@ -21,7 +21,86 @@ const ActorInit En_Poh_InitVars = { (ActorFunc)EnPoh_Update, (ActorFunc)EnPoh_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B2F680 = { + { COLTYPE_HIT3, AT_NONE, AC_NONE | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CBFFFE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 40, 20, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80B2F6AC[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 18, { { 0, 1400, 0 }, 10 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B2F6D0 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80B2F6AC, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B2F6E0 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80B2F700 = { 3, 25, 50, 50 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B2F708[] = { + ICHAIN_S8(hintId, 68, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 3200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B2F680; +extern ColliderJntSphElementInit D_80B2F6AC[1]; +extern ColliderJntSphInit D_80B2F6D0; +extern DamageTable D_80B2F6E0; +extern CollisionCheckInfoInit D_80B2F700; +extern InitChainEntry D_80B2F708[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Poh_0x80B2C6F0/EnPoh_Init.asm") diff --git a/src/overlays/actors/ovl_En_Pp/z_en_pp.c b/src/overlays/actors/ovl_En_Pp/z_en_pp.c index e9e801a2f..59e95d9e7 100644 --- a/src/overlays/actors/ovl_En_Pp/z_en_pp.c +++ b/src/overlays/actors/ovl_En_Pp/z_en_pp.c @@ -9,7 +9,44 @@ void EnPp_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPp_Update(Actor* thisx, GlobalContext* globalCtx); void EnPp_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80B21624 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xC), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xD), + /* Goron punch */ DMG_ENTRY(1, 0xC), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xE), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0xC), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xC), +}; + + const ActorInit En_Pp_InitVars = { ACTOR_EN_PP, ACTORCAT_ENEMY, @@ -21,7 +58,53 @@ const ActorInit En_Pp_InitVars = { (ActorFunc)EnPp_Update, (ActorFunc)EnPp_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80B21664[1] = { + { + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B21688 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80B21664, // sJntSphElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80B21698[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 0 }, 1 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B216BC = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80B21698, // sJntSphElementsInit, +}; + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80B216CC = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x08 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL | TOUCH_UNK7, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +extern DamageTable D_80B21624; +extern ColliderJntSphElementInit D_80B21664[1]; +extern ColliderJntSphInit D_80B21688; +extern ColliderJntSphElementInit D_80B21698[1]; +extern ColliderJntSphInit D_80B216BC; +extern ColliderQuadInit D_80B216CC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Pp_0x80B1DEB0/EnPp_Init.asm") diff --git a/src/overlays/actors/ovl_En_Pr/z_en_pr.c b/src/overlays/actors/ovl_En_Pr/z_en_pr.c index 72fe527fe..1cb14fe90 100644 --- a/src/overlays/actors/ovl_En_Pr/z_en_pr.c +++ b/src/overlays/actors/ovl_En_Pr/z_en_pr.c @@ -9,7 +9,44 @@ void EnPr_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPr_Update(Actor* thisx, GlobalContext* globalCtx); void EnPr_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80A338A0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit En_Pr_InitVars = { ACTOR_EN_PR, ACTORCAT_ENEMY, @@ -21,7 +58,19 @@ const ActorInit En_Pr_InitVars = { (ActorFunc)EnPr_Update, (ActorFunc)EnPr_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A338F4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x20000000, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 18, 20, 5, { 0, 0, 0 } }, +}; + + +extern DamageTable D_80A338A0; +extern ColliderCylinderInit D_80A338F4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Pr_0x80A32210/EnPr_Init.asm") diff --git a/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c b/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c index 367eac450..219e8393e 100644 --- a/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c +++ b/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c @@ -9,7 +9,52 @@ void EnPr2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPr2_Update(Actor* thisx, GlobalContext* globalCtx); void EnPr2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80A75BC0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0xF), + /* Ice arrow */ DMG_ENTRY(1, 0xF), + /* Light arrow */ DMG_ENTRY(2, 0xF), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A75BE0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x08, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 17, 32, -10, { 0, 0, 0 } }, +}; + + const ActorInit En_Pr2_InitVars = { ACTOR_EN_PR2, ACTORCAT_ENEMY, @@ -21,7 +66,11 @@ const ActorInit En_Pr2_InitVars = { (ActorFunc)EnPr2_Update, (ActorFunc)EnPr2_Draw, }; -*/ + + +extern DamageTable D_80A75BC0; +extern ColliderCylinderInit D_80A75BE0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Pr2_0x80A73FA0/EnPr2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Prz/z_en_prz.c b/src/overlays/actors/ovl_En_Prz/z_en_prz.c index bd81a1552..12a593751 100644 --- a/src/overlays/actors/ovl_En_Prz/z_en_prz.c +++ b/src/overlays/actors/ovl_En_Prz/z_en_prz.c @@ -9,7 +9,52 @@ void EnPrz_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPrz_Update(Actor* thisx, GlobalContext* globalCtx); void EnPrz_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static DamageTable sDamageTable = { +static DamageTable D_80A771C0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0xF), + /* Ice arrow */ DMG_ENTRY(1, 0xF), + /* Light arrow */ DMG_ENTRY(2, 0xF), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A771F4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x20000000, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 10, 10, 0, { 0, 0, 0 } }, +}; + + const ActorInit En_Prz_InitVars = { ACTOR_EN_PRZ, ACTORCAT_ENEMY, @@ -21,7 +66,11 @@ const ActorInit En_Prz_InitVars = { (ActorFunc)EnPrz_Update, (ActorFunc)EnPrz_Draw, }; -*/ + + +extern DamageTable D_80A771C0; +extern ColliderCylinderInit D_80A771F4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Prz_0x80A75DC0/EnPrz_Init.asm") diff --git a/src/overlays/actors/ovl_En_Pst/z_en_pst.c b/src/overlays/actors/ovl_En_Pst/z_en_pst.c index a9b2ebcd6..e6fd5f6cf 100644 --- a/src/overlays/actors/ovl_En_Pst/z_en_pst.c +++ b/src/overlays/actors/ovl_En_Pst/z_en_pst.c @@ -9,7 +9,7 @@ void EnPst_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnPst_Update(Actor* thisx, GlobalContext* globalCtx); void EnPst_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Pst_InitVars = { ACTOR_EN_PST, ACTORCAT_PROP, @@ -21,7 +21,23 @@ const ActorInit En_Pst_InitVars = { (ActorFunc)EnPst_Update, (ActorFunc)EnPst_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B2C4B8 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 28, 72, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B2C4E4 = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80B2C4B8; +extern CollisionCheckInfoInit2 D_80B2C4E4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Pst_0x80B2B830/func_80B2B830.asm") diff --git a/src/overlays/actors/ovl_En_Racedog/z_en_racedog.c b/src/overlays/actors/ovl_En_Racedog/z_en_racedog.c index b1359a9f1..ce466d362 100644 --- a/src/overlays/actors/ovl_En_Racedog/z_en_racedog.c +++ b/src/overlays/actors/ovl_En_Racedog/z_en_racedog.c @@ -9,7 +9,7 @@ void EnRacedog_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRacedog_Update(Actor* thisx, GlobalContext* globalCtx); void EnRacedog_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Racedog_InitVars = { ACTOR_EN_RACEDOG, ACTORCAT_NPC, @@ -21,7 +21,68 @@ const ActorInit En_Racedog_InitVars = { (ActorFunc)EnRacedog_Update, (ActorFunc)EnRacedog_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B25E98 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 13, 19, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B25EC4 = { 0, 0, 0, 0, 1 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B25ED0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B25FF0[] = { + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B25E98; +extern CollisionCheckInfoInit2 D_80B25EC4; +extern DamageTable D_80B25ED0; +extern InitChainEntry D_80B25FF0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Racedog_0x80B24630/func_80B24630.asm") diff --git a/src/overlays/actors/ovl_En_Raf/z_en_raf.c b/src/overlays/actors/ovl_En_Raf/z_en_raf.c index 7f3865079..f035a6205 100644 --- a/src/overlays/actors/ovl_En_Raf/z_en_raf.c +++ b/src/overlays/actors/ovl_En_Raf/z_en_raf.c @@ -9,7 +9,7 @@ void EnRaf_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRaf_Update(Actor* thisx, GlobalContext* globalCtx); void EnRaf_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Raf_InitVars = { ACTOR_EN_RAF, ACTORCAT_PROP, @@ -21,7 +21,56 @@ const ActorInit En_Raf_InitVars = { (ActorFunc)EnRaf_Update, (ActorFunc)EnRaf_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A18EE0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 50, 10, -10, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A1939C = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xE), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(0, 0xF), + /* Sword */ DMG_ENTRY(0, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(0, 0xF), + /* Ice arrow */ DMG_ENTRY(0, 0xF), + /* Light arrow */ DMG_ENTRY(0, 0xF), + /* Goron spikes */ DMG_ENTRY(0, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0xF), +}; + + +extern ColliderCylinderInit D_80A18EE0; +extern DamageTable D_80A1939C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Raf_0x80A16D40/func_80A16D40.asm") diff --git a/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c b/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c index 33b8fa7cf..ed8dea503 100644 --- a/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c +++ b/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c @@ -9,7 +9,7 @@ void EnRailSkb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRailSkb_Update(Actor* thisx, GlobalContext* globalCtx); void EnRailSkb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Rail_Skb_InitVars = { ACTOR_EN_RAIL_SKB, ACTORCAT_ENEMY, @@ -21,7 +21,81 @@ const ActorInit En_Rail_Skb_InitVars = { (ActorFunc)EnRailSkb_Update, (ActorFunc)EnRailSkb_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_80B73408[2] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 15, { { 0, 0, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B73450 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_80B73408, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B73460 = { 2, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B7346C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xD), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(3, 0xC), + /* Normal arrow */ DMG_ENTRY(3, 0xC), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(1, 0x1), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(3, 0x2), + /* Ice arrow */ DMG_ENTRY(3, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0xB), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0x0), + /* Normal Roll */ DMG_ENTRY(4, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B73490[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80B73408[2]; +extern ColliderJntSphInit D_80B73450; +extern CollisionCheckInfoInit2 D_80B73460; +extern DamageTable D_80B7346C; +extern InitChainEntry D_80B73490[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Rail_Skb_0x80B708C0/func_80B708C0.asm") diff --git a/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c b/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c index b4d2ff2de..e6fcc3bc5 100644 --- a/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c +++ b/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c @@ -9,7 +9,7 @@ void EnRailgibud_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRailgibud_Update(Actor* thisx, GlobalContext* globalCtx); void EnRailgibud_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Railgibud_InitVars = { ACTOR_EN_RAILGIBUD, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Railgibud_InitVars = { (ActorFunc)EnRailgibud_Update, (ActorFunc)EnRailgibud_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BA82A0 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7EFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 70, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BA82CC = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(2, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0xD), + /* Normal arrow */ DMG_ENTRY(0, 0xD), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0xD), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(0, 0xD), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xC), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xE), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BA82EC = { 8, 0, 0, 0, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BA82FC[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -3500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BA82A0; +extern DamageTable D_80BA82CC; +extern CollisionCheckInfoInit2 D_80BA82EC; +extern InitChainEntry D_80BA82FC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Railgibud_0x80BA5400/func_80BA5400.asm") diff --git a/src/overlays/actors/ovl_En_Rat/z_en_rat.c b/src/overlays/actors/ovl_En_Rat/z_en_rat.c index 2cafda0da..24969c796 100644 --- a/src/overlays/actors/ovl_En_Rat/z_en_rat.c +++ b/src/overlays/actors/ovl_En_Rat/z_en_rat.c @@ -9,7 +9,7 @@ void EnRat_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRat_Update(Actor* thisx, GlobalContext* globalCtx); void EnRat_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Rat_InitVars = { ACTOR_EN_RAT, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Rat_InitVars = { (ActorFunc)EnRat_Update, (ActorFunc)EnRat_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80A58400 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 23 }, 100 }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A5842C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80A5844C = { 1, 30, 30, 50 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A58464[] = { + ICHAIN_S8(hintId, 97, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 15, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 5000, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_80A58400; +extern DamageTable D_80A5842C; +extern CollisionCheckInfoInit D_80A5844C; +extern InitChainEntry D_80A58464[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Rat_0x80A56150/EnRat_Init.asm") diff --git a/src/overlays/actors/ovl_En_Rd/z_en_rd.c b/src/overlays/actors/ovl_En_Rd/z_en_rd.c index 3e23dad14..f6182a241 100644 --- a/src/overlays/actors/ovl_En_Rd/z_en_rd.c +++ b/src/overlays/actors/ovl_En_Rd/z_en_rd.c @@ -9,7 +9,7 @@ void EnRd_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRd_Update(Actor* thisx, GlobalContext* globalCtx); void EnRd_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Rd_InitVars = { ACTOR_EN_RD, ACTORCAT_ENEMY, @@ -21,7 +21,65 @@ const ActorInit En_Rd_InitVars = { (ActorFunc)EnRd_Update, (ActorFunc)EnRd_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808D70E0 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7EFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 70, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808D710C = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(2, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0xD), + /* Normal arrow */ DMG_ENTRY(0, 0xD), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0xD), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(0, 0xD), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xC), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xE), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808D712C[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -3500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808D70E0; +extern DamageTable D_808D710C; +extern InitChainEntry D_808D712C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Rd_0x808D3E20/EnRd_Init.asm") diff --git a/src/overlays/actors/ovl_En_Recepgirl/z_en_recepgirl.c b/src/overlays/actors/ovl_En_Recepgirl/z_en_recepgirl.c index 11ee0ea86..37624ff47 100644 --- a/src/overlays/actors/ovl_En_Recepgirl/z_en_recepgirl.c +++ b/src/overlays/actors/ovl_En_Recepgirl/z_en_recepgirl.c @@ -9,7 +9,7 @@ void EnRecepgirl_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRecepgirl_Update(Actor* thisx, GlobalContext* globalCtx); void EnRecepgirl_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Recepgirl_InitVars = { ACTOR_EN_RECEPGIRL, ACTORCAT_NPC, @@ -21,7 +21,17 @@ const ActorInit En_Recepgirl_InitVars = { (ActorFunc)EnRecepgirl_Update, (ActorFunc)EnRecepgirl_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C106C0[] = { + ICHAIN_U8(targetMode, 6, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80C106C0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Recepgirl_0x80C0FFD0/EnRecepgirl_Init.asm") diff --git a/src/overlays/actors/ovl_En_Rg/z_en_rg.c b/src/overlays/actors/ovl_En_Rg/z_en_rg.c index 0a542e6e2..2894d3885 100644 --- a/src/overlays/actors/ovl_En_Rg/z_en_rg.c +++ b/src/overlays/actors/ovl_En_Rg/z_en_rg.c @@ -9,7 +9,7 @@ void EnRg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRg_Update(Actor* thisx, GlobalContext* globalCtx); void EnRg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Rg_InitVars = { ACTOR_EN_RG, ACTORCAT_NPC, @@ -21,7 +21,70 @@ const ActorInit En_Rg_InitVars = { (ActorFunc)EnRg_Update, (ActorFunc)EnRg_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80BF5760 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_PLAYER | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 20 }, 100 }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BF578C = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 62, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BF57B8 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BF57C4 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderSphereInit D_80BF5760; +extern ColliderCylinderInit D_80BF578C; +extern CollisionCheckInfoInit2 D_80BF57B8; +extern DamageTable D_80BF57C4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Rg_0x80BF3920/func_80BF3920.asm") diff --git a/src/overlays/actors/ovl_En_River_Sound/z_en_river_sound.c b/src/overlays/actors/ovl_En_River_Sound/z_en_river_sound.c index 9588a98c8..80d90e3d5 100644 --- a/src/overlays/actors/ovl_En_River_Sound/z_en_river_sound.c +++ b/src/overlays/actors/ovl_En_River_Sound/z_en_river_sound.c @@ -8,7 +8,7 @@ void EnRiverSound_Init(Actor* thisx, GlobalContext* globalCtx); void EnRiverSound_Update(Actor* thisx, GlobalContext* globalCtx); void EnRiverSound_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_River_Sound_InitVars = { ACTOR_EN_RIVER_SOUND, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_River_Sound_InitVars = { (ActorFunc)EnRiverSound_Update, (ActorFunc)EnRiverSound_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_River_Sound_0x808A7E30/EnRiverSound_Init.asm") diff --git a/src/overlays/actors/ovl_En_Rr/z_en_rr.c b/src/overlays/actors/ovl_En_Rr/z_en_rr.c index 19cb87941..0da5bb191 100644 --- a/src/overlays/actors/ovl_En_Rr/z_en_rr.c +++ b/src/overlays/actors/ovl_En_Rr/z_en_rr.c @@ -9,7 +9,7 @@ void EnRr_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRr_Update(Actor* thisx, GlobalContext* globalCtx); void EnRr_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Rr_InitVars = { ACTOR_EN_RR, ACTORCAT_ENEMY, @@ -21,7 +21,81 @@ const ActorInit En_Rr_InitVars = { (ActorFunc)EnRr_Update, (ActorFunc)EnRr_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808FC150 = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x20000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 45, 60, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808FC17C = { + { COLTYPE_HIT0, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x20000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON | BUMP_HOOKABLE, OCELEM_NONE, }, + { 30, 45, -30, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808FC1A8 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(3, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x1), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(3, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(2, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(2, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(2, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808FC1C8 = { 3, 45, 60, 250 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808FC1D0[] = { + ICHAIN_S8(hintId, 55, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 30, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808FC150; +extern ColliderCylinderInit D_808FC17C; +extern DamageTable D_808FC1A8; +extern CollisionCheckInfoInit D_808FC1C8; +extern InitChainEntry D_808FC1D0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Rr_0x808F9E00/EnRr_Init.asm") diff --git a/src/overlays/actors/ovl_En_Ru/z_en_ru.c b/src/overlays/actors/ovl_En_Ru/z_en_ru.c index 98791ccd2..fe129aed5 100644 --- a/src/overlays/actors/ovl_En_Ru/z_en_ru.c +++ b/src/overlays/actors/ovl_En_Ru/z_en_ru.c @@ -9,7 +9,7 @@ void EnRu_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRu_Update(Actor* thisx, GlobalContext* globalCtx); void EnRu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ru_InitVars = { ACTOR_EN_RU, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Ru_InitVars = { (ActorFunc)EnRu_Update, (ActorFunc)EnRu_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A39450 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A3947C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A39488 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_80A39450; +extern CollisionCheckInfoInit2 D_80A3947C; +extern DamageTable D_80A39488; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ru_0x80A389A0/func_80A389A0.asm") diff --git a/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c b/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c index dd22cecfe..9e048aeaa 100644 --- a/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c +++ b/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c @@ -9,7 +9,7 @@ void EnRuppecrow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRuppecrow_Update(Actor* thisx, GlobalContext* globalCtx); void EnRuppecrow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ruppecrow_InitVars = { ACTOR_EN_RUPPECROW, ACTORCAT_ENEMY, @@ -21,7 +21,77 @@ const ActorInit En_Ruppecrow_InitVars = { (ActorFunc)EnRuppecrow_Update, (ActorFunc)EnRuppecrow_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80BE39B0[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80BE39D4 = { + { COLTYPE_HIT3, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80BE39B0, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80BE39E4 = { 1, 15, 30, 30 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BE39EC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BE3A0C[] = { + ICHAIN_F32_DIV1000(gravity, -500, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80BE39B0[1]; +extern ColliderJntSphInit D_80BE39D4; +extern CollisionCheckInfoInit D_80BE39E4; +extern DamageTable D_80BE39EC; +extern InitChainEntry D_80BE3A0C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ruppecrow_0x80BE2260/func_80BE2260.asm") diff --git a/src/overlays/actors/ovl_En_Rz/z_en_rz.c b/src/overlays/actors/ovl_En_Rz/z_en_rz.c index 3a922053f..ac7d967e0 100644 --- a/src/overlays/actors/ovl_En_Rz/z_en_rz.c +++ b/src/overlays/actors/ovl_En_Rz/z_en_rz.c @@ -9,7 +9,7 @@ void EnRz_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnRz_Update(Actor* thisx, GlobalContext* globalCtx); void EnRz_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Rz_InitVars = { ACTOR_EN_RZ, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Rz_InitVars = { (ActorFunc)EnRz_Update, (ActorFunc)EnRz_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BFCCF4 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BFCCF4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Rz_0x80BFB480/EnRz_Init.asm") diff --git a/src/overlays/actors/ovl_En_S_Goro/z_en_s_goro.c b/src/overlays/actors/ovl_En_S_Goro/z_en_s_goro.c index 0aa248ee4..76ee5a28a 100644 --- a/src/overlays/actors/ovl_En_S_Goro/z_en_s_goro.c +++ b/src/overlays/actors/ovl_En_S_Goro/z_en_s_goro.c @@ -9,7 +9,7 @@ void EnSGoro_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSGoro_Update(Actor* thisx, GlobalContext* globalCtx); void EnSGoro_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_S_Goro_InitVars = { ACTOR_EN_S_GORO, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_S_Goro_InitVars = { (ActorFunc)EnSGoro_Update, (ActorFunc)EnSGoro_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BBF820 = { + { COLTYPE_HIT1, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, 0, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BBF84C = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BBF858 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderCylinderInit D_80BBF820; +extern CollisionCheckInfoInit2 D_80BBF84C; +extern DamageTable D_80BBF858; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_S_Goro_0x80BBCA80/func_80BBCA80.asm") diff --git a/src/overlays/actors/ovl_En_Sc_Ruppe/z_en_sc_ruppe.c b/src/overlays/actors/ovl_En_Sc_Ruppe/z_en_sc_ruppe.c index af27a3639..d916a8272 100644 --- a/src/overlays/actors/ovl_En_Sc_Ruppe/z_en_sc_ruppe.c +++ b/src/overlays/actors/ovl_En_Sc_Ruppe/z_en_sc_ruppe.c @@ -9,7 +9,7 @@ void EnScRuppe_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnScRuppe_Update(Actor* thisx, GlobalContext* globalCtx); void EnScRuppe_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sc_Ruppe_InitVars = { ACTOR_EN_SC_RUPPE, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Sc_Ruppe_InitVars = { (ActorFunc)EnScRuppe_Update, (ActorFunc)EnScRuppe_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD6E40 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_NO_PUSH | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 10, 30, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BD6E40; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sc_Ruppe_0x80BD6910/func_80BD6910.asm") diff --git a/src/overlays/actors/ovl_En_Scopecrow/z_en_scopecrow.c b/src/overlays/actors/ovl_En_Scopecrow/z_en_scopecrow.c index 1e238b83b..2d063651b 100644 --- a/src/overlays/actors/ovl_En_Scopecrow/z_en_scopecrow.c +++ b/src/overlays/actors/ovl_En_Scopecrow/z_en_scopecrow.c @@ -9,7 +9,7 @@ void EnScopecrow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnScopecrow_Update(Actor* thisx, GlobalContext* globalCtx); void EnScopecrow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Scopecrow_InitVars = { ACTOR_EN_SCOPECROW, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Scopecrow_InitVars = { (ActorFunc)EnScopecrow_Update, (ActorFunc)EnScopecrow_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80BCDB70[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 60, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80BCDB94 = { + { COLTYPE_HIT3, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80BCDB70, // sJntSphElementsInit, +}; + + +extern ColliderJntSphElementInit D_80BCDB70[1]; +extern ColliderJntSphInit D_80BCDB94; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Scopecrow_0x80BCD000/func_80BCD000.asm") diff --git a/src/overlays/actors/ovl_En_Scopenuts/z_en_scopenuts.c b/src/overlays/actors/ovl_En_Scopenuts/z_en_scopenuts.c index 5aa8656cc..413000565 100644 --- a/src/overlays/actors/ovl_En_Scopenuts/z_en_scopenuts.c +++ b/src/overlays/actors/ovl_En_Scopenuts/z_en_scopenuts.c @@ -9,7 +9,7 @@ void EnScopenuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnScopenuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnScopenuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Scopenuts_InitVars = { ACTOR_EN_SCOPENUTS, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Scopenuts_InitVars = { (ActorFunc)EnScopenuts_Update, (ActorFunc)EnScopenuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BCCB40 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 27, 32, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BCCCF0[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 30, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BCCB40; +extern InitChainEntry D_80BCCCF0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Scopenuts_0x80BCABF0/func_80BCABF0.asm") diff --git a/src/overlays/actors/ovl_En_Sda/z_en_sda.c b/src/overlays/actors/ovl_En_Sda/z_en_sda.c index 91045d536..b6746c713 100644 --- a/src/overlays/actors/ovl_En_Sda/z_en_sda.c +++ b/src/overlays/actors/ovl_En_Sda/z_en_sda.c @@ -9,7 +9,7 @@ void EnSda_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSda_Update(Actor* thisx, GlobalContext* globalCtx); void EnSda_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sda_InitVars = { ACTOR_EN_SDA, ACTORCAT_BOSS, @@ -21,7 +21,8 @@ const ActorInit En_Sda_InitVars = { (ActorFunc)EnSda_Update, (ActorFunc)EnSda_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sda_0x809468D0/EnSda_Init.asm") diff --git a/src/overlays/actors/ovl_En_Sekihi/z_en_sekihi.c b/src/overlays/actors/ovl_En_Sekihi/z_en_sekihi.c index 496f73075..33cc223fe 100644 --- a/src/overlays/actors/ovl_En_Sekihi/z_en_sekihi.c +++ b/src/overlays/actors/ovl_En_Sekihi/z_en_sekihi.c @@ -8,7 +8,7 @@ void EnSekihi_Init(Actor* thisx, GlobalContext* globalCtx); void EnSekihi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSekihi_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sekihi_InitVars = { ACTOR_EN_SEKIHI, ACTORCAT_PROP, @@ -20,7 +20,8 @@ const ActorInit En_Sekihi_InitVars = { (ActorFunc)EnSekihi_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sekihi_0x80A44C80/EnSekihi_Init.asm") diff --git a/src/overlays/actors/ovl_En_Sellnuts/z_en_sellnuts.c b/src/overlays/actors/ovl_En_Sellnuts/z_en_sellnuts.c index 25a4cfa93..7bcc9c16e 100644 --- a/src/overlays/actors/ovl_En_Sellnuts/z_en_sellnuts.c +++ b/src/overlays/actors/ovl_En_Sellnuts/z_en_sellnuts.c @@ -9,7 +9,7 @@ void EnSellnuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSellnuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnSellnuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sellnuts_InitVars = { ACTOR_EN_SELLNUTS, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit En_Sellnuts_InitVars = { (ActorFunc)EnSellnuts_Update, (ActorFunc)EnSellnuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ADD964 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_HIT_PLAYER, COLSHAPE_JNTSPH, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 27, 32, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ADDB00[] = { + ICHAIN_U8(targetMode, 0, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 30, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80ADD964; +extern InitChainEntry D_80ADDB00[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sellnuts_0x80ADADD0/func_80ADADD0.asm") diff --git a/src/overlays/actors/ovl_En_Shn/z_en_shn.c b/src/overlays/actors/ovl_En_Shn/z_en_shn.c index 3052fae55..1882dda69 100644 --- a/src/overlays/actors/ovl_En_Shn/z_en_shn.c +++ b/src/overlays/actors/ovl_En_Shn/z_en_shn.c @@ -9,7 +9,7 @@ void EnShn_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnShn_Update(Actor* thisx, GlobalContext* globalCtx); void EnShn_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Shn_InitVars = { ACTOR_EN_SHN, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Shn_InitVars = { (ActorFunc)EnShn_Update, (ActorFunc)EnShn_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Shn_0x80AE6130/func_80AE6130.asm") diff --git a/src/overlays/actors/ovl_En_Si/z_en_si.c b/src/overlays/actors/ovl_En_Si/z_en_si.c index a4e79b006..32e212466 100644 --- a/src/overlays/actors/ovl_En_Si/z_en_si.c +++ b/src/overlays/actors/ovl_En_Si/z_en_si.c @@ -9,7 +9,7 @@ void EnSi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSi_Update(Actor* thisx, GlobalContext* globalCtx); void EnSi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Si_InitVars = { ACTOR_EN_SI, ACTORCAT_ITEMACTION, @@ -21,7 +21,61 @@ const ActorInit En_Si_InitVars = { (ActorFunc)EnSi_Update, (ActorFunc)EnSi_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_8098CD80 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_NO_PUSH | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 10 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8098CDAC = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_8098CDB8 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderSphereInit D_8098CD80; +extern CollisionCheckInfoInit2 D_8098CDAC; +extern DamageTable D_8098CDB8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Si_0x8098CA20/func_8098CA20.asm") diff --git a/src/overlays/actors/ovl_En_Skb/z_en_skb.c b/src/overlays/actors/ovl_En_Skb/z_en_skb.c index 49aa60a2f..951157710 100644 --- a/src/overlays/actors/ovl_En_Skb/z_en_skb.c +++ b/src/overlays/actors/ovl_En_Skb/z_en_skb.c @@ -9,7 +9,63 @@ void EnSkb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSkb_Update(Actor* thisx, GlobalContext* globalCtx); void EnSkb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_80997498[2] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 15, { { 0, 0, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809974E0 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_80997498, // sJntSphElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_809974F0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xD), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(3, 0xC), + /* Normal arrow */ DMG_ENTRY(3, 0xC), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(1, 0x1), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(3, 0x2), + /* Ice arrow */ DMG_ENTRY(3, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0xB), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(2, 0x0), + /* Normal Roll */ DMG_ENTRY(4, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + const ActorInit En_Skb_InitVars = { ACTOR_EN_SKB, ACTORCAT_ENEMY, @@ -21,7 +77,20 @@ const ActorInit En_Skb_InitVars = { (ActorFunc)EnSkb_Update, (ActorFunc)EnSkb_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80997548[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80997498[2]; +extern ColliderJntSphInit D_809974E0; +extern DamageTable D_809974F0; +extern InitChainEntry D_80997548[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Skb_0x809947B0/func_809947B0.asm") diff --git a/src/overlays/actors/ovl_En_Slime/z_en_slime.c b/src/overlays/actors/ovl_En_Slime/z_en_slime.c index 97faffe8f..f11f35a4a 100644 --- a/src/overlays/actors/ovl_En_Slime/z_en_slime.c +++ b/src/overlays/actors/ovl_En_Slime/z_en_slime.c @@ -9,7 +9,7 @@ void EnSlime_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSlime_Update(Actor* thisx, GlobalContext* globalCtx); void EnSlime_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Slime_InitVars = { ACTOR_EN_SLIME, ACTORCAT_ENEMY, @@ -21,7 +21,69 @@ const ActorInit En_Slime_InitVars = { (ActorFunc)EnSlime_Update, (ActorFunc)EnSlime_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A31AF0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 22, 35, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A31B1C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(3, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xE), + /* Goron punch */ DMG_ENTRY(0, 0xF), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x0), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80A31B3C = { 1, 22, 35, 60 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A31B54[] = { + ICHAIN_F32(gravity, -2, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 6000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A31AF0; +extern DamageTable D_80A31B1C; +extern CollisionCheckInfoInit D_80A31B3C; +extern InitChainEntry D_80A31B54[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Slime_0x80A2EDA0/EnSlime_Init.asm") diff --git a/src/overlays/actors/ovl_En_Snowman/z_en_snowman.c b/src/overlays/actors/ovl_En_Snowman/z_en_snowman.c index 593cd27cc..7bc6131ec 100644 --- a/src/overlays/actors/ovl_En_Snowman/z_en_snowman.c +++ b/src/overlays/actors/ovl_En_Snowman/z_en_snowman.c @@ -9,7 +9,7 @@ void EnSnowman_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSnowman_Update(Actor* thisx, GlobalContext* globalCtx); void EnSnowman_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Snowman_InitVars = { ACTOR_EN_SNOWMAN, ACTORCAT_ENEMY, @@ -21,7 +21,79 @@ const ActorInit En_Snowman_InitVars = { (ActorFunc)EnSnowman_Update, (ActorFunc)EnSnowman_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B19A00 = { + { COLTYPE_HIT4, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 60, 80, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B19A2C = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 60, 80, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B19A58 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80B19A78 = { 2, 60, 80, 150 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B19AAC[] = { + ICHAIN_S8(hintId, 20, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 3000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B19A00; +extern ColliderCylinderInit D_80B19A2C; +extern DamageTable D_80B19A58; +extern CollisionCheckInfoInit D_80B19A78; +extern InitChainEntry D_80B19AAC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Snowman_0x80B16B00/EnSnowman_Init.asm") diff --git a/src/overlays/actors/ovl_En_Snowwd/z_en_snowwd.c b/src/overlays/actors/ovl_En_Snowwd/z_en_snowwd.c index d093177cc..b3ad6239d 100644 --- a/src/overlays/actors/ovl_En_Snowwd/z_en_snowwd.c +++ b/src/overlays/actors/ovl_En_Snowwd/z_en_snowwd.c @@ -9,7 +9,7 @@ void EnSnowwd_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSnowwd_Update(Actor* thisx, GlobalContext* globalCtx); void EnSnowwd_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Snowwd_InitVars = { ACTOR_EN_SNOWWD, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Snowwd_InitVars = { (ActorFunc)EnSnowwd_Update, (ActorFunc)EnSnowwd_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AF7A90 = { + { COLTYPE_TREE, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0x0100020A, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80AF7A90; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Snowwd_0x80AF7640/EnSnowwd_Init.asm") diff --git a/src/overlays/actors/ovl_En_Sob1/z_en_sob1.c b/src/overlays/actors/ovl_En_Sob1/z_en_sob1.c index f2753bebe..5a0712acd 100644 --- a/src/overlays/actors/ovl_En_Sob1/z_en_sob1.c +++ b/src/overlays/actors/ovl_En_Sob1/z_en_sob1.c @@ -8,7 +8,7 @@ void EnSob1_Init(Actor* thisx, GlobalContext* globalCtx); void EnSob1_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSob1_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sob1_InitVars = { ACTOR_EN_OSSAN, ACTORCAT_NPC, @@ -20,7 +20,16 @@ const ActorInit En_Sob1_InitVars = { (ActorFunc)EnSob1_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A109E8[] = { + ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A109E8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sob1_0x80A0C810/func_80A0C810.asm") diff --git a/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c b/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c index 5ef4b7e31..6437540df 100644 --- a/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c +++ b/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c @@ -9,7 +9,7 @@ void EnSsh_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSsh_Update(Actor* thisx, GlobalContext* globalCtx); void EnSsh_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Ssh_InitVars = { ACTOR_EN_SSH, ACTORCAT_NPC, @@ -21,7 +21,49 @@ const ActorInit En_Ssh_InitVars = { (ActorFunc)EnSsh_Update, (ActorFunc)EnSsh_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80976030 = { + { COLTYPE_HIT6, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 32, 50, -24, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8097605C = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80976068 = { + { COLTYPE_HIT6, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 20, 60, -30, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80976094[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 1, { { 0, -240, 0 }, 28 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809760B8 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80976094, // sJntSphElementsInit, +}; + + +extern ColliderCylinderInit D_80976030; +extern CollisionCheckInfoInit2 D_8097605C; +extern ColliderCylinderInit D_80976068; +extern ColliderJntSphElementInit D_80976094[1]; +extern ColliderJntSphInit D_809760B8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Ssh_0x80973EF0/func_80973EF0.asm") diff --git a/src/overlays/actors/ovl_En_St/z_en_st.c b/src/overlays/actors/ovl_En_St/z_en_st.c index ebb51452d..237220d53 100644 --- a/src/overlays/actors/ovl_En_St/z_en_st.c +++ b/src/overlays/actors/ovl_En_St/z_en_st.c @@ -8,7 +8,7 @@ void EnSt_Init(Actor* thisx, GlobalContext* globalCtx); void EnSt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSt_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_St_InitVars = { ACTOR_EN_ST, ACTORCAT_ENEMY, @@ -20,7 +20,88 @@ const ActorInit En_St_InitVars = { (ActorFunc)EnSt_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808A75B0 = { + { COLTYPE_HIT2, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x800C3829, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 18, 48, -20, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808A75DC = { + { COLTYPE_HIT2, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x77C3C7D6, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 18, 48, -20, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808A7608 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0x77C3C7D6, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 18, 48, -20, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808A7634 = { + { COLTYPE_HIT2, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x800C3829, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 18, 48, -20, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_808A7660 = { 2, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808A766C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderCylinderInit D_808A75B0; +extern ColliderCylinderInit D_808A75DC; +extern ColliderCylinderInit D_808A7608; +extern ColliderCylinderInit D_808A7634; +extern CollisionCheckInfoInit2 D_808A7660; +extern DamageTable D_808A766C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_St_0x808A5050/func_808A5050.asm") diff --git a/src/overlays/actors/ovl_En_Sth/z_en_sth.c b/src/overlays/actors/ovl_En_Sth/z_en_sth.c index a24af6f4b..d8e6e3fcb 100644 --- a/src/overlays/actors/ovl_En_Sth/z_en_sth.c +++ b/src/overlays/actors/ovl_En_Sth/z_en_sth.c @@ -8,7 +8,7 @@ void EnSth_Init(Actor* thisx, GlobalContext* globalCtx); void EnSth_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSth_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sth_InitVars = { ACTOR_EN_STH, ACTORCAT_NPC, @@ -20,7 +20,18 @@ const ActorInit En_Sth_InitVars = { (ActorFunc)EnSth_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B6D19C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80B6D19C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sth_0x80B66D30/EnSth_Init.asm") diff --git a/src/overlays/actors/ovl_En_Sth2/z_en_sth2.c b/src/overlays/actors/ovl_En_Sth2/z_en_sth2.c index 357a088ea..92c04492b 100644 --- a/src/overlays/actors/ovl_En_Sth2/z_en_sth2.c +++ b/src/overlays/actors/ovl_En_Sth2/z_en_sth2.c @@ -8,7 +8,7 @@ void EnSth2_Init(Actor* thisx, GlobalContext* globalCtx); void EnSth2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSth2_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sth2_InitVars = { ACTOR_EN_STH2, ACTORCAT_NPC, @@ -20,7 +20,8 @@ const ActorInit En_Sth2_InitVars = { (ActorFunc)EnSth2_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sth2_0x80BF74E0/EnSth2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Stone_heishi/z_en_stone_heishi.c b/src/overlays/actors/ovl_En_Stone_heishi/z_en_stone_heishi.c index 407e73cbf..f876ac1a2 100644 --- a/src/overlays/actors/ovl_En_Stone_heishi/z_en_stone_heishi.c +++ b/src/overlays/actors/ovl_En_Stone_heishi/z_en_stone_heishi.c @@ -9,7 +9,7 @@ void EnStoneheishi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnStoneheishi_Update(Actor* thisx, GlobalContext* globalCtx); void EnStoneheishi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Stone_heishi_InitVars = { ACTOR_EN_STONE_HEISHI, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Stone_heishi_InitVars = { (ActorFunc)EnStoneheishi_Update, (ActorFunc)EnStoneheishi_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BCA3A0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 15, 70, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BCA3A0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Stone_heishi_0x80BC9270/EnStoneheishi_Init.asm") diff --git a/src/overlays/actors/ovl_En_Stop_heishi/z_en_stop_heishi.c b/src/overlays/actors/ovl_En_Stop_heishi/z_en_stop_heishi.c index d7a1bb057..5e1949b38 100644 --- a/src/overlays/actors/ovl_En_Stop_heishi/z_en_stop_heishi.c +++ b/src/overlays/actors/ovl_En_Stop_heishi/z_en_stop_heishi.c @@ -9,7 +9,7 @@ void EnStopheishi_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnStopheishi_Update(Actor* thisx, GlobalContext* globalCtx); void EnStopheishi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Stop_heishi_InitVars = { ACTOR_EN_STOP_HEISHI, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Stop_heishi_InitVars = { (ActorFunc)EnStopheishi_Update, (ActorFunc)EnStopheishi_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AE88B0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 50, 260, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80AE88B0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Stop_heishi_0x80AE73A0/EnStopheishi_Init.asm") diff --git a/src/overlays/actors/ovl_En_Stream/z_en_stream.c b/src/overlays/actors/ovl_En_Stream/z_en_stream.c index 1fbade222..9280d9a46 100644 --- a/src/overlays/actors/ovl_En_Stream/z_en_stream.c +++ b/src/overlays/actors/ovl_En_Stream/z_en_stream.c @@ -9,7 +9,7 @@ void EnStream_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnStream_Update(Actor* thisx, GlobalContext* globalCtx); void EnStream_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Stream_InitVars = { ACTOR_EN_STREAM, ACTORCAT_BG, @@ -21,7 +21,16 @@ const ActorInit En_Stream_InitVars = { (ActorFunc)EnStream_Update, (ActorFunc)EnStream_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80965B20[] = { + ICHAIN_VEC3F_DIV1000(scale, 20, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80965B20[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Stream_0x80965650/func_80965650.asm") diff --git a/src/overlays/actors/ovl_En_Suttari/z_en_suttari.c b/src/overlays/actors/ovl_En_Suttari/z_en_suttari.c index adb5de6d2..dead6d691 100644 --- a/src/overlays/actors/ovl_En_Suttari/z_en_suttari.c +++ b/src/overlays/actors/ovl_En_Suttari/z_en_suttari.c @@ -9,7 +9,7 @@ void EnSuttari_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSuttari_Update(Actor* thisx, GlobalContext* globalCtx); void EnSuttari_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Suttari_InitVars = { ACTOR_EN_SUTTARI, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Suttari_InitVars = { (ActorFunc)EnSuttari_Update, (ActorFunc)EnSuttari_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BAE7A8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BAE7D4 = { 0, 18, 64, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80BAE7E0 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xE), + /* Zora boomerang */ DMG_ENTRY(1, 0xE), + /* Normal arrow */ DMG_ENTRY(1, 0xE), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xE), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0xE), + /* Ice arrow */ DMG_ENTRY(1, 0xE), + /* Light arrow */ DMG_ENTRY(1, 0xE), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(1, 0xE), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xE), +}; + + +extern ColliderCylinderInit D_80BAE7A8; +extern CollisionCheckInfoInit2 D_80BAE7D4; +extern DamageTable D_80BAE7E0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Suttari_0x80BAA6D0/func_80BAA6D0.asm") diff --git a/src/overlays/actors/ovl_En_Sw/z_en_sw.c b/src/overlays/actors/ovl_En_Sw/z_en_sw.c index 2bb877d4e..1351266b1 100644 --- a/src/overlays/actors/ovl_En_Sw/z_en_sw.c +++ b/src/overlays/actors/ovl_En_Sw/z_en_sw.c @@ -9,7 +9,7 @@ void EnSw_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSw_Update(Actor* thisx, GlobalContext* globalCtx); void EnSw_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Sw_InitVars = { ACTOR_EN_SW, ACTORCAT_NPC, @@ -21,7 +21,104 @@ const ActorInit En_Sw_InitVars = { (ActorFunc)EnSw_Update, (ActorFunc)EnSw_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_808DB9E0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 16 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_808DBA0C = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808DBA18 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(2, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_808DBA38 = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_808DBA44 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(2, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(1, 0x5), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderSphereInit D_808DB9E0; +extern CollisionCheckInfoInit2 D_808DBA0C; +extern DamageTable D_808DBA18; +extern CollisionCheckInfoInit2 D_808DBA38; +extern DamageTable D_808DBA44; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Sw_0x808D8940/func_808D8940.asm") diff --git a/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c b/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c index 2c1745ebc..5f2b65574 100644 --- a/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c +++ b/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c @@ -9,7 +9,7 @@ void EnSyatekiCrow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiCrow_Update(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiCrow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Syateki_Crow_InitVars = { ACTOR_EN_SYATEKI_CROW, ACTORCAT_ENEMY, @@ -21,7 +21,36 @@ const ActorInit En_Syateki_Crow_InitVars = { (ActorFunc)EnSyatekiCrow_Update, (ActorFunc)EnSyatekiCrow_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_809CB07C[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 60, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_809CB0A0 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_809CB07C, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809CB0B0[] = { + ICHAIN_F32(uncullZoneScale, 3000, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 88, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -500, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_809CB07C[1]; +extern ColliderJntSphInit D_809CB0A0; +extern InitChainEntry D_809CB0B0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Syateki_Crow_0x809CA3F0/EnSyatekiCrow_Init.asm") diff --git a/src/overlays/actors/ovl_En_Syateki_Dekunuts/z_en_syateki_dekunuts.c b/src/overlays/actors/ovl_En_Syateki_Dekunuts/z_en_syateki_dekunuts.c index 1cf6c40d6..0dab77f20 100644 --- a/src/overlays/actors/ovl_En_Syateki_Dekunuts/z_en_syateki_dekunuts.c +++ b/src/overlays/actors/ovl_En_Syateki_Dekunuts/z_en_syateki_dekunuts.c @@ -9,7 +9,7 @@ void EnSyatekiDekunuts_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiDekunuts_Update(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiDekunuts_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Syateki_Dekunuts_InitVars = { ACTOR_EN_SYATEKI_DEKUNUTS, ACTORCAT_ENEMY, @@ -21,7 +21,27 @@ const ActorInit En_Syateki_Dekunuts_InitVars = { (ActorFunc)EnSyatekiDekunuts_Update, (ActorFunc)EnSyatekiDekunuts_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A2CAB0 = { + { COLTYPE_HIT6, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 48, 80, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A2CB90[] = { + ICHAIN_S8(hintId, 77, ICHAIN_CONTINUE), + ICHAIN_F32(gravity, 0, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2600, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A2CAB0; +extern InitChainEntry D_80A2CB90[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Syateki_Dekunuts_0x80A2BC00/EnSyatekiDekunuts_Init.asm") diff --git a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c index 6650a3566..c7f2af56b 100644 --- a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c +++ b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c @@ -9,7 +9,7 @@ void EnSyatekiMan_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiMan_Update(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiMan_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Syateki_Man_InitVars = { ACTOR_EN_SYATEKI_MAN, ACTORCAT_NPC, @@ -21,7 +21,8 @@ const ActorInit En_Syateki_Man_InitVars = { (ActorFunc)EnSyatekiMan_Update, (ActorFunc)EnSyatekiMan_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Syateki_Man_0x809C64C0/func_809C64C0.asm") diff --git a/src/overlays/actors/ovl_En_Syateki_Okuta/z_en_syateki_okuta.c b/src/overlays/actors/ovl_En_Syateki_Okuta/z_en_syateki_okuta.c index 27b372ad7..2aff9783f 100644 --- a/src/overlays/actors/ovl_En_Syateki_Okuta/z_en_syateki_okuta.c +++ b/src/overlays/actors/ovl_En_Syateki_Okuta/z_en_syateki_okuta.c @@ -9,7 +9,7 @@ void EnSyatekiOkuta_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiOkuta_Update(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiOkuta_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Syateki_Okuta_InitVars = { ACTOR_EN_SYATEKI_OKUTA, ACTORCAT_ENEMY, @@ -21,7 +21,26 @@ const ActorInit En_Syateki_Okuta_InitVars = { (ActorFunc)EnSyatekiOkuta_Update, (ActorFunc)EnSyatekiOkuta_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A37570 = { + { COLTYPE_HIT3, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, -30, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A37B88[] = { + ICHAIN_S8(hintId, 66, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 6500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A37570; +extern InitChainEntry D_80A37B88[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Syateki_Okuta_0x80A35FF0/EnSyatekiOkuta_Init.asm") diff --git a/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c b/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c index 951b10239..1f56efeef 100644 --- a/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c +++ b/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c @@ -9,7 +9,38 @@ void EnSyatekiWf_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiWf_Update(Actor* thisx, GlobalContext* globalCtx); void EnSyatekiWf_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A20E74 = { + { COLTYPE_HIT5, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 40, 60, 0, { 0, 0, 0 } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A20E50[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 17, { { 800, 0, 0 }, 25 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A20EA0 = { + { COLTYPE_HIT5, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A20E50, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A20EB0 = { + { COLTYPE_HIT5, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 15, 20, -15, { 0, 0, 0 } }, +}; + + const ActorInit En_Syateki_Wf_InitVars = { ACTOR_EN_SYATEKI_WF, ACTORCAT_ENEMY, @@ -21,7 +52,21 @@ const ActorInit En_Syateki_Wf_InitVars = { (ActorFunc)EnSyatekiWf_Update, (ActorFunc)EnSyatekiWf_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A20FBC[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A20E74; +extern ColliderJntSphElementInit D_80A20E50[1]; +extern ColliderJntSphInit D_80A20EA0; +extern ColliderCylinderInit D_80A20EB0; +extern InitChainEntry D_80A20FBC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Syateki_Wf_0x80A1FE50/EnSyatekiWf_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tab/z_en_tab.c b/src/overlays/actors/ovl_En_Tab/z_en_tab.c index bd8e493e8..9ef7128cb 100644 --- a/src/overlays/actors/ovl_En_Tab/z_en_tab.c +++ b/src/overlays/actors/ovl_En_Tab/z_en_tab.c @@ -9,7 +9,7 @@ void EnTab_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTab_Update(Actor* thisx, GlobalContext* globalCtx); void EnTab_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tab_InitVars = { ACTOR_EN_TAB, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Tab_InitVars = { (ActorFunc)EnTab_Update, (ActorFunc)EnTab_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE1A98 = { + { COLTYPE_HIT1, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 14, 62, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80BE1AC4 = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderCylinderInit D_80BE1A98; +extern CollisionCheckInfoInit2 D_80BE1AC4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tab_0x80BE04E0/func_80BE04E0.asm") diff --git a/src/overlays/actors/ovl_En_Takaraya/z_en_takaraya.c b/src/overlays/actors/ovl_En_Takaraya/z_en_takaraya.c index 6dcb95dd6..de841a12d 100644 --- a/src/overlays/actors/ovl_En_Takaraya/z_en_takaraya.c +++ b/src/overlays/actors/ovl_En_Takaraya/z_en_takaraya.c @@ -9,7 +9,7 @@ void EnTakaraya_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTakaraya_Update(Actor* thisx, GlobalContext* globalCtx); void EnTakaraya_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Takaraya_InitVars = { ACTOR_EN_TAKARAYA, ACTORCAT_NPC, @@ -21,7 +21,17 @@ const ActorInit En_Takaraya_InitVars = { (ActorFunc)EnTakaraya_Update, (ActorFunc)EnTakaraya_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ADFB20[] = { + ICHAIN_U8(targetMode, 6, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80ADFB20[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Takaraya_0x80ADEB90/EnTakaraya_Init.asm") diff --git a/src/overlays/actors/ovl_En_Talk/z_en_talk.c b/src/overlays/actors/ovl_En_Talk/z_en_talk.c index 719a8e0e0..83fdedd56 100644 --- a/src/overlays/actors/ovl_En_Talk/z_en_talk.c +++ b/src/overlays/actors/ovl_En_Talk/z_en_talk.c @@ -8,7 +8,7 @@ void EnTalk_Init(Actor* thisx, GlobalContext* globalCtx); void EnTalk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTalk_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Talk_InitVars = { ACTOR_EN_TALK, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_Talk_InitVars = { (ActorFunc)EnTalk_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Talk_0x80BDDFE0/EnTalk_Init.asm") diff --git a/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c b/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c index 5e91e1867..aa48acb2b 100644 --- a/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c +++ b/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c @@ -9,7 +9,7 @@ void EnTalkGibud_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTalkGibud_Update(Actor* thisx, GlobalContext* globalCtx); void EnTalkGibud_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Talk_Gibud_InitVars = { ACTOR_EN_TALK_GIBUD, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Talk_Gibud_InitVars = { (ActorFunc)EnTalkGibud_Update, (ActorFunc)EnTalkGibud_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B01350 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7EFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 70, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B0137C = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(2, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(0, 0xD), + /* Normal arrow */ DMG_ENTRY(0, 0xD), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0xD), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(0, 0xD), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0xD), + /* Deku launch */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0xC), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0xE), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B0139C = { 8, 0, 0, 0, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B01448[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -3500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B01350; +extern DamageTable D_80B0137C; +extern CollisionCheckInfoInit2 D_80B0139C; +extern InitChainEntry D_80B01448[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Talk_Gibud_0x80AFE8A0/EnTalkGibud_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tanron1/z_en_tanron1.c b/src/overlays/actors/ovl_En_Tanron1/z_en_tanron1.c index 01a447bd9..186e299cf 100644 --- a/src/overlays/actors/ovl_En_Tanron1/z_en_tanron1.c +++ b/src/overlays/actors/ovl_En_Tanron1/z_en_tanron1.c @@ -9,7 +9,7 @@ void EnTanron1_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTanron1_Update(Actor* thisx, GlobalContext* globalCtx); void EnTanron1_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tanron1_InitVars = { ACTOR_EN_TANRON1, ACTORCAT_ENEMY, @@ -21,7 +21,8 @@ const ActorInit En_Tanron1_InitVars = { (ActorFunc)EnTanron1_Update, (ActorFunc)EnTanron1_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tanron1_0x80BB4E00/EnTanron1_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tanron2/z_en_tanron2.c b/src/overlays/actors/ovl_En_Tanron2/z_en_tanron2.c index 2e801ca7e..10e942ee1 100644 --- a/src/overlays/actors/ovl_En_Tanron2/z_en_tanron2.c +++ b/src/overlays/actors/ovl_En_Tanron2/z_en_tanron2.c @@ -9,7 +9,7 @@ void EnTanron2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTanron2_Update(Actor* thisx, GlobalContext* globalCtx); void EnTanron2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tanron2_InitVars = { ACTOR_EN_TANRON2, ACTORCAT_BOSS, @@ -21,7 +21,65 @@ const ActorInit En_Tanron2_InitVars = { (ActorFunc)EnTanron2_Update, (ActorFunc)EnTanron2_Draw, }; -*/ + + +// static DamageTable sDamageTable = { +static DamageTable D_80BB8170 = { + /* Deku Nut */ DMG_ENTRY(1, 0xF), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(2, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(2, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(2, 0xF), + /* Goron pound */ DMG_ENTRY(2, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(2, 0xF), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0xF), + /* Light ray */ DMG_ENTRY(0, 0xF), + /* Thrown object */ DMG_ENTRY(2, 0xF), + /* Zora punch */ DMG_ENTRY(2, 0xF), + /* Spin attack */ DMG_ENTRY(2, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(2, 0x2), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BB8190 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xFFFFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 30, 50, -25, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BB81BC = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7FFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 22, 42, -21, { 0, 0, 0 } }, +}; + + +extern DamageTable D_80BB8170; +extern ColliderCylinderInit D_80BB8190; +extern ColliderCylinderInit D_80BB81BC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tanron2_0x80BB67D0/EnTanron2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tanron3/z_en_tanron3.c b/src/overlays/actors/ovl_En_Tanron3/z_en_tanron3.c index 3e84b0952..ef8a22c0a 100644 --- a/src/overlays/actors/ovl_En_Tanron3/z_en_tanron3.c +++ b/src/overlays/actors/ovl_En_Tanron3/z_en_tanron3.c @@ -9,7 +9,7 @@ void EnTanron3_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTanron3_Update(Actor* thisx, GlobalContext* globalCtx); void EnTanron3_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tanron3_InitVars = { ACTOR_EN_TANRON3, ACTORCAT_BOSS, @@ -21,7 +21,18 @@ const ActorInit En_Tanron3_InitVars = { (ActorFunc)EnTanron3_Update, (ActorFunc)EnTanron3_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BB9750 = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK3, { 0xF7CFFFFF, 0x00, 0x02 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 7, 10, -5, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BB9750; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tanron3_0x80BB85A0/func_80BB85A0.asm") diff --git a/src/overlays/actors/ovl_En_Tanron4/z_en_tanron4.c b/src/overlays/actors/ovl_En_Tanron4/z_en_tanron4.c index d20d58ed2..3d859a0bd 100644 --- a/src/overlays/actors/ovl_En_Tanron4/z_en_tanron4.c +++ b/src/overlays/actors/ovl_En_Tanron4/z_en_tanron4.c @@ -9,7 +9,7 @@ void EnTanron4_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTanron4_Update(Actor* thisx, GlobalContext* globalCtx); void EnTanron4_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tanron4_InitVars = { ACTOR_EN_TANRON4, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Tanron4_InitVars = { (ActorFunc)EnTanron4_Update, (ActorFunc)EnTanron4_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tanron4_0x80BE3B80/EnTanron4_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tanron5/z_en_tanron5.c b/src/overlays/actors/ovl_En_Tanron5/z_en_tanron5.c index ee633997c..ab1c048f8 100644 --- a/src/overlays/actors/ovl_En_Tanron5/z_en_tanron5.c +++ b/src/overlays/actors/ovl_En_Tanron5/z_en_tanron5.c @@ -9,7 +9,7 @@ void EnTanron5_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTanron5_Update(Actor* thisx, GlobalContext* globalCtx); void EnTanron5_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tanron5_InitVars = { ACTOR_EN_TANRON5, ACTORCAT_BOSS, @@ -21,7 +21,18 @@ const ActorInit En_Tanron5_InitVars = { (ActorFunc)EnTanron5_Update, (ActorFunc)EnTanron5_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BE5DA4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ALL, AC_ON | AC_TYPE_PLAYER | AC_TYPE_ENEMY | AC_TYPE_OTHER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 70, 450, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BE5DA4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tanron5_0x80BE4930/func_80BE4930.asm") diff --git a/src/overlays/actors/ovl_En_Test/z_en_test.c b/src/overlays/actors/ovl_En_Test/z_en_test.c index 4cd1f903f..29e7e28b9 100644 --- a/src/overlays/actors/ovl_En_Test/z_en_test.c +++ b/src/overlays/actors/ovl_En_Test/z_en_test.c @@ -9,7 +9,7 @@ void EnTest_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTest_Update(Actor* thisx, GlobalContext* globalCtx); void EnTest_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test_InitVars = { ACTOR_EN_TEST, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Test_InitVars = { (ActorFunc)EnTest_Update, (ActorFunc)EnTest_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test_0x80862B70/func_80862B70.asm") diff --git a/src/overlays/actors/ovl_En_Test2/z_en_test2.c b/src/overlays/actors/ovl_En_Test2/z_en_test2.c index 46d25ee51..435c72230 100644 --- a/src/overlays/actors/ovl_En_Test2/z_en_test2.c +++ b/src/overlays/actors/ovl_En_Test2/z_en_test2.c @@ -7,7 +7,7 @@ void EnTest2_Init(Actor* thisx, GlobalContext* globalCtx); void EnTest2_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test2_InitVars = { ACTOR_EN_TEST2, ACTORCAT_BG, @@ -19,7 +19,19 @@ const ActorInit En_Test2_InitVars = { (ActorFunc)EnTest2_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A3E74C[] = { + ICHAIN_VEC3F(scale, 1, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 8000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 2500, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A3E74C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test2_0x80A3E390/EnTest2_Init.asm") diff --git a/src/overlays/actors/ovl_En_Test3/z_en_test3.c b/src/overlays/actors/ovl_En_Test3/z_en_test3.c index 0f2999b7a..b114a8236 100644 --- a/src/overlays/actors/ovl_En_Test3/z_en_test3.c +++ b/src/overlays/actors/ovl_En_Test3/z_en_test3.c @@ -8,7 +8,7 @@ void EnTest3_Init(Actor* thisx, GlobalContext* globalCtx); void EnTest3_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTest3_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test3_InitVars = { ACTOR_EN_TEST3, ACTORCAT_NPC, @@ -20,7 +20,8 @@ const ActorInit En_Test3_InitVars = { (ActorFunc)EnTest3_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test3_0x80A3E7E0/func_80A3E7E0.asm") diff --git a/src/overlays/actors/ovl_En_Test4/z_en_test4.c b/src/overlays/actors/ovl_En_Test4/z_en_test4.c index 01fe8d332..d634b5e9d 100644 --- a/src/overlays/actors/ovl_En_Test4/z_en_test4.c +++ b/src/overlays/actors/ovl_En_Test4/z_en_test4.c @@ -8,7 +8,7 @@ void EnTest4_Init(Actor* thisx, GlobalContext* globalCtx); void EnTest4_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTest4_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test4_InitVars = { ACTOR_EN_TEST4, ACTORCAT_SWITCH, @@ -20,7 +20,8 @@ const ActorInit En_Test4_InitVars = { (ActorFunc)EnTest4_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test4_0x80A41D70/func_80A41D70.asm") diff --git a/src/overlays/actors/ovl_En_Test5/z_en_test5.c b/src/overlays/actors/ovl_En_Test5/z_en_test5.c index c41b66094..879c5b87a 100644 --- a/src/overlays/actors/ovl_En_Test5/z_en_test5.c +++ b/src/overlays/actors/ovl_En_Test5/z_en_test5.c @@ -8,7 +8,7 @@ void EnTest5_Init(Actor* thisx, GlobalContext* globalCtx); void EnTest5_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTest5_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test5_InitVars = { ACTOR_EN_TEST5, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_Test5_InitVars = { (ActorFunc)EnTest5_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test5_0x80A903B0/func_80A903B0.asm") diff --git a/src/overlays/actors/ovl_En_Test6/z_en_test6.c b/src/overlays/actors/ovl_En_Test6/z_en_test6.c index 8c9cfd208..6810b54f1 100644 --- a/src/overlays/actors/ovl_En_Test6/z_en_test6.c +++ b/src/overlays/actors/ovl_En_Test6/z_en_test6.c @@ -9,7 +9,7 @@ void EnTest6_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTest6_Update(Actor* thisx, GlobalContext* globalCtx); void EnTest6_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test6_InitVars = { ACTOR_EN_TEST6, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Test6_InitVars = { (ActorFunc)EnTest6_Update, (ActorFunc)EnTest6_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test6_0x80A90730/func_80A90730.asm") diff --git a/src/overlays/actors/ovl_En_Test7/z_en_test7.c b/src/overlays/actors/ovl_En_Test7/z_en_test7.c index b34fac1d1..faf5fce28 100644 --- a/src/overlays/actors/ovl_En_Test7/z_en_test7.c +++ b/src/overlays/actors/ovl_En_Test7/z_en_test7.c @@ -9,7 +9,7 @@ void EnTest7_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTest7_Update(Actor* thisx, GlobalContext* globalCtx); void EnTest7_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Test7_InitVars = { ACTOR_EN_TEST7, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Test7_InitVars = { (ActorFunc)EnTest7_Update, (ActorFunc)EnTest7_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Test7_0x80AF0820/func_80AF0820.asm") diff --git a/src/overlays/actors/ovl_En_Tg/z_en_tg.c b/src/overlays/actors/ovl_En_Tg/z_en_tg.c index 4239f5281..ce349d243 100644 --- a/src/overlays/actors/ovl_En_Tg/z_en_tg.c +++ b/src/overlays/actors/ovl_En_Tg/z_en_tg.c @@ -9,7 +9,7 @@ void EnTg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTg_Update(Actor* thisx, GlobalContext* globalCtx); void EnTg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tg_InitVars = { ACTOR_EN_TG, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Tg_InitVars = { (ActorFunc)EnTg_Update, (ActorFunc)EnTg_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809901C0 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_809901EC = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_809901F8 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_809901C0; +extern CollisionCheckInfoInit2 D_809901EC; +extern DamageTable D_809901F8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tg_0x8098F800/func_8098F800.asm") diff --git a/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c b/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c index 751ae3ba0..d2570b845 100644 --- a/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c +++ b/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c @@ -9,7 +9,7 @@ void EnThiefbird_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnThiefbird_Update(Actor* thisx, GlobalContext* globalCtx); void EnThiefbird_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Thiefbird_InitVars = { ACTOR_EN_THIEFBIRD, ACTORCAT_ENEMY, @@ -21,7 +21,87 @@ const ActorInit En_Thiefbird_InitVars = { (ActorFunc)EnThiefbird_Update, (ActorFunc)EnThiefbird_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[3] = { +static ColliderJntSphElementInit D_80C135C0[3] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 1, { { 0, 0, 0 }, 24 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 9, { { 900, -600, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON, OCELEM_ON, }, + { 12, { { 1200, 0, 0 }, 9 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80C1362C = { + { COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 3, D_80C135C0, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80C1363C = { 24, 15, 30, 30 }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80C13644 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C13670[] = { + ICHAIN_F32(uncullZoneForward, 3000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 35, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80C135C0[3]; +extern ColliderJntSphInit D_80C1362C; +extern CollisionCheckInfoInit D_80C1363C; +extern DamageTable D_80C13644; +extern InitChainEntry D_80C13670[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Thiefbird_0x80C10770/EnThiefbird_Init.asm") diff --git a/src/overlays/actors/ovl_En_Time_Tag/z_en_time_tag.c b/src/overlays/actors/ovl_En_Time_Tag/z_en_time_tag.c index 8e061c6f8..2c8823f6e 100644 --- a/src/overlays/actors/ovl_En_Time_Tag/z_en_time_tag.c +++ b/src/overlays/actors/ovl_En_Time_Tag/z_en_time_tag.c @@ -8,7 +8,7 @@ void EnTimeTag_Init(Actor* thisx, GlobalContext* globalCtx); void EnTimeTag_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTimeTag_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Time_Tag_InitVars = { ACTOR_EN_TIME_TAG, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit En_Time_Tag_InitVars = { (ActorFunc)EnTimeTag_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Time_Tag_0x80AC9EA0/EnTimeTag_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tite/z_en_tite.c b/src/overlays/actors/ovl_En_Tite/z_en_tite.c index 4fe7bda1c..c94bf38eb 100644 --- a/src/overlays/actors/ovl_En_Tite/z_en_tite.c +++ b/src/overlays/actors/ovl_En_Tite/z_en_tite.c @@ -9,7 +9,7 @@ void EnTite_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTite_Update(Actor* thisx, GlobalContext* globalCtx); void EnTite_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tite_InitVars = { ACTOR_EN_TITE, ACTORCAT_ENEMY, @@ -21,7 +21,71 @@ const ActorInit En_Tite_InitVars = { (ActorFunc)EnTite_Update, (ActorFunc)EnTite_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80896AD0 = { + { COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x08 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_HARD, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 0, { { 0, 1500, 0 }, 20 }, 100 }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80896AFC = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80896B1C = { 2, 40, 40, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80896B50[] = { + ICHAIN_S8(hintId, 70, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(minVelocityY, -40, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1000, ICHAIN_STOP), +}; + + +extern ColliderSphereInit D_80896AD0; +extern DamageTable D_80896AFC; +extern CollisionCheckInfoInit D_80896B1C; +extern InitChainEntry D_80896B50[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tite_0x808937F0/EnTite_Init.asm") diff --git a/src/overlays/actors/ovl_En_Tk/z_en_tk.c b/src/overlays/actors/ovl_En_Tk/z_en_tk.c index 741f30178..177dad54e 100644 --- a/src/overlays/actors/ovl_En_Tk/z_en_tk.c +++ b/src/overlays/actors/ovl_En_Tk/z_en_tk.c @@ -9,7 +9,7 @@ void EnTk_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTk_Update(Actor* thisx, GlobalContext* globalCtx); void EnTk_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tk_InitVars = { ACTOR_EN_TK, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Tk_InitVars = { (ActorFunc)EnTk_Update, (ActorFunc)EnTk_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AEF830 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 30, 52, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80AEF830; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tk_0x80AEC460/func_80AEC460.asm") diff --git a/src/overlays/actors/ovl_En_Trt/z_en_trt.c b/src/overlays/actors/ovl_En_Trt/z_en_trt.c index 430f3972f..e88aed7eb 100644 --- a/src/overlays/actors/ovl_En_Trt/z_en_trt.c +++ b/src/overlays/actors/ovl_En_Trt/z_en_trt.c @@ -9,7 +9,7 @@ void EnTrt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTrt_Update(Actor* thisx, GlobalContext* globalCtx); void EnTrt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Trt_InitVars = { ACTOR_EN_TRT, ACTORCAT_NPC, @@ -21,7 +21,16 @@ const ActorInit En_Trt_InitVars = { (ActorFunc)EnTrt_Update, (ActorFunc)EnTrt_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A8FEF8[] = { + ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A8FEF8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Trt_0x80A8B770/func_80A8B770.asm") diff --git a/src/overlays/actors/ovl_En_Trt2/z_en_trt2.c b/src/overlays/actors/ovl_En_Trt2/z_en_trt2.c index 8f3327d74..7f34c7b17 100644 --- a/src/overlays/actors/ovl_En_Trt2/z_en_trt2.c +++ b/src/overlays/actors/ovl_En_Trt2/z_en_trt2.c @@ -8,7 +8,7 @@ void EnTrt2_Init(Actor* thisx, GlobalContext* globalCtx); void EnTrt2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTrt2_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Trt2_InitVars = { ACTOR_EN_TRT2, ACTORCAT_NPC, @@ -20,7 +20,69 @@ const ActorInit En_Trt2_InitVars = { (ActorFunc)EnTrt2_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AD58A0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 32, 56, 30, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80AD58CC = { 1, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80AD58D8 = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x1), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0x0), + /* Ice arrow */ DMG_ENTRY(1, 0x0), + /* Light arrow */ DMG_ENTRY(1, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AD5964[] = { + ICHAIN_U8(targetMode, 3, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AD58A0; +extern CollisionCheckInfoInit2 D_80AD58CC; +extern DamageTable D_80AD58D8; +extern InitChainEntry D_80AD5964[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Trt2_0x80AD3380/func_80AD3380.asm") diff --git a/src/overlays/actors/ovl_En_Tru/z_en_tru.c b/src/overlays/actors/ovl_En_Tru/z_en_tru.c index bcbc2a135..f5f20bb44 100644 --- a/src/overlays/actors/ovl_En_Tru/z_en_tru.c +++ b/src/overlays/actors/ovl_En_Tru/z_en_tru.c @@ -9,7 +9,7 @@ void EnTru_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTru_Update(Actor* thisx, GlobalContext* globalCtx); void EnTru_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tru_InitVars = { ACTOR_EN_TRU, ACTORCAT_NPC, @@ -21,7 +21,23 @@ const ActorInit En_Tru_InitVars = { (ActorFunc)EnTru_Update, (ActorFunc)EnTru_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80A8B2A0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 32 }, 100 }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80A8B2CC = { 1, 20, 0, 0, MASS_IMMOVABLE }; + + +extern ColliderSphereInit D_80A8B2A0; +extern CollisionCheckInfoInit2 D_80A8B2CC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tru_0x80A85620/func_80A85620.asm") diff --git a/src/overlays/actors/ovl_En_Tru_Mt/z_en_tru_mt.c b/src/overlays/actors/ovl_En_Tru_Mt/z_en_tru_mt.c index 129070a10..4a1046efe 100644 --- a/src/overlays/actors/ovl_En_Tru_Mt/z_en_tru_mt.c +++ b/src/overlays/actors/ovl_En_Tru_Mt/z_en_tru_mt.c @@ -9,7 +9,7 @@ void EnTruMt_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTruMt_Update(Actor* thisx, GlobalContext* globalCtx); void EnTruMt_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tru_Mt_InitVars = { ACTOR_EN_TRU_MT, ACTORCAT_NPC, @@ -21,7 +21,56 @@ const ActorInit En_Tru_Mt_InitVars = { (ActorFunc)EnTruMt_Update, (ActorFunc)EnTruMt_Draw, }; -*/ + + +// static ColliderSphereInit sSphereInit = { +static ColliderSphereInit D_80B77510 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_SPHERE, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 22 }, 100 }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B7753C = { + /* Deku Nut */ DMG_ENTRY(1, 0x0), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0x0), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(1, 0xF), + /* Ice arrow */ DMG_ENTRY(1, 0xF), + /* Light arrow */ DMG_ENTRY(1, 0xF), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0x0), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(1, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(1, 0x0), + /* Light ray */ DMG_ENTRY(1, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(1, 0x0), + /* Normal Roll */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(1, 0x0), + /* Unblockable */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(1, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderSphereInit D_80B77510; +extern DamageTable D_80B7753C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tru_Mt_0x80B76030/func_80B76030.asm") diff --git a/src/overlays/actors/ovl_En_Tsn/z_en_tsn.c b/src/overlays/actors/ovl_En_Tsn/z_en_tsn.c index dea348c71..b4c7e65eb 100644 --- a/src/overlays/actors/ovl_En_Tsn/z_en_tsn.c +++ b/src/overlays/actors/ovl_En_Tsn/z_en_tsn.c @@ -9,7 +9,7 @@ void EnTsn_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTsn_Update(Actor* thisx, GlobalContext* globalCtx); void EnTsn_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Tsn_InitVars = { ACTOR_EN_TSN, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Tsn_InitVars = { (ActorFunc)EnTsn_Update, (ActorFunc)EnTsn_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AE1190 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80AE1190; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Tsn_0x80ADFCA0/func_80ADFCA0.asm") diff --git a/src/overlays/actors/ovl_En_Twig/z_en_twig.c b/src/overlays/actors/ovl_En_Twig/z_en_twig.c index c0c79a784..ad82d45de 100644 --- a/src/overlays/actors/ovl_En_Twig/z_en_twig.c +++ b/src/overlays/actors/ovl_En_Twig/z_en_twig.c @@ -9,7 +9,7 @@ void EnTwig_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnTwig_Update(Actor* thisx, GlobalContext* globalCtx); void EnTwig_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Twig_InitVars = { ACTOR_EN_TWIG, ACTORCAT_MISC, @@ -21,7 +21,19 @@ const ActorInit En_Twig_InitVars = { (ActorFunc)EnTwig_Update, (ActorFunc)EnTwig_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AC10C0[] = { + ICHAIN_F32(uncullZoneScale, 40, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 40, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AC10C0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Twig_0x80AC0830/EnTwig_Init.asm") diff --git a/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c b/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c index 3e7e088cb..94446bd48 100644 --- a/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c +++ b/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c @@ -9,7 +9,7 @@ void EnViewer_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnViewer_Update(Actor* thisx, GlobalContext* globalCtx); void EnViewer_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Viewer_InitVars = { ACTOR_EN_VIEWER, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Viewer_InitVars = { (ActorFunc)EnViewer_Update, (ActorFunc)EnViewer_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Viewer_0x8089EE20/func_8089EE20.asm") diff --git a/src/overlays/actors/ovl_En_Vm/z_en_vm.c b/src/overlays/actors/ovl_En_Vm/z_en_vm.c index 4ec5da5fd..c60b20f8b 100644 --- a/src/overlays/actors/ovl_En_Vm/z_en_vm.c +++ b/src/overlays/actors/ovl_En_Vm/z_en_vm.c @@ -9,7 +9,7 @@ void EnVm_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnVm_Update(Actor* thisx, GlobalContext* globalCtx); void EnVm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Vm_InitVars = { ACTOR_EN_VM, ACTORCAT_ENEMY, @@ -21,7 +21,99 @@ const ActorInit En_Vm_InitVars = { (ActorFunc)EnVm_Update, (ActorFunc)EnVm_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_808CD4C0[2] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 2, { { 0, 0, 0 }, 20 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 10, { { 0, 2300, 0 }, 33 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808CD508 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 2, D_808CD4C0, // sJntSphElementsInit, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[1] = { +static ColliderTrisElementInit D_808CD518[1] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_808CD554 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 1, D_808CD518, // sTrisElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_808CD564 = { + /* Deku Nut */ DMG_ENTRY(0, 0xF), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0xF), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(0, 0xF), + /* Sword */ DMG_ENTRY(0, 0xF), + /* Goron pound */ DMG_ENTRY(0, 0xF), + /* Fire arrow */ DMG_ENTRY(0, 0xF), + /* Ice arrow */ DMG_ENTRY(0, 0xF), + /* Light arrow */ DMG_ENTRY(0, 0xF), + /* Goron spikes */ DMG_ENTRY(0, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0xF), + /* Zora barrier */ DMG_ENTRY(0, 0xF), + /* Normal shield */ DMG_ENTRY(0, 0xF), + /* Light ray */ DMG_ENTRY(0, 0xF), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0xF), + /* Spin attack */ DMG_ENTRY(0, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0xF), + /* Normal Roll */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0xF), + /* Unblockable */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0xF), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808CD584 = { 2, 25, 100, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808CD5AC[] = { + ICHAIN_VEC3F_DIV1000(scale, 14, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 1000, ICHAIN_CONTINUE), + ICHAIN_S8(hintId, 57, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_808CD4C0[2]; +extern ColliderJntSphInit D_808CD508; +extern ColliderTrisElementInit D_808CD518[1]; +extern ColliderTrisInit D_808CD554; +extern DamageTable D_808CD564; +extern CollisionCheckInfoInit D_808CD584; +extern InitChainEntry D_808CD5AC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Vm_0x808CC260/EnVm_Init.asm") diff --git a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c index 5d0dfeaed..31740c9c8 100644 --- a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c +++ b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c @@ -9,7 +9,7 @@ void EnWallmas_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWallmas_Update(Actor* thisx, GlobalContext* globalCtx); void EnWallmas_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wallmas_InitVars = { ACTOR_EN_WALLMAS, ACTORCAT_ENEMY, @@ -21,7 +21,70 @@ const ActorInit En_Wallmas_InitVars = { (ActorFunc)EnWallmas_Update, (ActorFunc)EnWallmas_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80876360 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_8087638C = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(1, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(1, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_808763AC = { 3, 30, 40, 150 }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808763B4[] = { + ICHAIN_S8(hintId, 48, ICHAIN_CONTINUE), + ICHAIN_F32(targetArrowOffset, 5500, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80876360; +extern DamageTable D_8087638C; +extern CollisionCheckInfoInit D_808763AC; +extern InitChainEntry D_808763B4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wallmas_0x80874810/EnWallmas_Init.asm") diff --git a/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c b/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c index 758e6222d..3305c6048 100644 --- a/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c +++ b/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c @@ -8,7 +8,7 @@ void EnWarptag_Init(Actor* thisx, GlobalContext* globalCtx); void EnWarptag_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWarptag_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Warp_tag_InitVars = { ACTOR_EN_WARP_TAG, ACTORCAT_ITEMACTION, @@ -20,7 +20,17 @@ const ActorInit En_Warp_tag_InitVars = { (ActorFunc)EnWarptag_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809C1008[] = { + ICHAIN_VEC3F(scale, 1, ICHAIN_CONTINUE), + ICHAIN_VEC3S(shape.rot, 0, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809C1008[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Warp_tag_0x809C0760/EnWarptag_Init.asm") diff --git a/src/overlays/actors/ovl_En_Water_Effect/z_en_water_effect.c b/src/overlays/actors/ovl_En_Water_Effect/z_en_water_effect.c index 0848eff37..1317ccf65 100644 --- a/src/overlays/actors/ovl_En_Water_Effect/z_en_water_effect.c +++ b/src/overlays/actors/ovl_En_Water_Effect/z_en_water_effect.c @@ -9,7 +9,7 @@ void EnWaterEffect_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWaterEffect_Update(Actor* thisx, GlobalContext* globalCtx); void EnWaterEffect_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Water_Effect_InitVars = { ACTOR_EN_WATER_EFFECT, ACTORCAT_BOSS, @@ -21,7 +21,8 @@ const ActorInit En_Water_Effect_InitVars = { (ActorFunc)EnWaterEffect_Update, (ActorFunc)EnWaterEffect_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Water_Effect_0x80A587A0/func_80A587A0.asm") diff --git a/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c b/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c index 34d8d2099..2c7f1c973 100644 --- a/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c +++ b/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c @@ -9,7 +9,7 @@ void EnWdhand_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWdhand_Update(Actor* thisx, GlobalContext* globalCtx); void EnWdhand_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wdhand_InitVars = { ACTOR_EN_WDHAND, ACTORCAT_ENEMY, @@ -21,7 +21,93 @@ const ActorInit En_Wdhand_InitVars = { (ActorFunc)EnWdhand_Update, (ActorFunc)EnWdhand_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[7] = { +static ColliderJntSphElementInit D_80AF63E0[7] = { + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 575, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 1725, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 575, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 1725, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 575, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 1725, 0 }, 10 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, { { 0, 1000, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80AF64DC = { + { COLTYPE_HIT0, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 7, D_80AF63E0, // sJntSphElementsInit, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_80AF64EC = { 1, 25, 25, MASS_HEAVY }; + + +// static DamageTable sDamageTable = { +static DamageTable D_80AF64F4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(1, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +extern ColliderJntSphElementInit D_80AF63E0[7]; +extern ColliderJntSphInit D_80AF64DC; +extern CollisionCheckInfoInit D_80AF64EC; +extern DamageTable D_80AF64F4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wdhand_0x80AF43F0/EnWdhand_Init.asm") diff --git a/src/overlays/actors/ovl_En_Wf/z_en_wf.c b/src/overlays/actors/ovl_En_Wf/z_en_wf.c index df8966808..806b09c66 100644 --- a/src/overlays/actors/ovl_En_Wf/z_en_wf.c +++ b/src/overlays/actors/ovl_En_Wf/z_en_wf.c @@ -9,7 +9,7 @@ void EnWf_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWf_Update(Actor* thisx, GlobalContext* globalCtx); void EnWf_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wf_InitVars = { ACTOR_EN_WF, ACTORCAT_PROP, @@ -21,7 +21,145 @@ const ActorInit En_Wf_InitVars = { (ActorFunc)EnWf_Update, (ActorFunc)EnWf_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[4] = { +static ColliderJntSphElementInit D_80994170[4] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 15, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x10 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 21, { { 0, 0, 0 }, 15 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 17, { { 800, 0, 0 }, 25 }, 100 }, + }, + { + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 12, { { 0, 0, 0 }, 30 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80994200 = { + { COLTYPE_METAL, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 4, D_80994170, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80994210 = { + { COLTYPE_HIT5, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 20, 50, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8099423C = { + { COLTYPE_HIT5, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 15, 20, -15, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80994268 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(3, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80994288 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0x0), + /* Horse trample */ DMG_ENTRY(1, 0x0), + /* Explosives */ DMG_ENTRY(1, 0x0), + /* Zora boomerang */ DMG_ENTRY(1, 0x0), + /* Normal arrow */ DMG_ENTRY(1, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0x0), + /* Sword */ DMG_ENTRY(1, 0x0), + /* Goron pound */ DMG_ENTRY(3, 0x0), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(1, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(1, 0x0), + /* Deku launch */ DMG_ENTRY(2, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x5), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0x0), + /* Zora punch */ DMG_ENTRY(1, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_809942A8 = { 8, 50, 100, MASS_HEAVY }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809942D0[] = { + ICHAIN_F32(targetArrowOffset, 2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80994170[4]; +extern ColliderJntSphInit D_80994200; +extern ColliderCylinderInit D_80994210; +extern ColliderCylinderInit D_8099423C; +extern DamageTable D_80994268; +extern DamageTable D_80994288; +extern CollisionCheckInfoInit D_809942A8; +extern InitChainEntry D_809942D0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wf_0x80990310/EnWf_Init.asm") diff --git a/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c b/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c index 6e4611eb5..3e5895198 100644 --- a/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c +++ b/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c @@ -9,7 +9,7 @@ void EnWiz_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWiz_Update(Actor* thisx, GlobalContext* globalCtx); void EnWiz_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wiz_InitVars = { ACTOR_EN_WIZ, ACTORCAT_ENEMY, @@ -21,7 +21,147 @@ const ActorInit En_Wiz_InitVars = { (ActorFunc)EnWiz_Update, (ActorFunc)EnWiz_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[10] = { +static ColliderJntSphElementInit D_80A48B50[10] = { + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 1 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 0, 0 }, 0 }, 0 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A48CB8 = { + { COLTYPE_HIT2, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 10, D_80A48B50, // sJntSphElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A48CC8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0xF7CFFFFF, 0x08, 0x04 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 35, 130, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A48CF4 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(1, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(3, 0xF), + /* Fire arrow */ DMG_ENTRY(1, 0x2), + /* Ice arrow */ DMG_ENTRY(2, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80A48D14 = { + /* Deku Nut */ DMG_ENTRY(0, 0x1), + /* Deku Stick */ DMG_ENTRY(1, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(1, 0xF), + /* Zora boomerang */ DMG_ENTRY(1, 0xF), + /* Normal arrow */ DMG_ENTRY(1, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(1, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(3, 0xF), + /* Fire arrow */ DMG_ENTRY(2, 0x2), + /* Ice arrow */ DMG_ENTRY(1, 0x3), + /* Light arrow */ DMG_ENTRY(2, 0x4), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(1, 0xF), + /* Deku bubble */ DMG_ENTRY(1, 0xF), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x1), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(1, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(1, 0xF), +}; + + +extern ColliderJntSphElementInit D_80A48B50[10]; +extern ColliderJntSphInit D_80A48CB8; +extern ColliderCylinderInit D_80A48CC8; +extern DamageTable D_80A48CF4; +extern DamageTable D_80A48D14; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wiz_0x80A45360/EnWiz_Init.asm") diff --git a/src/overlays/actors/ovl_En_Wiz_Brock/z_en_wiz_brock.c b/src/overlays/actors/ovl_En_Wiz_Brock/z_en_wiz_brock.c index 9c54a3991..85a8b9b1a 100644 --- a/src/overlays/actors/ovl_En_Wiz_Brock/z_en_wiz_brock.c +++ b/src/overlays/actors/ovl_En_Wiz_Brock/z_en_wiz_brock.c @@ -9,7 +9,7 @@ void EnWizBrock_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWizBrock_Update(Actor* thisx, GlobalContext* globalCtx); void EnWizBrock_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wiz_Brock_InitVars = { ACTOR_EN_WIZ_BROCK, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit En_Wiz_Brock_InitVars = { (ActorFunc)EnWizBrock_Update, (ActorFunc)EnWizBrock_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wiz_Brock_0x80A48FE0/EnWizBrock_Init.asm") diff --git a/src/overlays/actors/ovl_En_Wiz_Fire/z_en_wiz_fire.c b/src/overlays/actors/ovl_En_Wiz_Fire/z_en_wiz_fire.c index 3cc8b70b1..b6a272343 100644 --- a/src/overlays/actors/ovl_En_Wiz_Fire/z_en_wiz_fire.c +++ b/src/overlays/actors/ovl_En_Wiz_Fire/z_en_wiz_fire.c @@ -9,7 +9,7 @@ void EnWizFire_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWizFire_Update(Actor* thisx, GlobalContext* globalCtx); void EnWizFire_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wiz_Fire_InitVars = { ACTOR_EN_WIZ_FIRE, ACTORCAT_ENEMY, @@ -21,7 +21,18 @@ const ActorInit En_Wiz_Fire_InitVars = { (ActorFunc)EnWizFire_Update, (ActorFunc)EnWizFire_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A4C1E4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x09, 0x10 }, { 0x01001202, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 0, 0, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80A4C1E4; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wiz_Fire_0x80A496A0/EnWizFire_Init.asm") diff --git a/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c b/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c index e54145578..d30861935 100644 --- a/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c +++ b/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c @@ -9,7 +9,7 @@ void EnWood02_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnWood02_Update(Actor* thisx, GlobalContext* globalCtx); void EnWood02_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Wood02_InitVars = { ACTOR_EN_WOOD02, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit En_Wood02_InitVars = { (ActorFunc)EnWood02_Update, (ActorFunc)EnWood02_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808C4D00 = { + { COLTYPE_TREE, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0x0100020A, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_808C4D00; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Wood02_0x808C3C00/func_808C3C00.asm") diff --git a/src/overlays/actors/ovl_En_Yb/z_en_yb.c b/src/overlays/actors/ovl_En_Yb/z_en_yb.c index 445006584..d6f2495f5 100644 --- a/src/overlays/actors/ovl_En_Yb/z_en_yb.c +++ b/src/overlays/actors/ovl_En_Yb/z_en_yb.c @@ -9,7 +9,7 @@ void EnYb_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnYb_Update(Actor* thisx, GlobalContext* globalCtx); void EnYb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Yb_InitVars = { ACTOR_EN_YB, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Yb_InitVars = { (ActorFunc)EnYb_Update, (ActorFunc)EnYb_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BFB2B0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BFB2B0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Yb_0x80BFA100/EnYb_Init.asm") diff --git a/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c b/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c index 679ad8163..896c38eb5 100644 --- a/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c +++ b/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c @@ -9,7 +9,7 @@ void EnZl4_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZl4_Update(Actor* thisx, GlobalContext* globalCtx); void EnZl4_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zl4_InitVars = { ACTOR_EN_ZL4, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Zl4_InitVars = { (ActorFunc)EnZl4_Update, (ActorFunc)EnZl4_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zl4_0x809A1BB0/func_809A1BB0.asm") diff --git a/src/overlays/actors/ovl_En_Zo/z_en_zo.c b/src/overlays/actors/ovl_En_Zo/z_en_zo.c index 68a99ae06..c9c88dbda 100644 --- a/src/overlays/actors/ovl_En_Zo/z_en_zo.c +++ b/src/overlays/actors/ovl_En_Zo/z_en_zo.c @@ -9,7 +9,7 @@ void EnZo_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZo_Update(Actor* thisx, GlobalContext* globalCtx); void EnZo_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zo_InitVars = { ACTOR_EN_ZO, ACTORCAT_NPC, @@ -21,7 +21,61 @@ const ActorInit En_Zo_InitVars = { (ActorFunc)EnZo_Update, (ActorFunc)EnZo_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8099F4B0 = { + { COLTYPE_HIT0, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 18, 64, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_8099F4DC = { 0, 0, 0, 0, MASS_IMMOVABLE }; + + +// static DamageTable sDamageTable = { +static DamageTable D_8099F4E8 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0x0), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(0, 0x0), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(0, 0x0), + /* Sword */ DMG_ENTRY(0, 0x0), + /* Goron pound */ DMG_ENTRY(0, 0x0), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(0, 0x0), + /* Deku spin */ DMG_ENTRY(0, 0x0), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0x0), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(0, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +extern ColliderCylinderInit D_8099F4B0; +extern CollisionCheckInfoInit2 D_8099F4DC; +extern DamageTable D_8099F4E8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zo_0x8099E790/func_8099E790.asm") diff --git a/src/overlays/actors/ovl_En_Zob/z_en_zob.c b/src/overlays/actors/ovl_En_Zob/z_en_zob.c index 416816dc6..842f8a492 100644 --- a/src/overlays/actors/ovl_En_Zob/z_en_zob.c +++ b/src/overlays/actors/ovl_En_Zob/z_en_zob.c @@ -9,7 +9,7 @@ void EnZob_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZob_Update(Actor* thisx, GlobalContext* globalCtx); void EnZob_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zob_InitVars = { ACTOR_EN_ZOB, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zob_InitVars = { (ActorFunc)EnZob_Update, (ActorFunc)EnZob_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BA10D0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BA10D0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zob_0x80B9F570/EnZob_Init.asm") diff --git a/src/overlays/actors/ovl_En_Zod/z_en_zod.c b/src/overlays/actors/ovl_En_Zod/z_en_zod.c index 852e427b6..8162d318d 100644 --- a/src/overlays/actors/ovl_En_Zod/z_en_zod.c +++ b/src/overlays/actors/ovl_En_Zod/z_en_zod.c @@ -9,7 +9,7 @@ void EnZod_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZod_Update(Actor* thisx, GlobalContext* globalCtx); void EnZod_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zod_InitVars = { ACTOR_EN_ZOD, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zod_InitVars = { (ActorFunc)EnZod_Update, (ActorFunc)EnZod_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BB0540 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 60, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BB0540; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zod_0x80BAEF70/EnZod_Init.asm") diff --git a/src/overlays/actors/ovl_En_Zog/z_en_zog.c b/src/overlays/actors/ovl_En_Zog/z_en_zog.c index 1c29ae2b7..7b502bb12 100644 --- a/src/overlays/actors/ovl_En_Zog/z_en_zog.c +++ b/src/overlays/actors/ovl_En_Zog/z_en_zog.c @@ -9,7 +9,7 @@ void EnZog_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZog_Update(Actor* thisx, GlobalContext* globalCtx); void EnZog_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zog_InitVars = { ACTOR_EN_ZOG, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zog_InitVars = { (ActorFunc)EnZog_Update, (ActorFunc)EnZog_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B95880 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80B95880; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zog_0x80B93310/func_80B93310.asm") diff --git a/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c b/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c index a01e631fa..108e5924e 100644 --- a/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c +++ b/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c @@ -9,7 +9,7 @@ void EnZoraegg_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZoraegg_Update(Actor* thisx, GlobalContext* globalCtx); void EnZoraegg_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zoraegg_InitVars = { ACTOR_EN_ZORAEGG, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit En_Zoraegg_InitVars = { (ActorFunc)EnZoraegg_Update, (ActorFunc)EnZoraegg_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zoraegg_0x80B31590/func_80B31590.asm") diff --git a/src/overlays/actors/ovl_En_Zos/z_en_zos.c b/src/overlays/actors/ovl_En_Zos/z_en_zos.c index 3aa7e7618..a57725230 100644 --- a/src/overlays/actors/ovl_En_Zos/z_en_zos.c +++ b/src/overlays/actors/ovl_En_Zos/z_en_zos.c @@ -9,7 +9,7 @@ void EnZos_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZos_Update(Actor* thisx, GlobalContext* globalCtx); void EnZos_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zos_InitVars = { ACTOR_EN_ZOS, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zos_InitVars = { (ActorFunc)EnZos_Update, (ActorFunc)EnZos_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BBC6F0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 60, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BBC6F0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zos_0x80BBACA0/EnZos_Init.asm") diff --git a/src/overlays/actors/ovl_En_Zot/z_en_zot.c b/src/overlays/actors/ovl_En_Zot/z_en_zot.c index 2d05eff8c..6f57e1d49 100644 --- a/src/overlays/actors/ovl_En_Zot/z_en_zot.c +++ b/src/overlays/actors/ovl_En_Zot/z_en_zot.c @@ -9,7 +9,7 @@ void EnZot_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZot_Update(Actor* thisx, GlobalContext* globalCtx); void EnZot_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zot_InitVars = { ACTOR_EN_ZOT, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zot_InitVars = { (ActorFunc)EnZot_Update, (ActorFunc)EnZot_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B998E0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80B998E0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zot_0x80B965D0/func_80B965D0.asm") diff --git a/src/overlays/actors/ovl_En_Zov/z_en_zov.c b/src/overlays/actors/ovl_En_Zov/z_en_zov.c index d5016b7be..045c05321 100644 --- a/src/overlays/actors/ovl_En_Zov/z_en_zov.c +++ b/src/overlays/actors/ovl_En_Zov/z_en_zov.c @@ -9,7 +9,7 @@ void EnZov_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZov_Update(Actor* thisx, GlobalContext* globalCtx); void EnZov_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zov_InitVars = { ACTOR_EN_ZOV, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zov_InitVars = { (ActorFunc)EnZov_Update, (ActorFunc)EnZov_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BD26E0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 20, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BD26E0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zov_0x80BD11E0/EnZov_Init.asm") diff --git a/src/overlays/actors/ovl_En_Zow/z_en_zow.c b/src/overlays/actors/ovl_En_Zow/z_en_zow.c index 2354a5403..8d1c3c875 100644 --- a/src/overlays/actors/ovl_En_Zow/z_en_zow.c +++ b/src/overlays/actors/ovl_En_Zow/z_en_zow.c @@ -9,7 +9,7 @@ void EnZow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnZow_Update(Actor* thisx, GlobalContext* globalCtx); void EnZow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit En_Zow_InitVars = { ACTOR_EN_ZOW, ACTORCAT_NPC, @@ -21,7 +21,18 @@ const ActorInit En_Zow_InitVars = { (ActorFunc)EnZow_Update, (ActorFunc)EnZow_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BDDCF0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_ENEMY, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 40, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80BDDCF0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_En_Zow_0x80BDC270/func_80BDC270.asm") diff --git a/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c b/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c index 2c47e2d79..26788d084 100644 --- a/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c +++ b/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c @@ -8,7 +8,7 @@ void ItemEtcetera_Init(Actor* thisx, GlobalContext* globalCtx); void ItemEtcetera_Destroy(Actor* thisx, GlobalContext* globalCtx); void ItemEtcetera_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Item_Etcetera_InitVars = { ACTOR_ITEM_ETCETERA, ACTORCAT_PROP, @@ -20,7 +20,8 @@ const ActorInit Item_Etcetera_InitVars = { (ActorFunc)ItemEtcetera_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Item_Etcetera_0x8091FEF0/func_8091FEF0.asm") diff --git a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c index 526cccba0..091e02175 100644 --- a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c +++ b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c @@ -9,7 +9,7 @@ void MirRay_Destroy(Actor* thisx, GlobalContext* globalCtx); void MirRay_Update(Actor* thisx, GlobalContext* globalCtx); void MirRay_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Mir_Ray_InitVars = { ACTOR_MIR_RAY, ACTORCAT_ITEMACTION, @@ -21,7 +21,45 @@ const ActorInit Mir_Ray_InitVars = { (ActorFunc)MirRay_Update, (ActorFunc)MirRay_Draw, }; -*/ + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_808E3BF4 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0x00200000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_808E3C44[1] = { + { + { ELEMTYPE_UNK0, { 0x00200000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_808E3C68 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 1, D_808E3C44, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808E3DB8[] = { + ICHAIN_VEC3F_DIV1000(scale, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), +}; + + +extern ColliderQuadInit D_808E3BF4; +extern ColliderJntSphElementInit D_808E3C44[1]; +extern ColliderJntSphInit D_808E3C68; +extern InitChainEntry D_808E3DB8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Mir_Ray_0x808E2600/func_808E2600.asm") diff --git a/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c b/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c index c06a9f14e..84ae67a99 100644 --- a/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c +++ b/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c @@ -9,7 +9,7 @@ void MirRay2_Destroy(Actor* thisx, GlobalContext* globalCtx); void MirRay2_Update(Actor* thisx, GlobalContext* globalCtx); void MirRay2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Mir_Ray2_InitVars = { ACTOR_MIR_RAY2, ACTORCAT_ITEMACTION, @@ -21,7 +21,26 @@ const ActorInit Mir_Ray2_InitVars = { (ActorFunc)MirRay2_Update, (ActorFunc)MirRay2_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80AF4350[1] = { + { + { ELEMTYPE_UNK0, { 0x00200000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { 0, { { 0, 0, 0 }, 50 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80AF4374 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_OTHER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, }, + 1, D_80AF4350, // sJntSphElementsInit, +}; + + +extern ColliderJntSphElementInit D_80AF4350[1]; +extern ColliderJntSphInit D_80AF4374; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Mir_Ray2_0x80AF3F70/func_80AF3F70.asm") diff --git a/src/overlays/actors/ovl_Mir_Ray3/z_mir_ray3.c b/src/overlays/actors/ovl_Mir_Ray3/z_mir_ray3.c index b77c2a7c2..a754ff05e 100644 --- a/src/overlays/actors/ovl_Mir_Ray3/z_mir_ray3.c +++ b/src/overlays/actors/ovl_Mir_Ray3/z_mir_ray3.c @@ -9,7 +9,7 @@ void MirRay3_Destroy(Actor* thisx, GlobalContext* globalCtx); void MirRay3_Update(Actor* thisx, GlobalContext* globalCtx); void MirRay3_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Mir_Ray3_InitVars = { ACTOR_MIR_RAY3, ACTORCAT_ITEMACTION, @@ -21,7 +21,27 @@ const ActorInit Mir_Ray3_InitVars = { (ActorFunc)MirRay3_Update, (ActorFunc)MirRay3_Draw, }; -*/ + + +// static ColliderQuadInit sQuadInit = { +static ColliderQuadInit D_80B9F420 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_QUAD, }, + { ELEMTYPE_UNK0, { 0x00200000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_NONE, }, + { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B9F470 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00200000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 10, 10, 0, { 0, 0, 0 } }, +}; + + +extern ColliderQuadInit D_80B9F420; +extern ColliderCylinderInit D_80B9F470; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Mir_Ray3_0x80B9E2C0/MirRay3_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Aqua/z_obj_aqua.c b/src/overlays/actors/ovl_Obj_Aqua/z_obj_aqua.c index 14ca275cd..25008c825 100644 --- a/src/overlays/actors/ovl_Obj_Aqua/z_obj_aqua.c +++ b/src/overlays/actors/ovl_Obj_Aqua/z_obj_aqua.c @@ -9,7 +9,7 @@ void ObjAqua_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjAqua_Update(Actor* thisx, GlobalContext* globalCtx); void ObjAqua_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Aqua_InitVars = { ACTOR_OBJ_AQUA, ACTORCAT_ITEMACTION, @@ -21,7 +21,31 @@ const ActorInit Obj_Aqua_InitVars = { (ActorFunc)ObjAqua_Update, (ActorFunc)ObjAqua_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ACC2C0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_OTHER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_NONE, }, + { 6, 10, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ACC2EC[] = { + ICHAIN_VEC3S(shape.rot, 0, ICHAIN_CONTINUE), + ICHAIN_VEC3S(world.rot, 0, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -900, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 300, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80ACC2C0; +extern InitChainEntry D_80ACC2EC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Aqua_0x80ACB6A0/func_80ACB6A0.asm") diff --git a/src/overlays/actors/ovl_Obj_Armos/z_obj_armos.c b/src/overlays/actors/ovl_Obj_Armos/z_obj_armos.c index 68b2b054b..140d93a94 100644 --- a/src/overlays/actors/ovl_Obj_Armos/z_obj_armos.c +++ b/src/overlays/actors/ovl_Obj_Armos/z_obj_armos.c @@ -9,7 +9,7 @@ void ObjArmos_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjArmos_Update(Actor* thisx, GlobalContext* globalCtx); void ObjArmos_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Armos_InitVars = { ACTOR_OBJ_ARMOS, ACTORCAT_PROP, @@ -21,7 +21,20 @@ const ActorInit Obj_Armos_InitVars = { (ActorFunc)ObjArmos_Update, (ActorFunc)ObjArmos_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809A5BC0[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 120, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 250, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -4000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809A5BC0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Armos_0x809A4E00/func_809A4E00.asm") diff --git a/src/overlays/actors/ovl_Obj_Bean/z_obj_bean.c b/src/overlays/actors/ovl_Obj_Bean/z_obj_bean.c index 70084df84..a441457dd 100644 --- a/src/overlays/actors/ovl_Obj_Bean/z_obj_bean.c +++ b/src/overlays/actors/ovl_Obj_Bean/z_obj_bean.c @@ -8,7 +8,7 @@ void ObjBean_Init(Actor* thisx, GlobalContext* globalCtx); void ObjBean_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjBean_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Bean_InitVars = { ACTOR_OBJ_BEAN, ACTORCAT_BG, @@ -20,7 +20,37 @@ const ActorInit Obj_Bean_InitVars = { (ActorFunc)ObjBean_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80938FA0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 64, 30, -31, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80938FCC = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_OTHER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 10, 10, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8093902C[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80938FA0; +extern ColliderCylinderInit D_80938FCC; +extern InitChainEntry D_8093902C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Bean_0x80936CF0/func_80936CF0.asm") diff --git a/src/overlays/actors/ovl_Obj_Bigicicle/z_obj_bigicicle.c b/src/overlays/actors/ovl_Obj_Bigicicle/z_obj_bigicicle.c index faf687e4a..cf6e899e8 100644 --- a/src/overlays/actors/ovl_Obj_Bigicicle/z_obj_bigicicle.c +++ b/src/overlays/actors/ovl_Obj_Bigicicle/z_obj_bigicicle.c @@ -9,7 +9,7 @@ void ObjBigicicle_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjBigicicle_Update(Actor* thisx, GlobalContext* globalCtx); void ObjBigicicle_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Bigicicle_InitVars = { ACTOR_OBJ_BIGICICLE, ACTORCAT_PROP, @@ -21,7 +21,35 @@ const ActorInit Obj_Bigicicle_InitVars = { (ActorFunc)ObjBigicicle_Update, (ActorFunc)ObjBigicicle_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AE9820 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00003820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 23, 68, -40, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AE984C = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 31, 90, -150, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AE9888[] = { + ICHAIN_F32(gravity, -2, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 5600, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AE9820; +extern ColliderCylinderInit D_80AE984C; +extern InitChainEntry D_80AE9888[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Bigicicle_0x80AE8B70/ObjBigicicle_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c b/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c index 6b2fa299c..88797f6d9 100644 --- a/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c +++ b/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c @@ -7,7 +7,7 @@ void ObjBlockstop_Init(Actor* thisx, GlobalContext* globalCtx); void ObjBlockstop_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Blockstop_InitVars = { ACTOR_OBJ_BLOCKSTOP, ACTORCAT_PROP, @@ -19,7 +19,8 @@ const ActorInit Obj_Blockstop_InitVars = { (ActorFunc)ObjBlockstop_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Blockstop_0x809466A0/ObjBlockstop_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Boat/z_obj_boat.c b/src/overlays/actors/ovl_Obj_Boat/z_obj_boat.c index ead9c0939..eb842de4a 100644 --- a/src/overlays/actors/ovl_Obj_Boat/z_obj_boat.c +++ b/src/overlays/actors/ovl_Obj_Boat/z_obj_boat.c @@ -9,7 +9,7 @@ void ObjBoat_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjBoat_Update(Actor* thisx, GlobalContext* globalCtx); void ObjBoat_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Boat_InitVars = { ACTOR_OBJ_BOAT, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Boat_InitVars = { (ActorFunc)ObjBoat_Update, (ActorFunc)ObjBoat_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B9B680[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B9B680[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Boat_0x80B9AF50/func_80B9AF50.asm") diff --git a/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c b/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c index f81f5d4dc..746086217 100644 --- a/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c +++ b/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c @@ -8,7 +8,7 @@ void ObjBombiwa_Init(Actor* thisx, GlobalContext* globalCtx); void ObjBombiwa_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjBombiwa_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Bombiwa_InitVars = { ACTOR_OBJ_BOMBIWA, ACTORCAT_PROP, @@ -20,7 +20,42 @@ const ActorInit Obj_Bombiwa_InitVars = { (ActorFunc)ObjBombiwa_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8093A940 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x81C37FBE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 55, 70, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8093A96C = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x81C37BBE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 75, 130, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_8093A9B8 = { 0, 12, 60, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8093A9C0[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8093A940; +extern ColliderCylinderInit D_8093A96C; +extern CollisionCheckInfoInit D_8093A9B8; +extern InitChainEntry D_8093A9C0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Bombiwa_0x809393B0/func_809393B0.asm") diff --git a/src/overlays/actors/ovl_Obj_Chan/z_obj_chan.c b/src/overlays/actors/ovl_Obj_Chan/z_obj_chan.c index a04bb5831..6a5b6ac0f 100644 --- a/src/overlays/actors/ovl_Obj_Chan/z_obj_chan.c +++ b/src/overlays/actors/ovl_Obj_Chan/z_obj_chan.c @@ -9,7 +9,7 @@ void ObjChan_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjChan_Update(Actor* thisx, GlobalContext* globalCtx); void ObjChan_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Chan_InitVars = { ACTOR_OBJ_CHAN, ACTORCAT_BG, @@ -21,7 +21,25 @@ const ActorInit Obj_Chan_InitVars = { (ActorFunc)ObjChan_Update, (ActorFunc)ObjChan_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80BBAB30 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 48, 76, -60, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BBAB5C[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80BBAB30; +extern InitChainEntry D_80BBAB5C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Chan_0x80BB98E0/ObjChan_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Chikuwa/z_obj_chikuwa.c b/src/overlays/actors/ovl_Obj_Chikuwa/z_obj_chikuwa.c index bab86c7f0..e166794c0 100644 --- a/src/overlays/actors/ovl_Obj_Chikuwa/z_obj_chikuwa.c +++ b/src/overlays/actors/ovl_Obj_Chikuwa/z_obj_chikuwa.c @@ -9,7 +9,7 @@ void ObjChikuwa_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjChikuwa_Update(Actor* thisx, GlobalContext* globalCtx); void ObjChikuwa_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Chikuwa_InitVars = { ACTOR_OBJ_CHIKUWA, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Chikuwa_InitVars = { (ActorFunc)ObjChikuwa_Update, (ActorFunc)ObjChikuwa_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809B1FC0[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1500, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809B1FC0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Chikuwa_0x809B1550/func_809B1550.asm") diff --git a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c index 0d7c745fd..ec4336c99 100644 --- a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c +++ b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c @@ -9,7 +9,7 @@ void ObjComb_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjComb_Update(Actor* thisx, GlobalContext* globalCtx); void ObjComb_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Comb_InitVars = { ACTOR_OBJ_COMB, ACTORCAT_PROP, @@ -21,7 +21,36 @@ const ActorInit Obj_Comb_InitVars = { (ActorFunc)ObjComb_Update, (ActorFunc)ObjComb_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_8098E440[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x05CBFFBE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8098E464 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_JNTSPH, }, + 1, D_8098E440, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8098E474[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_8098E440[1]; +extern ColliderJntSphInit D_8098E464; +extern InitChainEntry D_8098E474[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Comb_0x8098CE40/func_8098CE40.asm") diff --git a/src/overlays/actors/ovl_Obj_Danpeilift/z_obj_danpeilift.c b/src/overlays/actors/ovl_Obj_Danpeilift/z_obj_danpeilift.c index b91347ce6..b94d0bb24 100644 --- a/src/overlays/actors/ovl_Obj_Danpeilift/z_obj_danpeilift.c +++ b/src/overlays/actors/ovl_Obj_Danpeilift/z_obj_danpeilift.c @@ -9,7 +9,7 @@ void ObjDanpeilift_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjDanpeilift_Update(Actor* thisx, GlobalContext* globalCtx); void ObjDanpeilift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Danpeilift_InitVars = { ACTOR_OBJ_DANPEILIFT, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Danpeilift_InitVars = { (ActorFunc)ObjDanpeilift_Update, (ActorFunc)ObjDanpeilift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C1B540[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 400, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80C1B540[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Danpeilift_0x80C1ADC0/func_80C1ADC0.asm") diff --git a/src/overlays/actors/ovl_Obj_Demo/z_obj_demo.c b/src/overlays/actors/ovl_Obj_Demo/z_obj_demo.c index 058212c77..beea11a98 100644 --- a/src/overlays/actors/ovl_Obj_Demo/z_obj_demo.c +++ b/src/overlays/actors/ovl_Obj_Demo/z_obj_demo.c @@ -7,7 +7,7 @@ void ObjDemo_Init(Actor* thisx, GlobalContext* globalCtx); void ObjDemo_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Demo_InitVars = { ACTOR_OBJ_DEMO, ACTORCAT_PROP, @@ -19,7 +19,8 @@ const ActorInit Obj_Demo_InitVars = { (ActorFunc)ObjDemo_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Demo_0x80983520/ObjDemo_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Dhouse/z_obj_dhouse.c b/src/overlays/actors/ovl_Obj_Dhouse/z_obj_dhouse.c index 5733e6fcb..4b399f275 100644 --- a/src/overlays/actors/ovl_Obj_Dhouse/z_obj_dhouse.c +++ b/src/overlays/actors/ovl_Obj_Dhouse/z_obj_dhouse.c @@ -9,7 +9,7 @@ void ObjDhouse_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjDhouse_Update(Actor* thisx, GlobalContext* globalCtx); void ObjDhouse_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Dhouse_InitVars = { ACTOR_OBJ_DHOUSE, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Dhouse_InitVars = { (ActorFunc)ObjDhouse_Update, (ActorFunc)ObjDhouse_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B13FB4[] = { + ICHAIN_F32(uncullZoneForward, 8000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B13FB4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Dhouse_0x80B12980/ObjDhouse_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c b/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c index abb2e314b..338a59274 100644 --- a/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c +++ b/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c @@ -9,7 +9,7 @@ void ObjDora_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjDora_Update(Actor* thisx, GlobalContext* globalCtx); void ObjDora_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Dora_InitVars = { ACTOR_OBJ_DORA, ACTORCAT_NPC, @@ -21,7 +21,89 @@ const ActorInit Obj_Dora_InitVars = { (ActorFunc)ObjDora_Update, (ActorFunc)ObjDora_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[6] = { +static ColliderTrisElementInit D_80B61310[6] = { + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0x00100000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, -35.0f, 0.0f }, { 260.0f, -185.0f, 0.0f }, { 0.0f, -335.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0x00100000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 260.0f, -185.0f, 0.0f }, { 260.0f, -485.0f, 0.0f }, { 0.0f, -335.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 260.0f, -485.0f, 0.0f }, { 0.0f, -635.0f, 0.0f }, { 0.0f, -335.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, -635.0f, 0.0f }, { -260.0f, -485.0f, 0.0f }, { 0.0f, -335.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -260.0f, -485.0f, 0.0f }, { -260.0f, -185.0f, 0.0f }, { 0.0f, -335.0f, 0.0f } } }, + }, + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -260.0f, -185.0f, 0.0f }, { 0.0f, -35.0f, 0.0f }, { 0.0f, -335.0f, 0.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B61478 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_TRIS, }, + 6, D_80B61310, // sTrisElementsInit, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B61488 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(2, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0xF), + /* Normal arrow */ DMG_ENTRY(0, 0xF), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0xF), + /* Goron punch */ DMG_ENTRY(2, 0xE), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(0, 0xF), + /* Ice arrow */ DMG_ENTRY(0, 0xF), + /* Light arrow */ DMG_ENTRY(0, 0xF), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0xF), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(1, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0xF), + /* Spin attack */ DMG_ENTRY(1, 0x0), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B614A8 = { 8, 0, 0, 0, MASS_HEAVY }; + + +extern ColliderTrisElementInit D_80B61310[6]; +extern ColliderTrisInit D_80B61478; +extern DamageTable D_80B61488; +extern CollisionCheckInfoInit2 D_80B614A8; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Dora_0x80B60AD0/ObjDora_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Dowsing/z_obj_dowsing.c b/src/overlays/actors/ovl_Obj_Dowsing/z_obj_dowsing.c index 351084f62..8c8587bff 100644 --- a/src/overlays/actors/ovl_Obj_Dowsing/z_obj_dowsing.c +++ b/src/overlays/actors/ovl_Obj_Dowsing/z_obj_dowsing.c @@ -8,7 +8,7 @@ void ObjDowsing_Init(Actor* thisx, GlobalContext* globalCtx); void ObjDowsing_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjDowsing_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Dowsing_InitVars = { ACTOR_OBJ_DOWSING, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Obj_Dowsing_InitVars = { (ActorFunc)ObjDowsing_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Dowsing_0x80B23D50/func_80B23D50.asm") diff --git a/src/overlays/actors/ovl_Obj_Driftice/z_obj_driftice.c b/src/overlays/actors/ovl_Obj_Driftice/z_obj_driftice.c index bf89d0eab..699b20f51 100644 --- a/src/overlays/actors/ovl_Obj_Driftice/z_obj_driftice.c +++ b/src/overlays/actors/ovl_Obj_Driftice/z_obj_driftice.c @@ -9,7 +9,7 @@ void ObjDriftice_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjDriftice_Update(Actor* thisx, GlobalContext* globalCtx); void ObjDriftice_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Driftice_InitVars = { ACTOR_OBJ_DRIFTICE, ACTORCAT_BG, @@ -21,7 +21,16 @@ const ActorInit Obj_Driftice_InitVars = { (ActorFunc)ObjDriftice_Update, (ActorFunc)ObjDriftice_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A676F4[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A676F4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Driftice_0x80A66570/func_80A66570.asm") diff --git a/src/overlays/actors/ovl_Obj_Entotu/z_obj_entotu.c b/src/overlays/actors/ovl_Obj_Entotu/z_obj_entotu.c index 55475d5be..0bf094ef9 100644 --- a/src/overlays/actors/ovl_Obj_Entotu/z_obj_entotu.c +++ b/src/overlays/actors/ovl_Obj_Entotu/z_obj_entotu.c @@ -9,7 +9,7 @@ void ObjEntotu_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjEntotu_Update(Actor* thisx, GlobalContext* globalCtx); void ObjEntotu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Entotu_InitVars = { ACTOR_OBJ_ENTOTU, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Entotu_InitVars = { (ActorFunc)ObjEntotu_Update, (ActorFunc)ObjEntotu_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Entotu_0x80A34700/func_80A34700.asm") diff --git a/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c b/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c index ae145c802..f320dae2f 100644 --- a/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c +++ b/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c @@ -8,7 +8,7 @@ void ObjEtcetera_Init(Actor* thisx, GlobalContext* globalCtx); void ObjEtcetera_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjEtcetera_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Etcetera_InitVars = { ACTOR_OBJ_ETCETERA, ACTORCAT_BG, @@ -20,7 +20,18 @@ const ActorInit Obj_Etcetera_InitVars = { (ActorFunc)ObjEtcetera_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A7C790 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 20, 14, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80A7C790; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Etcetera_0x80A7BC70/ObjEtcetera_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Fireshield/z_obj_fireshield.c b/src/overlays/actors/ovl_Obj_Fireshield/z_obj_fireshield.c index 14d8b7644..5d1bd8a26 100644 --- a/src/overlays/actors/ovl_Obj_Fireshield/z_obj_fireshield.c +++ b/src/overlays/actors/ovl_Obj_Fireshield/z_obj_fireshield.c @@ -9,7 +9,7 @@ void ObjFireshield_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjFireshield_Update(Actor* thisx, GlobalContext* globalCtx); void ObjFireshield_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Fireshield_InitVars = { ACTOR_OBJ_FIRESHIELD, ACTORCAT_PROP, @@ -21,7 +21,27 @@ const ActorInit Obj_Fireshield_InitVars = { (ActorFunc)ObjFireshield_Update, (ActorFunc)ObjFireshield_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A4D820 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x01, 0x04 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_ON, }, + { 28, 144, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A4D8A4[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 400, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A4D820; +extern InitChainEntry D_80A4D8A4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Fireshield_0x80A4CA90/func_80A4CA90.asm") diff --git a/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c b/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c index d5d4bc8f6..08a826fe4 100644 --- a/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c +++ b/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c @@ -9,7 +9,7 @@ void ObjFlowerpot_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjFlowerpot_Update(Actor* thisx, GlobalContext* globalCtx); void ObjFlowerpot_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Flowerpot_InitVars = { ACTOR_OBJ_FLOWERPOT, ACTORCAT_PROP, @@ -21,7 +21,42 @@ const ActorInit Obj_Flowerpot_InitVars = { (ActorFunc)ObjFlowerpot_Update, (ActorFunc)ObjFlowerpot_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit D_80A1D3A0[2] = { + { + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x05CBFFBE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 100, 0 }, 12 }, 100 }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x0580C71C, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 1, { { 0, 300, 0 }, 12 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A1D3E8 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_JNTSPH, }, + 2, D_80A1D3A0, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A1D414[] = { + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1600, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80A1D3A0[2]; +extern ColliderJntSphInit D_80A1D3E8; +extern InitChainEntry D_80A1D414[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Flowerpot_0x80A1B3D0/func_80A1B3D0.asm") diff --git a/src/overlays/actors/ovl_Obj_Ghaka/z_obj_ghaka.c b/src/overlays/actors/ovl_Obj_Ghaka/z_obj_ghaka.c index 26322a2eb..a604be5bc 100644 --- a/src/overlays/actors/ovl_Obj_Ghaka/z_obj_ghaka.c +++ b/src/overlays/actors/ovl_Obj_Ghaka/z_obj_ghaka.c @@ -1,6 +1,6 @@ /* * File z_obj_ghaka.c - * Overlay: ovl_obj_ghaka + * Overlay: ovl_Obj_Ghaka * Description: Darmani's Gravestone */ diff --git a/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c b/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c index 26b0c06ed..99334d542 100644 --- a/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c +++ b/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c @@ -9,7 +9,7 @@ void ObjGrass_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjGrass_Update(Actor* thisx, GlobalContext* globalCtx); void ObjGrass_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Grass_InitVars = { ACTOR_OBJ_GRASS, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit Obj_Grass_InitVars = { (ActorFunc)ObjGrass_Update, (ActorFunc)ObjGrass_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809AAB20 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_2, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x0580C71C, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 6, 44, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_809AAB20; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Grass_0x809A9110/func_809A9110.asm") diff --git a/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c b/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c index 09ecb1c28..7583e2c28 100644 --- a/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c +++ b/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c @@ -8,7 +8,7 @@ void ObjGrassCarry_Init(Actor* thisx, GlobalContext* globalCtx); void ObjGrassCarry_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjGrassCarry_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Grass_Carry_InitVars = { ACTOR_OBJ_GRASS_CARRY, ACTORCAT_PROP, @@ -20,7 +20,27 @@ const ActorInit Obj_Grass_Carry_InitVars = { (ActorFunc)ObjGrassCarry_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809ABBD0 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_NONE, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_2, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x00000000, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_NONE, OCELEM_ON, }, + { 10, 44, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809ABC4C[] = { + ICHAIN_F32_DIV1000(gravity, -3200, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -17000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 400, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_809ABBD0; +extern InitChainEntry D_809ABC4C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Grass_Carry_0x809AAE60/func_809AAE60.asm") diff --git a/src/overlays/actors/ovl_Obj_Grass_Unit/z_obj_grass_unit.c b/src/overlays/actors/ovl_Obj_Grass_Unit/z_obj_grass_unit.c index c9cf224ec..7cd18b011 100644 --- a/src/overlays/actors/ovl_Obj_Grass_Unit/z_obj_grass_unit.c +++ b/src/overlays/actors/ovl_Obj_Grass_Unit/z_obj_grass_unit.c @@ -6,7 +6,7 @@ void ObjGrassUnit_Init(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Grass_Unit_InitVars = { ACTOR_OBJ_GRASS_UNIT, ACTORCAT_BG, @@ -18,7 +18,8 @@ const ActorInit Obj_Grass_Unit_InitVars = { (ActorFunc)Actor_Noop, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Grass_Unit_0x809ABDE0/func_809ABDE0.asm") diff --git a/src/overlays/actors/ovl_Obj_Hakaisi/z_obj_hakaisi.c b/src/overlays/actors/ovl_Obj_Hakaisi/z_obj_hakaisi.c index 182a123ce..0e5df3545 100644 --- a/src/overlays/actors/ovl_Obj_Hakaisi/z_obj_hakaisi.c +++ b/src/overlays/actors/ovl_Obj_Hakaisi/z_obj_hakaisi.c @@ -9,7 +9,7 @@ void ObjHakaisi_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHakaisi_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHakaisi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Hakaisi_InitVars = { ACTOR_OBJ_HAKAISI, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Hakaisi_InitVars = { (ActorFunc)ObjHakaisi_Update, (ActorFunc)ObjHakaisi_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Hakaisi_0x80B14180/ObjHakaisi_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c b/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c index 1fe01b458..25490a7ee 100644 --- a/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c +++ b/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c @@ -9,7 +9,7 @@ void ObjHamishi_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHamishi_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHamishi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Hamishi_InitVars = { ACTOR_OBJ_HAMISHI, ACTORCAT_PROP, @@ -21,7 +21,33 @@ const ActorInit Obj_Hamishi_InitVars = { (ActorFunc)ObjHamishi_Update, (ActorFunc)ObjHamishi_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809A1AA0 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x81C37FB6, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 50, 70, 0, { 0, 0, 0 } }, +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit D_809A1ACC = { 0, 12, 60, MASS_IMMOVABLE }; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809A1AE8[] = { + ICHAIN_VEC3F_DIV1000(scale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 250, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_809A1AA0; +extern CollisionCheckInfoInit D_809A1ACC; +extern InitChainEntry D_809A1AE8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Hamishi_0x809A0F20/func_809A0F20.asm") diff --git a/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c b/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c index 7cbe45c11..b82932eaa 100644 --- a/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c +++ b/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c @@ -1,5 +1,6 @@ /* * File: z_obj_hana.c + * Overlay: ovl_Obj_Hana * Description: Orange Graveyard Flower */ diff --git a/src/overlays/actors/ovl_Obj_Hariko/z_obj_hariko.c b/src/overlays/actors/ovl_Obj_Hariko/z_obj_hariko.c index 151dfe777..43d0f0293 100644 --- a/src/overlays/actors/ovl_Obj_Hariko/z_obj_hariko.c +++ b/src/overlays/actors/ovl_Obj_Hariko/z_obj_hariko.c @@ -9,7 +9,7 @@ void ObjHariko_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHariko_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHariko_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Hariko_InitVars = { ACTOR_OBJ_HARIKO, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Hariko_InitVars = { (ActorFunc)ObjHariko_Update, (ActorFunc)ObjHariko_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Hariko_0x80B66A20/ObjHariko_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Hsblock/z_obj_hsblock.c b/src/overlays/actors/ovl_Obj_Hsblock/z_obj_hsblock.c index d75392f66..70a666842 100644 --- a/src/overlays/actors/ovl_Obj_Hsblock/z_obj_hsblock.c +++ b/src/overlays/actors/ovl_Obj_Hsblock/z_obj_hsblock.c @@ -9,7 +9,7 @@ void ObjHsblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHsblock_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHsblock_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Hsblock_InitVars = { ACTOR_OBJ_HSBLOCK, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Hsblock_InitVars = { (ActorFunc)ObjHsblock_Update, (ActorFunc)ObjHsblock_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8093E33C[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8093E33C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Hsblock_0x8093DEA0/func_8093DEA0.asm") diff --git a/src/overlays/actors/ovl_Obj_Hugebombiwa/z_obj_hugebombiwa.c b/src/overlays/actors/ovl_Obj_Hugebombiwa/z_obj_hugebombiwa.c index 8b666d641..717060067 100644 --- a/src/overlays/actors/ovl_Obj_Hugebombiwa/z_obj_hugebombiwa.c +++ b/src/overlays/actors/ovl_Obj_Hugebombiwa/z_obj_hugebombiwa.c @@ -9,7 +9,7 @@ void ObjHugebombiwa_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHugebombiwa_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHugebombiwa_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Hugebombiwa_InitVars = { ACTOR_OBJ_HUGEBOMBIWA, ACTORCAT_PROP, @@ -21,7 +21,27 @@ const ActorInit Obj_Hugebombiwa_InitVars = { (ActorFunc)ObjHugebombiwa_Update, (ActorFunc)ObjHugebombiwa_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A55D00 = { + { COLTYPE_HARD, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x81C37BB6, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 180, 226, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A55D7C[] = { + ICHAIN_F32(uncullZoneForward, 3700, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 900, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 900, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A55D00; +extern InitChainEntry D_80A55D7C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Hugebombiwa_0x80A53BE0/func_80A53BE0.asm") diff --git a/src/overlays/actors/ovl_Obj_Hunsui/z_obj_hunsui.c b/src/overlays/actors/ovl_Obj_Hunsui/z_obj_hunsui.c index 4cb125413..d8518abbc 100644 --- a/src/overlays/actors/ovl_Obj_Hunsui/z_obj_hunsui.c +++ b/src/overlays/actors/ovl_Obj_Hunsui/z_obj_hunsui.c @@ -9,7 +9,7 @@ void ObjHunsui_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHunsui_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHunsui_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Hunsui_InitVars = { ACTOR_OBJ_HUNSUI, ACTORCAT_BG, @@ -21,7 +21,8 @@ const ActorInit Obj_Hunsui_InitVars = { (ActorFunc)ObjHunsui_Update, (ActorFunc)ObjHunsui_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Hunsui_0x80B9C450/func_80B9C450.asm") diff --git a/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c b/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c index a0c554f2c..d79b01c05 100644 --- a/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c +++ b/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c @@ -9,7 +9,7 @@ void ObjIcePoly_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjIcePoly_Update(Actor* thisx, GlobalContext* globalCtx); void ObjIcePoly_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Ice_Poly_InitVars = { ACTOR_OBJ_ICE_POLY, ACTORCAT_ITEMACTION, @@ -21,7 +21,27 @@ const ActorInit Obj_Ice_Poly_InitVars = { (ActorFunc)ObjIcePoly_Update, (ActorFunc)ObjIcePoly_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80932320 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x02, 0x00 }, { 0xF7CFF7FF, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 50, 105, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8093234C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK5, { 0xF7CFFFFF, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 65, 105, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80932320; +extern ColliderCylinderInit D_8093234C; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Ice_Poly_0x80931560/ObjIcePoly_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Iceblock/z_obj_iceblock.c b/src/overlays/actors/ovl_Obj_Iceblock/z_obj_iceblock.c index fb845cf6c..87116a725 100644 --- a/src/overlays/actors/ovl_Obj_Iceblock/z_obj_iceblock.c +++ b/src/overlays/actors/ovl_Obj_Iceblock/z_obj_iceblock.c @@ -9,7 +9,7 @@ void ObjIceblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjIceblock_Update(Actor* thisx, GlobalContext* globalCtx); void ObjIceblock_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Iceblock_InitVars = { ACTOR_OBJ_ICEBLOCK, ACTORCAT_BG, @@ -21,7 +21,31 @@ const ActorInit Obj_Iceblock_InitVars = { (ActorFunc)ObjIceblock_Update, (ActorFunc)ObjIceblock_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A26E50 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_NO_PUSH | OC1_TYPE_PLAYER, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 44, 62, -31, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A26FA4[] = { + ICHAIN_F32_DIV1000(speedXZ, 16000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, -1800, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -26000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 150, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A26E50; +extern InitChainEntry D_80A26FA4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Iceblock_0x80A23090/func_80A23090.asm") diff --git a/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c b/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c index 1ec77ea17..61ffbabea 100644 --- a/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c +++ b/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c @@ -9,7 +9,7 @@ void ObjJgGakki_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjJgGakki_Update(Actor* thisx, GlobalContext* globalCtx); void ObjJgGakki_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Jg_Gakki_InitVars = { ACTOR_OBJ_JG_GAKKI, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Jg_Gakki_InitVars = { (ActorFunc)ObjJgGakki_Update, (ActorFunc)ObjJgGakki_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Jg_Gakki_0x80B961E0/ObjJgGakki_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Jgame_Light/z_obj_jgame_light.c b/src/overlays/actors/ovl_Obj_Jgame_Light/z_obj_jgame_light.c index c51d25e8c..cd57dd3d6 100644 --- a/src/overlays/actors/ovl_Obj_Jgame_Light/z_obj_jgame_light.c +++ b/src/overlays/actors/ovl_Obj_Jgame_Light/z_obj_jgame_light.c @@ -9,7 +9,7 @@ void ObjJgameLight_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjJgameLight_Update(Actor* thisx, GlobalContext* globalCtx); void ObjJgameLight_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Jgame_Light_InitVars = { ACTOR_OBJ_JGAME_LIGHT, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit Obj_Jgame_Light_InitVars = { (ActorFunc)ObjJgameLight_Update, (ActorFunc)ObjJgameLight_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80C15BC0 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00100000, 0x00, 0x00 }, { 0xF6CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 12, 45, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80C15BC0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Jgame_Light_0x80C152F0/ObjJgameLight_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c b/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c index bf809480e..55482936c 100644 --- a/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c +++ b/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c @@ -9,7 +9,7 @@ void ObjKendoKanban_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjKendoKanban_Update(Actor* thisx, GlobalContext* globalCtx); void ObjKendoKanban_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Kendo_Kanban_InitVars = { ACTOR_OBJ_KENDO_KANBAN, ACTORCAT_NPC, @@ -21,7 +21,82 @@ const ActorInit Obj_Kendo_Kanban_InitVars = { (ActorFunc)ObjKendoKanban_Update, (ActorFunc)ObjKendoKanban_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_80B6673C[2] = { + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -300.0f, 850.0f, 40.0f }, { -300.0f, 10.0f, 40.0f }, { 300.0f, 850.0f, 40.0f } } }, + }, + { + { ELEMTYPE_UNK5, { 0x00000000, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 300.0f, 850.0f, 40.0f }, { 300.0f, 10.0f, 40.0f }, { -300.0f, 10.0f, 40.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B667B4 = { + { COLTYPE_TREE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_TRIS, }, + 2, D_80B6673C, // sTrisElementsInit, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B667C4 = { + { COLTYPE_TREE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0xF7CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 33, 80, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B667F0 = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0x0), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B66810 = { 8, 0, 0, 0, MASS_HEAVY }; + + +extern ColliderTrisElementInit D_80B6673C[2]; +extern ColliderTrisInit D_80B667B4; +extern ColliderCylinderInit D_80B667C4; +extern DamageTable D_80B667F0; +extern CollisionCheckInfoInit2 D_80B66810; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Kendo_Kanban_0x80B654C0/ObjKendoKanban_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Kibako2/z_obj_kibako2.c b/src/overlays/actors/ovl_Obj_Kibako2/z_obj_kibako2.c index 2b77ffed2..924b47954 100644 --- a/src/overlays/actors/ovl_Obj_Kibako2/z_obj_kibako2.c +++ b/src/overlays/actors/ovl_Obj_Kibako2/z_obj_kibako2.c @@ -9,7 +9,7 @@ void ObjKibako2_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjKibako2_Update(Actor* thisx, GlobalContext* globalCtx); void ObjKibako2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Kibako2_InitVars = { ACTOR_OBJ_KIBAKO2, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Obj_Kibako2_InitVars = { (ActorFunc)ObjKibako2_Update, (ActorFunc)ObjKibako2_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_8098EE60 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x80000508, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 31, 48, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8098EE8C[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_8098EE60; +extern InitChainEntry D_8098EE8C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Kibako2_0x8098E5C0/func_8098E5C0.asm") diff --git a/src/overlays/actors/ovl_Obj_Kinoko/z_obj_kinoko.c b/src/overlays/actors/ovl_Obj_Kinoko/z_obj_kinoko.c index 053c9a42f..9a3f5f3ad 100644 --- a/src/overlays/actors/ovl_Obj_Kinoko/z_obj_kinoko.c +++ b/src/overlays/actors/ovl_Obj_Kinoko/z_obj_kinoko.c @@ -9,7 +9,7 @@ void ObjKinoko_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjKinoko_Update(Actor* thisx, GlobalContext* globalCtx); void ObjKinoko_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Kinoko_InitVars = { ACTOR_OBJ_KINOKO, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Obj_Kinoko_InitVars = { (ActorFunc)ObjKinoko_Update, (ActorFunc)ObjKinoko_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Kinoko_0x80BB4700/ObjKinoko_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Kzsaku/z_obj_kzsaku.c b/src/overlays/actors/ovl_Obj_Kzsaku/z_obj_kzsaku.c index 7182ade64..0354e4e92 100644 --- a/src/overlays/actors/ovl_Obj_Kzsaku/z_obj_kzsaku.c +++ b/src/overlays/actors/ovl_Obj_Kzsaku/z_obj_kzsaku.c @@ -9,7 +9,7 @@ void ObjKzsaku_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjKzsaku_Update(Actor* thisx, GlobalContext* globalCtx); void ObjKzsaku_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Kzsaku_InitVars = { ACTOR_OBJ_KZSAKU, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Kzsaku_InitVars = { (ActorFunc)ObjKzsaku_Update, (ActorFunc)ObjKzsaku_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Kzsaku_0x80C08A80/ObjKzsaku_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Lift/z_obj_lift.c b/src/overlays/actors/ovl_Obj_Lift/z_obj_lift.c index 63e12c2e9..116984b42 100644 --- a/src/overlays/actors/ovl_Obj_Lift/z_obj_lift.c +++ b/src/overlays/actors/ovl_Obj_Lift/z_obj_lift.c @@ -9,7 +9,7 @@ void ObjLift_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjLift_Update(Actor* thisx, GlobalContext* globalCtx); void ObjLift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Lift_InitVars = { ACTOR_OBJ_LIFT, ACTORCAT_BG, @@ -21,7 +21,20 @@ const ActorInit Obj_Lift_InitVars = { (ActorFunc)ObjLift_Update, (ActorFunc)ObjLift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8093DD84[] = { + ICHAIN_F32_DIV1000(gravity, -600, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -15000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 350, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 350, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8093DD84[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Lift_0x8093D3C0/func_8093D3C0.asm") diff --git a/src/overlays/actors/ovl_Obj_Lightblock/z_obj_lightblock.c b/src/overlays/actors/ovl_Obj_Lightblock/z_obj_lightblock.c index 96a063af5..d9b722c06 100644 --- a/src/overlays/actors/ovl_Obj_Lightblock/z_obj_lightblock.c +++ b/src/overlays/actors/ovl_Obj_Lightblock/z_obj_lightblock.c @@ -9,7 +9,7 @@ void ObjLightblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjLightblock_Update(Actor* thisx, GlobalContext* globalCtx); void ObjLightblock_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Lightblock_InitVars = { ACTOR_OBJ_LIGHTBLOCK, ACTORCAT_BG, @@ -21,7 +21,27 @@ const ActorInit Obj_Lightblock_InitVars = { (ActorFunc)ObjLightblock_Update, (ActorFunc)ObjLightblock_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80AF3EA0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER | AC_TYPE_OTHER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00202000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 84, 120, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AF3EEC[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80AF3EA0; +extern InitChainEntry D_80AF3EEC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Lightblock_0x80AF3910/func_80AF3910.asm") diff --git a/src/overlays/actors/ovl_Obj_Lupygamelift/z_obj_lupygamelift.c b/src/overlays/actors/ovl_Obj_Lupygamelift/z_obj_lupygamelift.c index 9f6fc5114..c88705769 100644 --- a/src/overlays/actors/ovl_Obj_Lupygamelift/z_obj_lupygamelift.c +++ b/src/overlays/actors/ovl_Obj_Lupygamelift/z_obj_lupygamelift.c @@ -9,7 +9,7 @@ void ObjLupygamelift_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjLupygamelift_Update(Actor* thisx, GlobalContext* globalCtx); void ObjLupygamelift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Lupygamelift_InitVars = { ACTOR_OBJ_LUPYGAMELIFT, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Lupygamelift_InitVars = { (ActorFunc)ObjLupygamelift_Update, (ActorFunc)ObjLupygamelift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AF0740[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 400, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AF0740[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Lupygamelift_0x80AF0170/ObjLupygamelift_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Makekinsuta/z_obj_makekinsuta.c b/src/overlays/actors/ovl_Obj_Makekinsuta/z_obj_makekinsuta.c index 16d900792..79ed5c41d 100644 --- a/src/overlays/actors/ovl_Obj_Makekinsuta/z_obj_makekinsuta.c +++ b/src/overlays/actors/ovl_Obj_Makekinsuta/z_obj_makekinsuta.c @@ -8,7 +8,7 @@ void ObjMakekinsuta_Init(Actor* thisx, GlobalContext* globalCtx); void ObjMakekinsuta_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjMakekinsuta_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Makekinsuta_InitVars = { ACTOR_OBJ_MAKEKINSUTA, ACTORCAT_ITEMACTION, @@ -20,7 +20,18 @@ const ActorInit Obj_Makekinsuta_InitVars = { (ActorFunc)ObjMakekinsuta_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8099FE30[] = { + ICHAIN_F32(uncullZoneForward, 1, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8099FE30[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Makekinsuta_0x8099FA40/func_8099FA40.asm") diff --git a/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c b/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c index cb34f9913..3578e14b5 100644 --- a/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c +++ b/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c @@ -7,7 +7,7 @@ void ObjMakeoshihiki_Init(Actor* thisx, GlobalContext* globalCtx); void ObjMakeoshihiki_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Makeoshihiki_InitVars = { ACTOR_OBJ_MAKEOSHIHIKI, ACTORCAT_PROP, @@ -19,7 +19,8 @@ const ActorInit Obj_Makeoshihiki_InitVars = { (ActorFunc)ObjMakeoshihiki_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Makeoshihiki_0x80972350/func_80972350.asm") diff --git a/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c b/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c index f759ab30f..84d9c5500 100644 --- a/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c +++ b/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c @@ -9,7 +9,7 @@ void ObjMine_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjMine_Update(Actor* thisx, GlobalContext* globalCtx); void ObjMine_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Mine_InitVars = { ACTOR_OBJ_MINE, ACTORCAT_PROP, @@ -21,7 +21,36 @@ const ActorInit Obj_Mine_InitVars = { (ActorFunc)ObjMine_Update, (ActorFunc)ObjMine_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80A84570[1] = { + { + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0x01CBFFBE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 30 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80A84594 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, }, + 1, D_80A84570, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A845E8[] = { + ICHAIN_F32(uncullZoneForward, 1300, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 150, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80A84570[1]; +extern ColliderJntSphInit D_80A84594; +extern InitChainEntry D_80A845E8[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Mine_0x80A811D0/func_80A811D0.asm") diff --git a/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c b/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c index 581ac9cad..227c2b79c 100644 --- a/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c +++ b/src/overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.c @@ -1,6 +1,6 @@ /* * File z_obj_moon_stone.c - * Overlay: ovl_obj_moon_stone + * Overlay: ovl_Obj_Moon_Stone * Description: Moon's Tear */ diff --git a/src/overlays/actors/ovl_Obj_Mure/z_obj_mure.c b/src/overlays/actors/ovl_Obj_Mure/z_obj_mure.c index 3bb34b659..a989c5b92 100644 --- a/src/overlays/actors/ovl_Obj_Mure/z_obj_mure.c +++ b/src/overlays/actors/ovl_Obj_Mure/z_obj_mure.c @@ -8,7 +8,7 @@ void ObjMure_Init(Actor* thisx, GlobalContext* globalCtx); void ObjMure_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjMure_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Mure_InitVars = { ACTOR_OBJ_MURE, ACTORCAT_ITEMACTION, @@ -20,7 +20,18 @@ const ActorInit Obj_Mure_InitVars = { (ActorFunc)ObjMure_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808D87BC[] = { + ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1200, ICHAIN_STOP), +}; + + +extern InitChainEntry D_808D87BC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Mure_0x808D78D0/func_808D78D0.asm") diff --git a/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c b/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c index 4070a6b71..08398dc95 100644 --- a/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c +++ b/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c @@ -7,7 +7,7 @@ void ObjMure2_Init(Actor* thisx, GlobalContext* globalCtx); void ObjMure2_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Mure2_InitVars = { ACTOR_OBJ_MURE2, ACTORCAT_PROP, @@ -19,7 +19,18 @@ const ActorInit Obj_Mure2_InitVars = { (ActorFunc)ObjMure2_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809615F4[] = { + ICHAIN_F32(uncullZoneForward, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 2100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809615F4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Mure2_0x80960CF0/func_80960CF0.asm") diff --git a/src/overlays/actors/ovl_Obj_Mure3/z_obj_mure3.c b/src/overlays/actors/ovl_Obj_Mure3/z_obj_mure3.c index 38d216d6d..385a7b664 100644 --- a/src/overlays/actors/ovl_Obj_Mure3/z_obj_mure3.c +++ b/src/overlays/actors/ovl_Obj_Mure3/z_obj_mure3.c @@ -8,7 +8,7 @@ void ObjMure3_Init(Actor* thisx, GlobalContext* globalCtx); void ObjMure3_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjMure3_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Mure3_InitVars = { ACTOR_OBJ_MURE3, ACTORCAT_BG, @@ -20,7 +20,18 @@ const ActorInit Obj_Mure3_InitVars = { (ActorFunc)ObjMure3_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8098F748[] = { + ICHAIN_F32(uncullZoneForward, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 1800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_8098F748[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Mure3_0x8098F040/func_8098F040.asm") diff --git a/src/overlays/actors/ovl_Obj_Nozoki/z_obj_nozoki.c b/src/overlays/actors/ovl_Obj_Nozoki/z_obj_nozoki.c index 113c307b2..04f160412 100644 --- a/src/overlays/actors/ovl_Obj_Nozoki/z_obj_nozoki.c +++ b/src/overlays/actors/ovl_Obj_Nozoki/z_obj_nozoki.c @@ -8,7 +8,7 @@ void ObjNozoki_Init(Actor* thisx, GlobalContext* globalCtx); void ObjNozoki_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjNozoki_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Nozoki_InitVars = { ACTOR_OBJ_NOZOKI, ACTORCAT_ITEMACTION, @@ -20,7 +20,17 @@ const ActorInit Obj_Nozoki_InitVars = { (ActorFunc)ObjNozoki_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BA34B0[] = { + ICHAIN_VEC3F(scale, 1, ICHAIN_CONTINUE), + ICHAIN_U8(targetMode, 0, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80BA34B0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Nozoki_0x80BA2420/func_80BA2420.asm") diff --git a/src/overlays/actors/ovl_Obj_Ocarinalift/z_obj_ocarinalift.c b/src/overlays/actors/ovl_Obj_Ocarinalift/z_obj_ocarinalift.c index d79919357..5db64d4d6 100644 --- a/src/overlays/actors/ovl_Obj_Ocarinalift/z_obj_ocarinalift.c +++ b/src/overlays/actors/ovl_Obj_Ocarinalift/z_obj_ocarinalift.c @@ -9,7 +9,7 @@ void ObjOcarinalift_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjOcarinalift_Update(Actor* thisx, GlobalContext* globalCtx); void ObjOcarinalift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Ocarinalift_InitVars = { ACTOR_OBJ_OCARINALIFT, ACTORCAT_BG, @@ -21,7 +21,20 @@ const ActorInit Obj_Ocarinalift_InitVars = { (ActorFunc)ObjOcarinalift_Update, (ActorFunc)ObjOcarinalift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80AC9D70[] = { + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80AC9D70[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Ocarinalift_0x80AC94C0/func_80AC94C0.asm") diff --git a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c index 5015888ce..ecb88b35b 100644 --- a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c +++ b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c @@ -9,7 +9,7 @@ void ObjOshihiki_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjOshihiki_Update(Actor* thisx, GlobalContext* globalCtx); void ObjOshihiki_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Oshihiki_InitVars = { ACTOR_OBJ_OSHIHIKI, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit Obj_Oshihiki_InitVars = { (ActorFunc)ObjOshihiki_Update, (ActorFunc)ObjOshihiki_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80918898[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80918898[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Oshihiki_0x80917290/func_80917290.asm") diff --git a/src/overlays/actors/ovl_Obj_Purify/z_obj_purify.c b/src/overlays/actors/ovl_Obj_Purify/z_obj_purify.c index 3abf41e3b..ba3978341 100644 --- a/src/overlays/actors/ovl_Obj_Purify/z_obj_purify.c +++ b/src/overlays/actors/ovl_Obj_Purify/z_obj_purify.c @@ -8,7 +8,7 @@ void ObjPurify_Init(Actor* thisx, GlobalContext* globalCtx); void ObjPurify_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjPurify_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Purify_InitVars = { ACTOR_OBJ_PURIFY, ACTORCAT_BG, @@ -20,7 +20,8 @@ const ActorInit Obj_Purify_InitVars = { (ActorFunc)ObjPurify_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Purify_0x80A84CD0/func_80A84CD0.asm") diff --git a/src/overlays/actors/ovl_Obj_Pzlblock/z_obj_pzlblock.c b/src/overlays/actors/ovl_Obj_Pzlblock/z_obj_pzlblock.c index 11127af60..3d40f7479 100644 --- a/src/overlays/actors/ovl_Obj_Pzlblock/z_obj_pzlblock.c +++ b/src/overlays/actors/ovl_Obj_Pzlblock/z_obj_pzlblock.c @@ -8,7 +8,7 @@ void ObjPzlblock_Init(Actor* thisx, GlobalContext* globalCtx); void ObjPzlblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjPzlblock_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Pzlblock_InitVars = { ACTOR_OBJ_PZLBLOCK, ACTORCAT_PROP, @@ -20,7 +20,19 @@ const ActorInit Obj_Pzlblock_InitVars = { (ActorFunc)ObjPzlblock_Update, (ActorFunc)NULL, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809A4078[] = { + ICHAIN_VEC3S(world.rot, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern InitChainEntry D_809A4078[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Pzlblock_0x809A33E0/func_809A33E0.asm") diff --git a/src/overlays/actors/ovl_Obj_Raillift/z_obj_raillift.c b/src/overlays/actors/ovl_Obj_Raillift/z_obj_raillift.c index 6624db6ea..fec090661 100644 --- a/src/overlays/actors/ovl_Obj_Raillift/z_obj_raillift.c +++ b/src/overlays/actors/ovl_Obj_Raillift/z_obj_raillift.c @@ -1,7 +1,7 @@ /* * File: z_obj_raillift.c - * Overlay: Obj_Raillift - * Description: Moving Deku Flower Platform and OOT Water Temple Waterfall Platform + * Overlay: ovl_Obj_Raillift + * Description: Moving Deku Flower Platform and OoT Water Temple Waterfall Platform */ #include "z_obj_raillift.h" diff --git a/src/overlays/actors/ovl_Obj_Roomtimer/z_obj_roomtimer.c b/src/overlays/actors/ovl_Obj_Roomtimer/z_obj_roomtimer.c index 05e51d952..709aef757 100644 --- a/src/overlays/actors/ovl_Obj_Roomtimer/z_obj_roomtimer.c +++ b/src/overlays/actors/ovl_Obj_Roomtimer/z_obj_roomtimer.c @@ -8,7 +8,7 @@ void ObjRoomtimer_Init(Actor* thisx, GlobalContext* globalCtx); void ObjRoomtimer_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjRoomtimer_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Roomtimer_InitVars = { ACTOR_OBJ_ROOMTIMER, ACTORCAT_ENEMY, @@ -20,7 +20,8 @@ const ActorInit Obj_Roomtimer_InitVars = { (ActorFunc)ObjRoomtimer_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Roomtimer_0x80973C50/ObjRoomtimer_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Rotlift/z_obj_rotlift.c b/src/overlays/actors/ovl_Obj_Rotlift/z_obj_rotlift.c index a7f844f5f..feea811d2 100644 --- a/src/overlays/actors/ovl_Obj_Rotlift/z_obj_rotlift.c +++ b/src/overlays/actors/ovl_Obj_Rotlift/z_obj_rotlift.c @@ -9,7 +9,7 @@ void ObjRotlift_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjRotlift_Update(Actor* thisx, GlobalContext* globalCtx); void ObjRotlift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Rotlift_InitVars = { ACTOR_OBJ_ROTLIFT, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Rotlift_InitVars = { (ActorFunc)ObjRotlift_Update, (ActorFunc)ObjRotlift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B96178[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B96178[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Rotlift_0x80B95E20/func_80B95E20.asm") diff --git a/src/overlays/actors/ovl_Obj_Shutter/z_obj_shutter.c b/src/overlays/actors/ovl_Obj_Shutter/z_obj_shutter.c index 9af149d16..38ecb0c69 100644 --- a/src/overlays/actors/ovl_Obj_Shutter/z_obj_shutter.c +++ b/src/overlays/actors/ovl_Obj_Shutter/z_obj_shutter.c @@ -9,7 +9,7 @@ void ObjShutter_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjShutter_Update(Actor* thisx, GlobalContext* globalCtx); void ObjShutter_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Shutter_InitVars = { ACTOR_OBJ_SHUTTER, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Shutter_InitVars = { (ActorFunc)ObjShutter_Update, (ActorFunc)ObjShutter_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Shutter_0x80A37ED0/ObjShutter_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Skateblock/z_obj_skateblock.c b/src/overlays/actors/ovl_Obj_Skateblock/z_obj_skateblock.c index 40b7dec90..a9bdf62cf 100644 --- a/src/overlays/actors/ovl_Obj_Skateblock/z_obj_skateblock.c +++ b/src/overlays/actors/ovl_Obj_Skateblock/z_obj_skateblock.c @@ -9,7 +9,7 @@ void ObjSkateblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSkateblock_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSkateblock_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Skateblock_InitVars = { ACTOR_OBJ_SKATEBLOCK, ACTORCAT_BG, @@ -21,7 +21,21 @@ const ActorInit Obj_Skateblock_InitVars = { (ActorFunc)ObjSkateblock_Update, (ActorFunc)ObjSkateblock_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A22AE0[] = { + ICHAIN_F32_DIV1000(gravity, -1700, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 150, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80A22AE0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Skateblock_0x80A21150/func_80A21150.asm") diff --git a/src/overlays/actors/ovl_Obj_Smork/z_obj_smork.c b/src/overlays/actors/ovl_Obj_Smork/z_obj_smork.c index c932883bb..6e72d83e3 100644 --- a/src/overlays/actors/ovl_Obj_Smork/z_obj_smork.c +++ b/src/overlays/actors/ovl_Obj_Smork/z_obj_smork.c @@ -9,7 +9,7 @@ void ObjSmork_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSmork_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSmork_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Smork_InitVars = { ACTOR_OBJ_SMORK, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Smork_InitVars = { (ActorFunc)ObjSmork_Update, (ActorFunc)ObjSmork_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Smork_0x80A3D680/func_80A3D680.asm") diff --git a/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c b/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c index 0af5f76e3..1d05f4520 100644 --- a/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c +++ b/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c @@ -9,7 +9,7 @@ void ObjSnowball_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSnowball_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSnowball_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Snowball_InitVars = { ACTOR_OBJ_SNOWBALL, ACTORCAT_PROP, @@ -21,7 +21,33 @@ const ActorInit Obj_Snowball_InitVars = { (ActorFunc)ObjSnowball_Update, (ActorFunc)ObjSnowball_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80B04F50[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x81837FBE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 73 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B04F74 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_JNTSPH, }, + 1, D_80B04F50, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B04FD4[] = { + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80B04F50[1]; +extern ColliderJntSphInit D_80B04F74; +extern InitChainEntry D_80B04FD4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Snowball_0x80B02CD0/func_80B02CD0.asm") diff --git a/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c b/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c index e79c84815..41ecdd5e6 100644 --- a/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c +++ b/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c @@ -9,7 +9,7 @@ void ObjSnowball2_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSnowball2_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSnowball2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Snowball2_InitVars = { ACTOR_OBJ_SNOWBALL2, ACTORCAT_PROP, @@ -21,7 +21,38 @@ const ActorInit Obj_Snowball2_InitVars = { (ActorFunc)ObjSnowball2_Update, (ActorFunc)ObjSnowball2_Draw, }; -*/ + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_80B3A8E0[1] = { + { + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x0583FFBE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NONE, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 0, 0 }, 15 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_80B3A904 = { + { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_JNTSPH, }, + 1, D_80B3A8E0, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B3A93C[] = { + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 25, ICHAIN_STOP), +}; + + +extern ColliderJntSphElementInit D_80B3A8E0[1]; +extern ColliderJntSphInit D_80B3A904; +extern InitChainEntry D_80B3A93C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Snowball2_0x80B38E20/func_80B38E20.asm") diff --git a/src/overlays/actors/ovl_Obj_Sound/z_obj_sound.c b/src/overlays/actors/ovl_Obj_Sound/z_obj_sound.c index 2e846f423..cec18dd0e 100644 --- a/src/overlays/actors/ovl_Obj_Sound/z_obj_sound.c +++ b/src/overlays/actors/ovl_Obj_Sound/z_obj_sound.c @@ -8,7 +8,7 @@ void ObjSound_Init(Actor* thisx, GlobalContext* globalCtx); void ObjSound_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSound_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Sound_InitVars = { ACTOR_OBJ_SOUND, ACTORCAT_ITEMACTION, @@ -20,7 +20,8 @@ const ActorInit Obj_Sound_InitVars = { (ActorFunc)ObjSound_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Sound_0x8099A920/ObjSound_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c b/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c index 4ea35e79f..7c52f08bc 100644 --- a/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c +++ b/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c @@ -9,7 +9,7 @@ void ObjSpidertent_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSpidertent_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSpidertent_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Spidertent_InitVars = { ACTOR_OBJ_SPIDERTENT, ACTORCAT_BG, @@ -21,7 +21,93 @@ const ActorInit Obj_Spidertent_InitVars = { (ActorFunc)ObjSpidertent_Update, (ActorFunc)ObjSpidertent_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[6] = { +static ColliderTrisElementInit D_80B31060[6] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 68.80000305175781f, 0.0f, 18.799999237060547f }, { 76.30000305175781f, 0.0f, -63.79999923706055f }, { 1.2999999523162842f, 40.0f, -3.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 76.30000305175781f, 0.0f, -63.79999923706055f }, { 23.799999237060547f, 0.0f, -116.30000305175781f }, { 1.2999999523162842f, 40.0f, -3.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 23.799999237060547f, 0.0f, -116.30000305175781f }, { -111.30000305175781f, 0.0f, -26.299999237060547f }, { 1.2999999523162842f, 40.0f, -3.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -111.30000305175781f, 0.0f, -26.299999237060547f }, { -81.30000305175781f, 0.0f, 78.80000305175781f }, { 1.2999999523162842f, 40.0f, -3.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -81.30000305175781f, 0.0f, 78.80000305175781f }, { 23.799999237060547f, 0.0f, 108.80000305175781f }, { 1.2999999523162842f, 40.0f, -3.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 23.799999237060547f, 0.0f, 108.80000305175781f }, { 68.80000305175781f, 0.0f, 18.799999237060547f }, { 1.2999999523162842f, 40.0f, -3.799999952316284f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B311C8 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 6, D_80B31060, // sTrisElementsInit, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[6] = { +static ColliderTrisElementInit D_80B311D8[6] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 17.799999237060547f, 0.0f, 81.5999984741211f }, { 51.599998474121094f, 0.0f, 14.100000381469727f }, { 0.8999999761581421f, 30.0f, -2.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -60.900001525878906f, 0.0f, 59.099998474121094f }, { 17.799999237060547f, 0.0f, 81.5999984741211f }, { 0.8999999761581421f, 30.0f, -2.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -83.4000015258789f, 0.0f, -19.700000762939453f }, { -60.900001525878906f, 0.0f, 59.099998474121094f }, { 0.8999999761581421f, 30.0f, -2.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 17.799999237060547f, 0.0f, -87.19999694824219f }, { -83.4000015258789f, 0.0f, -19.700000762939453f }, { 0.8999999761581421f, 30.0f, -2.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 57.20000076293945f, 0.0f, -47.79999923706055f }, { 17.799999237060547f, 0.0f, -87.19999694824219f }, { 0.8999999761581421f, 30.0f, -2.799999952316284f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00000800, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 51.599998474121094f, 0.0f, 14.100000381469727f }, { 57.20000076293945f, 0.0f, -47.79999923706055f }, { 0.8999999761581421f, 30.0f, -2.799999952316284f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80B31340 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 6, D_80B311D8, // sTrisElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B31418[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80B31060[6]; +extern ColliderTrisInit D_80B311C8; +extern ColliderTrisElementInit D_80B311D8[6]; +extern ColliderTrisInit D_80B31340; +extern InitChainEntry D_80B31418[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Spidertent_0x80B2FB10/func_80B2FB10.asm") diff --git a/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c b/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c index db31d9281..a5adfdc54 100644 --- a/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c +++ b/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c @@ -9,7 +9,7 @@ void ObjSpinyroll_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSpinyroll_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSpinyroll_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Spinyroll_InitVars = { ACTOR_OBJ_SPINYROLL, ACTORCAT_PROP, @@ -21,7 +21,54 @@ const ActorInit Obj_Spinyroll_InitVars = { (ActorFunc)ObjSpinyroll_Update, (ActorFunc)ObjSpinyroll_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[6] = { +static ColliderTrisElementInit D_80A1F040[6] = { + { + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -60.0f, 0.0f, 17.0f }, { 60.0f, 0.0f, 17.0f }, { 60.0f, 40.0f, 17.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -60.0f, 0.0f, 17.0f }, { 60.0f, 40.0f, 17.0f }, { -60.0f, 40.0f, 17.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 60.0f, 0.0f, -17.0f }, { -60.0f, 0.0f, -17.0f }, { -60.0f, 40.0f, -17.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 60.0f, 0.0f, -17.0f }, { -60.0f, 40.0f, -17.0f }, { 60.0f, 40.0f, -17.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 60.0f, 20.0f, -12.0f }, { -60.0f, 20.0f, -12.0f }, { -60.0f, 20.0f, 12.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0xF7CFFFFF, 0x04, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 60.0f, 20.0f, -12.0f }, { -60.0f, 20.0f, 12.0f }, { 60.0f, 20.0f, 12.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_80A1F1A8 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 6, D_80A1F040, // sTrisElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A1F204[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_80A1F040[6]; +extern ColliderTrisInit D_80A1F1A8; +extern InitChainEntry D_80A1F204[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Spinyroll_0x80A1DA50/func_80A1DA50.asm") diff --git a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c index a3513d807..2cdd7d982 100644 --- a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c +++ b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c @@ -9,7 +9,7 @@ void ObjSwitch_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSwitch_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSwitch_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Switch_InitVars = { ACTOR_OBJ_SWITCH, ACTORCAT_SWITCH, @@ -21,7 +21,77 @@ const ActorInit Obj_Switch_InitVars = { (ActorFunc)ObjSwitch_Update, (ActorFunc)ObjSwitch_Draw, }; -*/ + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_8093CCD4[2] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000400, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { -20.0f, 19.0f, -20.0f }, { -20.0f, 19.0f, 20.0f }, { 20.0f, 19.0f, 20.0f } } }, + }, + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000400, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 20.0f, 19.0f, 20.0f }, { 20.0f, 19.0f, -20.0f }, { -20.0f, 19.0f, -20.0f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_8093CD4C = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 2, D_8093CCD4, // sTrisElementsInit, +}; + + +// static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit D_8093CD5C[2] = { + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00003820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 23.0f, 8.5f }, { -23.0f, 0.0f, 8.5f }, { 0.0f, -23.0f, 8.5f } } }, + }, + { + { ELEMTYPE_UNK4, { 0x00000000, 0x00, 0x00 }, { 0x00003820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { { { 0.0f, 23.0f, 8.5f }, { 0.0f, -23.0f, 8.5f }, { 23.0f, 0.0f, 8.5f } } }, + }, +}; + +// static ColliderTrisInit sTrisInit = { +static ColliderTrisInit D_8093CDD4 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, }, + 2, D_8093CD5C, // sTrisElementsInit, +}; + + +// static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit D_8093CDE4[1] = { + { + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01CBFFBE, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 0, { { 0, 300, 0 }, 20 }, 100 }, + }, +}; + +// static ColliderJntSphInit sJntSphInit = { +static ColliderJntSphInit D_8093CE08 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_JNTSPH, }, + 1, D_8093CDE4, // sJntSphElementsInit, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_8093CE18[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern ColliderTrisElementInit D_8093CCD4[2]; +extern ColliderTrisInit D_8093CD4C; +extern ColliderTrisElementInit D_8093CD5C[2]; +extern ColliderTrisInit D_8093CDD4; +extern ColliderJntSphElementInit D_8093CDE4[1]; +extern ColliderJntSphInit D_8093CE08; +extern InitChainEntry D_8093CE18[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Switch_0x8093ABD0/func_8093ABD0.asm") diff --git a/src/overlays/actors/ovl_Obj_Swprize/z_obj_swprize.c b/src/overlays/actors/ovl_Obj_Swprize/z_obj_swprize.c index 07cbf940f..02564d870 100644 --- a/src/overlays/actors/ovl_Obj_Swprize/z_obj_swprize.c +++ b/src/overlays/actors/ovl_Obj_Swprize/z_obj_swprize.c @@ -8,7 +8,7 @@ void ObjSwprize_Init(Actor* thisx, GlobalContext* globalCtx); void ObjSwprize_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSwprize_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Swprize_InitVars = { ACTOR_OBJ_SWPRIZE, ACTORCAT_PROP, @@ -20,7 +20,8 @@ const ActorInit Obj_Swprize_InitVars = { (ActorFunc)ObjSwprize_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Swprize_0x80C25360/func_80C25360.asm") diff --git a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c index b2a9740ba..cdd684587 100644 --- a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c +++ b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c @@ -9,7 +9,7 @@ void ObjSyokudai_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjSyokudai_Update(Actor* thisx, GlobalContext* globalCtx); void ObjSyokudai_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Syokudai_InitVars = { ACTOR_OBJ_SYOKUDAI, ACTORCAT_PROP, @@ -21,7 +21,37 @@ const ActorInit Obj_Syokudai_InitVars = { (ActorFunc)ObjSyokudai_Update, (ActorFunc)ObjSyokudai_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808BCCC0 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00100000, 0x00, 0x00 }, { 0xF6CFFFFF, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 12, 45, 0, { 0, 0, 0 } }, +}; + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_808BCCEC = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00000000, 0x00, 0x00 }, { 0x00000820, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 15, 45, 45, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_808BCD18[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_808BCCC0; +extern ColliderCylinderInit D_808BCCEC; +extern InitChainEntry D_808BCD18[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Syokudai_0x808BC010/ObjSyokudai_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h index b6dd852c1..0fed3ca8c 100644 --- a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h +++ b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h @@ -7,7 +7,8 @@ struct ObjSyokudai; typedef struct ObjSyokudai { /* 0x000 */ Actor actor; - /* 0x144 */ char unk_144[0x98]; + /* 0x144 */ ColliderCylinder colliderCylinder1; + /* 0x190 */ ColliderCylinder colliderCylinder2; /* 0x1DC */ s16 unk_1DC; /* 0x1DE */ char unk_1DE[0x16]; } ObjSyokudai; // size = 0x1F4 diff --git a/src/overlays/actors/ovl_Obj_Takaraya_Wall/z_obj_takaraya_wall.c b/src/overlays/actors/ovl_Obj_Takaraya_Wall/z_obj_takaraya_wall.c index eaed27d77..de934dd22 100644 --- a/src/overlays/actors/ovl_Obj_Takaraya_Wall/z_obj_takaraya_wall.c +++ b/src/overlays/actors/ovl_Obj_Takaraya_Wall/z_obj_takaraya_wall.c @@ -9,7 +9,7 @@ void ObjTakarayaWall_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTakarayaWall_Update(Actor* thisx, GlobalContext* globalCtx); void ObjTakarayaWall_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Takaraya_Wall_InitVars = { ACTOR_OBJ_TAKARAYA_WALL, ACTORCAT_BG, @@ -21,7 +21,25 @@ const ActorInit Obj_Takaraya_Wall_InitVars = { (ActorFunc)ObjTakarayaWall_Update, (ActorFunc)ObjTakarayaWall_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80ADA2A0 = { + { COLTYPE_NONE, AT_NONE, AC_NONE, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_NONE, OCELEM_ON, }, + { 40, 120, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ADA2CC[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80ADA2A0; +extern InitChainEntry D_80ADA2CC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Takaraya_Wall_0x80AD9240/func_80AD9240.asm") diff --git a/src/overlays/actors/ovl_Obj_Taru/z_obj_taru.c b/src/overlays/actors/ovl_Obj_Taru/z_obj_taru.c index 0e27430d5..5b0600297 100644 --- a/src/overlays/actors/ovl_Obj_Taru/z_obj_taru.c +++ b/src/overlays/actors/ovl_Obj_Taru/z_obj_taru.c @@ -9,7 +9,7 @@ void ObjTaru_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTaru_Update(Actor* thisx, GlobalContext* globalCtx); void ObjTaru_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Taru_InitVars = { ACTOR_OBJ_TARU, ACTORCAT_BG, @@ -21,7 +21,28 @@ const ActorInit Obj_Taru_InitVars = { (ActorFunc)ObjTaru_Update, (ActorFunc)ObjTaru_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B9C340 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x80000508, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 30, 50, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B9C36C[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 3300, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 200, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B9C340; +extern InitChainEntry D_80B9C36C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Taru_0x80B9B6E0/func_80B9B6E0.asm") diff --git a/src/overlays/actors/ovl_Obj_Toge/z_obj_toge.c b/src/overlays/actors/ovl_Obj_Toge/z_obj_toge.c index f3ff437bd..79391e87c 100644 --- a/src/overlays/actors/ovl_Obj_Toge/z_obj_toge.c +++ b/src/overlays/actors/ovl_Obj_Toge/z_obj_toge.c @@ -9,7 +9,7 @@ void ObjToge_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjToge_Update(Actor* thisx, GlobalContext* globalCtx); void ObjToge_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Toge_InitVars = { ACTOR_OBJ_TOGE, ACTORCAT_PROP, @@ -21,7 +21,28 @@ const ActorInit Obj_Toge_InitVars = { (ActorFunc)ObjToge_Update, (ActorFunc)ObjToge_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809A4CB0 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 20, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809A4D14[] = { + ICHAIN_F32_DIV1000(minVelocityY, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 150, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 150, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_809A4CB0; +extern InitChainEntry D_809A4D14[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Toge_0x809A41C0/func_809A41C0.asm") diff --git a/src/overlays/actors/ovl_Obj_Tokei_Tobira/z_obj_tokei_tobira.c b/src/overlays/actors/ovl_Obj_Tokei_Tobira/z_obj_tokei_tobira.c index 6167b0b55..fd48e0d13 100644 --- a/src/overlays/actors/ovl_Obj_Tokei_Tobira/z_obj_tokei_tobira.c +++ b/src/overlays/actors/ovl_Obj_Tokei_Tobira/z_obj_tokei_tobira.c @@ -9,7 +9,7 @@ void ObjTokeiTobira_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTokeiTobira_Update(Actor* thisx, GlobalContext* globalCtx); void ObjTokeiTobira_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Tokei_Tobira_InitVars = { ACTOR_OBJ_TOKEI_TOBIRA, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Tokei_Tobira_InitVars = { (ActorFunc)ObjTokeiTobira_Update, (ActorFunc)ObjTokeiTobira_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80ABD750[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 300, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80ABD750[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Tokei_Tobira_0x80ABD1D0/ObjTokeiTobira_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Tokei_Turret/z_obj_tokei_turret.c b/src/overlays/actors/ovl_Obj_Tokei_Turret/z_obj_tokei_turret.c index 867ea587a..587a1e6ad 100644 --- a/src/overlays/actors/ovl_Obj_Tokei_Turret/z_obj_tokei_turret.c +++ b/src/overlays/actors/ovl_Obj_Tokei_Turret/z_obj_tokei_turret.c @@ -9,7 +9,7 @@ void ObjTokeiTurret_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTokeiTurret_Update(Actor* thisx, GlobalContext* globalCtx); void ObjTokeiTurret_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Tokei_Turret_InitVars = { ACTOR_OBJ_TOKEI_TURRET, ACTORCAT_BG, @@ -21,7 +21,17 @@ const ActorInit Obj_Tokei_Turret_InitVars = { (ActorFunc)ObjTokeiTurret_Update, (ActorFunc)ObjTokeiTurret_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B91EC0[] = { + ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B91EC0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Tokei_Turret_0x80B91CC0/ObjTokeiTurret_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Tokeidai/z_obj_tokeidai.c b/src/overlays/actors/ovl_Obj_Tokeidai/z_obj_tokeidai.c index 197cc99f1..e767d2c82 100644 --- a/src/overlays/actors/ovl_Obj_Tokeidai/z_obj_tokeidai.c +++ b/src/overlays/actors/ovl_Obj_Tokeidai/z_obj_tokeidai.c @@ -9,7 +9,7 @@ void ObjTokeidai_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTokeidai_Update(Actor* thisx, GlobalContext* globalCtx); void ObjTokeidai_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Tokeidai_InitVars = { ACTOR_OBJ_TOKEIDAI, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Tokeidai_InitVars = { (ActorFunc)ObjTokeidai_Update, (ActorFunc)ObjTokeidai_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Tokeidai_0x80AB2790/func_80AB2790.asm") diff --git a/src/overlays/actors/ovl_Obj_Toudai/z_obj_toudai.c b/src/overlays/actors/ovl_Obj_Toudai/z_obj_toudai.c index 1df3774da..40303bc33 100644 --- a/src/overlays/actors/ovl_Obj_Toudai/z_obj_toudai.c +++ b/src/overlays/actors/ovl_Obj_Toudai/z_obj_toudai.c @@ -9,7 +9,7 @@ void ObjToudai_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjToudai_Update(Actor* thisx, GlobalContext* globalCtx); void ObjToudai_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Toudai_InitVars = { ACTOR_OBJ_TOUDAI, ACTORCAT_PROP, @@ -21,7 +21,8 @@ const ActorInit Obj_Toudai_InitVars = { (ActorFunc)ObjToudai_Update, (ActorFunc)ObjToudai_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Toudai_0x80A33B00/func_80A33B00.asm") diff --git a/src/overlays/actors/ovl_Obj_Tree/z_obj_tree.c b/src/overlays/actors/ovl_Obj_Tree/z_obj_tree.c index 884f996fd..8deef7430 100644 --- a/src/overlays/actors/ovl_Obj_Tree/z_obj_tree.c +++ b/src/overlays/actors/ovl_Obj_Tree/z_obj_tree.c @@ -9,7 +9,7 @@ void ObjTree_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTree_Update(Actor* thisx, GlobalContext* globalCtx); void ObjTree_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Tree_InitVars = { ACTOR_OBJ_TREE, ACTORCAT_PROP, @@ -21,7 +21,61 @@ const ActorInit Obj_Tree_InitVars = { (ActorFunc)ObjTree_Update, (ActorFunc)ObjTree_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B9A570 = { + { COLTYPE_TREE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x0100020A, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 28, 120, 0, { 0, 0, 0 } }, +}; + + +// static DamageTable sDamageTable = { +static DamageTable D_80B9A59C = { + /* Deku Nut */ DMG_ENTRY(0, 0x0), + /* Deku Stick */ DMG_ENTRY(0, 0xF), + /* Horse trample */ DMG_ENTRY(0, 0x0), + /* Explosives */ DMG_ENTRY(0, 0x0), + /* Zora boomerang */ DMG_ENTRY(0, 0x0), + /* Normal arrow */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x06 */ DMG_ENTRY(2, 0xF), + /* Hookshot */ DMG_ENTRY(0, 0x1), + /* Goron punch */ DMG_ENTRY(2, 0xF), + /* Sword */ DMG_ENTRY(1, 0xF), + /* Goron pound */ DMG_ENTRY(1, 0xF), + /* Fire arrow */ DMG_ENTRY(0, 0x0), + /* Ice arrow */ DMG_ENTRY(0, 0x0), + /* Light arrow */ DMG_ENTRY(0, 0x0), + /* Goron spikes */ DMG_ENTRY(1, 0xF), + /* Deku spin */ DMG_ENTRY(0, 0x1), + /* Deku bubble */ DMG_ENTRY(0, 0x0), + /* Deku launch */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x12 */ DMG_ENTRY(0, 0x0), + /* Zora barrier */ DMG_ENTRY(0, 0x0), + /* Normal shield */ DMG_ENTRY(0, 0x0), + /* Light ray */ DMG_ENTRY(0, 0x0), + /* Thrown object */ DMG_ENTRY(0, 0xF), + /* Zora punch */ DMG_ENTRY(0, 0x0), + /* Spin attack */ DMG_ENTRY(1, 0xF), + /* Sword beam */ DMG_ENTRY(0, 0x0), + /* Normal Roll */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1B */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1C */ DMG_ENTRY(0, 0x0), + /* Unblockable */ DMG_ENTRY(0, 0x0), + /* UNK_DMG_0x1E */ DMG_ENTRY(0, 0x0), + /* Powder Keg */ DMG_ENTRY(0, 0x0), +}; + + +// sColChkInfoInit +static CollisionCheckInfoInit2 D_80B9A5BC = { 8, 0, 0, 0, MASS_HEAVY }; + + +extern ColliderCylinderInit D_80B9A570; +extern DamageTable D_80B9A59C; +extern CollisionCheckInfoInit2 D_80B9A5BC; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Tree_0x80B9A0B0/ObjTree_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Tsubo/z_obj_tsubo.c b/src/overlays/actors/ovl_Obj_Tsubo/z_obj_tsubo.c index 100a74e8b..f40381e08 100644 --- a/src/overlays/actors/ovl_Obj_Tsubo/z_obj_tsubo.c +++ b/src/overlays/actors/ovl_Obj_Tsubo/z_obj_tsubo.c @@ -8,7 +8,7 @@ void ObjTsubo_Init(Actor* thisx, GlobalContext* globalCtx); void ObjTsubo_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjTsubo_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Tsubo_InitVars = { ACTOR_OBJ_TSUBO, ACTORCAT_PROP, @@ -20,7 +20,29 @@ const ActorInit Obj_Tsubo_InitVars = { (ActorFunc)ObjTsubo_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_809295B0 = { + { COLTYPE_HARD, AT_ON | AT_TYPE_PLAYER, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00400000, 0x00, 0x02 }, { 0x05CBFFBE, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 12, 30, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_809295DC[] = { + ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(minVelocityY, -20000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 100, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_809295B0; +extern InitChainEntry D_809295DC[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Tsubo_0x809275C0/func_809275C0.asm") diff --git a/src/overlays/actors/ovl_Obj_Um/z_obj_um.c b/src/overlays/actors/ovl_Obj_Um/z_obj_um.c index e538d3b43..11e56fb21 100644 --- a/src/overlays/actors/ovl_Obj_Um/z_obj_um.c +++ b/src/overlays/actors/ovl_Obj_Um/z_obj_um.c @@ -9,7 +9,7 @@ void ObjUm_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjUm_Update(Actor* thisx, GlobalContext* globalCtx); void ObjUm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Um_InitVars = { ACTOR_OBJ_UM, ACTORCAT_NPC, @@ -21,7 +21,26 @@ const ActorInit Obj_Um_InitVars = { (ActorFunc)ObjUm_Update, (ActorFunc)ObjUm_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B7C138 = { + { COLTYPE_HIT3, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK1, { 0x00000000, 0x00, 0x00 }, { 0x00000020, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 40, 64, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B7C254[] = { + ICHAIN_F32(uncullZoneScale, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 300, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B7C138; +extern InitChainEntry D_80B7C254[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Um_0x80B77770/func_80B77770.asm") diff --git a/src/overlays/actors/ovl_Obj_Usiyane/z_obj_usiyane.c b/src/overlays/actors/ovl_Obj_Usiyane/z_obj_usiyane.c index e6837182c..2ba089dd8 100644 --- a/src/overlays/actors/ovl_Obj_Usiyane/z_obj_usiyane.c +++ b/src/overlays/actors/ovl_Obj_Usiyane/z_obj_usiyane.c @@ -9,7 +9,7 @@ void ObjUsiyane_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjUsiyane_Update(Actor* thisx, GlobalContext* globalCtx); void ObjUsiyane_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Usiyane_InitVars = { ACTOR_OBJ_USIYANE, ACTORCAT_PROP, @@ -21,7 +21,18 @@ const ActorInit Obj_Usiyane_InitVars = { (ActorFunc)ObjUsiyane_Update, (ActorFunc)ObjUsiyane_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C086B0[] = { + ICHAIN_F32(uncullZoneScale, 1200, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 3000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 900, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80C086B0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Usiyane_0x80C07C80/func_80C07C80.asm") diff --git a/src/overlays/actors/ovl_Obj_Vspinyroll/z_obj_vspinyroll.c b/src/overlays/actors/ovl_Obj_Vspinyroll/z_obj_vspinyroll.c index 001688c4b..4e22ca367 100644 --- a/src/overlays/actors/ovl_Obj_Vspinyroll/z_obj_vspinyroll.c +++ b/src/overlays/actors/ovl_Obj_Vspinyroll/z_obj_vspinyroll.c @@ -9,7 +9,7 @@ void ObjVspinyroll_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjVspinyroll_Update(Actor* thisx, GlobalContext* globalCtx); void ObjVspinyroll_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Vspinyroll_InitVars = { ACTOR_OBJ_VSPINYROLL, ACTORCAT_PROP, @@ -21,7 +21,26 @@ const ActorInit Obj_Vspinyroll_InitVars = { (ActorFunc)ObjVspinyroll_Update, (ActorFunc)ObjVspinyroll_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80A3D488 = { + { COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x20000000, 0x00, 0x04 }, { 0x01C37BB6, 0x00, 0x00 }, TOUCH_ON | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_NONE, }, + { 30, 120, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80A3D4D4[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 500, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80A3D488; +extern InitChainEntry D_80A3D4D4[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Vspinyroll_0x80A3C4E0/func_80A3C4E0.asm") diff --git a/src/overlays/actors/ovl_Obj_Warpstone/z_obj_warpstone.c b/src/overlays/actors/ovl_Obj_Warpstone/z_obj_warpstone.c index 88e2ebc65..905f84358 100644 --- a/src/overlays/actors/ovl_Obj_Warpstone/z_obj_warpstone.c +++ b/src/overlays/actors/ovl_Obj_Warpstone/z_obj_warpstone.c @@ -9,7 +9,7 @@ void ObjWarpstone_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjWarpstone_Update(Actor* thisx, GlobalContext* globalCtx); void ObjWarpstone_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Warpstone_InitVars = { ACTOR_OBJ_WARPSTONE, ACTORCAT_ITEMACTION, @@ -21,7 +21,25 @@ const ActorInit Obj_Warpstone_InitVars = { (ActorFunc)ObjWarpstone_Update, (ActorFunc)ObjWarpstone_Draw, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80B93220 = { + { COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_2, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK2, { 0x00100000, 0x00, 0x00 }, { 0x01000202, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON | BUMP_HOOKABLE, OCELEM_ON, }, + { 20, 60, 0, { 0, 0, 0 } }, +}; + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B9324C[] = { + ICHAIN_U8(targetMode, 1, ICHAIN_STOP), +}; + + +extern ColliderCylinderInit D_80B93220; +extern InitChainEntry D_80B9324C[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Warpstone_0x80B92B10/func_80B92B10.asm") diff --git a/src/overlays/actors/ovl_Obj_Wind/z_obj_wind.c b/src/overlays/actors/ovl_Obj_Wind/z_obj_wind.c index ac4c2c15d..8e1b3a569 100644 --- a/src/overlays/actors/ovl_Obj_Wind/z_obj_wind.c +++ b/src/overlays/actors/ovl_Obj_Wind/z_obj_wind.c @@ -9,7 +9,7 @@ void ObjWind_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjWind_Update(Actor* thisx, GlobalContext* globalCtx); void ObjWind_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Wind_InitVars = { ACTOR_OBJ_WIND, ACTORCAT_ITEMACTION, @@ -21,7 +21,18 @@ const ActorInit Obj_Wind_InitVars = { (ActorFunc)ObjWind_Update, (ActorFunc)ObjWind_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B24480[] = { + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 4000, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B24480[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Wind_0x80B23ED0/ObjWind_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Wturn/z_obj_wturn.c b/src/overlays/actors/ovl_Obj_Wturn/z_obj_wturn.c index 620646588..7cc8275b0 100644 --- a/src/overlays/actors/ovl_Obj_Wturn/z_obj_wturn.c +++ b/src/overlays/actors/ovl_Obj_Wturn/z_obj_wturn.c @@ -7,7 +7,7 @@ void ObjWturn_Init(Actor* thisx, GlobalContext* globalCtx); void ObjWturn_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Wturn_InitVars = { ACTOR_OBJ_WTURN, ACTORCAT_ITEMACTION, @@ -19,7 +19,8 @@ const ActorInit Obj_Wturn_InitVars = { (ActorFunc)ObjWturn_Update, (ActorFunc)NULL, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Wturn_0x808A7930/ObjWturn_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Y2lift/z_obj_y2lift.c b/src/overlays/actors/ovl_Obj_Y2lift/z_obj_y2lift.c index 636cbee26..598d79f27 100644 --- a/src/overlays/actors/ovl_Obj_Y2lift/z_obj_y2lift.c +++ b/src/overlays/actors/ovl_Obj_Y2lift/z_obj_y2lift.c @@ -9,7 +9,7 @@ void ObjY2lift_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjY2lift_Update(Actor* thisx, GlobalContext* globalCtx); void ObjY2lift_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Y2lift_InitVars = { ACTOR_OBJ_Y2LIFT, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Y2lift_InitVars = { (ActorFunc)ObjY2lift_Update, (ActorFunc)ObjY2lift_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B9A940[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B9A940[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Y2lift_0x80B9A650/ObjY2lift_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Y2shutter/z_obj_y2shutter.c b/src/overlays/actors/ovl_Obj_Y2shutter/z_obj_y2shutter.c index 5d2355d17..02974cda7 100644 --- a/src/overlays/actors/ovl_Obj_Y2shutter/z_obj_y2shutter.c +++ b/src/overlays/actors/ovl_Obj_Y2shutter/z_obj_y2shutter.c @@ -9,7 +9,7 @@ void ObjY2shutter_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjY2shutter_Update(Actor* thisx, GlobalContext* globalCtx); void ObjY2shutter_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Y2shutter_InitVars = { ACTOR_OBJ_Y2SHUTTER, ACTORCAT_BG, @@ -21,7 +21,19 @@ const ActorInit Obj_Y2shutter_InitVars = { (ActorFunc)ObjY2shutter_Update, (ActorFunc)ObjY2shutter_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80B9AEB0[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80B9AEB0[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Y2shutter_0x80B9A980/ObjY2shutter_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Yado/z_obj_yado.c b/src/overlays/actors/ovl_Obj_Yado/z_obj_yado.c index c1ccbc541..3323dbdd1 100644 --- a/src/overlays/actors/ovl_Obj_Yado/z_obj_yado.c +++ b/src/overlays/actors/ovl_Obj_Yado/z_obj_yado.c @@ -9,7 +9,7 @@ void ObjYado_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjYado_Update(Actor* thisx, GlobalContext* globalCtx); void ObjYado_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Yado_InitVars = { ACTOR_OBJ_YADO, ACTORCAT_BG, @@ -21,7 +21,16 @@ const ActorInit Obj_Yado_InitVars = { (ActorFunc)ObjYado_Update, (ActorFunc)ObjYado_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80C16420[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80C16420[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Yado_0x80C161E0/ObjYado_Init.asm") diff --git a/src/overlays/actors/ovl_Obj_Yasi/z_obj_yasi.c b/src/overlays/actors/ovl_Obj_Yasi/z_obj_yasi.c index 526c7b7e8..ef61b7e81 100644 --- a/src/overlays/actors/ovl_Obj_Yasi/z_obj_yasi.c +++ b/src/overlays/actors/ovl_Obj_Yasi/z_obj_yasi.c @@ -9,7 +9,7 @@ void ObjYasi_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjYasi_Update(Actor* thisx, GlobalContext* globalCtx); void ObjYasi_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Obj_Yasi_InitVars = { ACTOR_OBJ_YASI, ACTORCAT_PROP, @@ -21,7 +21,19 @@ const ActorInit Obj_Yasi_InitVars = { (ActorFunc)ObjYasi_Update, (ActorFunc)ObjYasi_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80BB4D90[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 800, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80BB4D90[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Obj_Yasi_0x80BB4AF0/ObjYasi_Init.asm") diff --git a/src/overlays/actors/ovl_Object_Kankyo/z_object_kankyo.c b/src/overlays/actors/ovl_Object_Kankyo/z_object_kankyo.c index 130011d61..b2122e47d 100644 --- a/src/overlays/actors/ovl_Object_Kankyo/z_object_kankyo.c +++ b/src/overlays/actors/ovl_Object_Kankyo/z_object_kankyo.c @@ -9,7 +9,7 @@ void ObjectKankyo_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjectKankyo_Update(Actor* thisx, GlobalContext* globalCtx); void ObjectKankyo_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Object_Kankyo_InitVars = { ACTOR_OBJECT_KANKYO, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Object_Kankyo_InitVars = { (ActorFunc)ObjectKankyo_Update, (ActorFunc)ObjectKankyo_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Object_Kankyo_0x808DBE80/func_808DBE80.asm") diff --git a/src/overlays/actors/ovl_Oceff_Spot/z_oceff_spot.c b/src/overlays/actors/ovl_Oceff_Spot/z_oceff_spot.c index 4f1c24781..44cb6bbd2 100644 --- a/src/overlays/actors/ovl_Oceff_Spot/z_oceff_spot.c +++ b/src/overlays/actors/ovl_Oceff_Spot/z_oceff_spot.c @@ -9,7 +9,7 @@ void OceffSpot_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffSpot_Update(Actor* thisx, GlobalContext* globalCtx); void OceffSpot_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Spot_InitVars = { ACTOR_OCEFF_SPOT, ACTORCAT_ITEMACTION, @@ -21,7 +21,17 @@ const ActorInit Oceff_Spot_InitVars = { (ActorFunc)OceffSpot_Update, (ActorFunc)OceffSpot_Draw, }; -*/ + + +// static InitChainEntry sInitChain[] = { +static InitChainEntry D_80973478[] = { + ICHAIN_VEC3F_DIV1000(scale, 0, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 1500, ICHAIN_STOP), +}; + + +extern InitChainEntry D_80973478[]; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Spot_0x80972680/func_80972680.asm") diff --git a/src/overlays/actors/ovl_Oceff_Storm/z_oceff_storm.c b/src/overlays/actors/ovl_Oceff_Storm/z_oceff_storm.c index 0204d8d7d..ad967189f 100644 --- a/src/overlays/actors/ovl_Oceff_Storm/z_oceff_storm.c +++ b/src/overlays/actors/ovl_Oceff_Storm/z_oceff_storm.c @@ -9,7 +9,7 @@ void OceffStorm_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffStorm_Update(Actor* thisx, GlobalContext* globalCtx); void OceffStorm_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Storm_InitVars = { ACTOR_OCEFF_STORM, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Storm_InitVars = { (ActorFunc)OceffStorm_Update, (ActorFunc)OceffStorm_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Storm_0x80981760/func_80981760.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe/z_oceff_wipe.c b/src/overlays/actors/ovl_Oceff_Wipe/z_oceff_wipe.c index e7fa97454..6eda2a5ca 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe/z_oceff_wipe.c +++ b/src/overlays/actors/ovl_Oceff_Wipe/z_oceff_wipe.c @@ -9,7 +9,7 @@ void OceffWipe_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe_InitVars = { ACTOR_OCEFF_WIPE, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe_InitVars = { (ActorFunc)OceffWipe_Update, (ActorFunc)OceffWipe_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe_0x809764B0/OceffWipe_Init.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe2/z_oceff_wipe2.c b/src/overlays/actors/ovl_Oceff_Wipe2/z_oceff_wipe2.c index 9bd00ff4b..95762d3d5 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe2/z_oceff_wipe2.c +++ b/src/overlays/actors/ovl_Oceff_Wipe2/z_oceff_wipe2.c @@ -9,7 +9,7 @@ void OceffWipe2_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe2_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe2_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe2_InitVars = { ACTOR_OCEFF_WIPE2, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe2_InitVars = { (ActorFunc)OceffWipe2_Update, (ActorFunc)OceffWipe2_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe2_0x80986270/OceffWipe2_Init.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe3/z_oceff_wipe3.c b/src/overlays/actors/ovl_Oceff_Wipe3/z_oceff_wipe3.c index 2b051b492..09ce262d0 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe3/z_oceff_wipe3.c +++ b/src/overlays/actors/ovl_Oceff_Wipe3/z_oceff_wipe3.c @@ -9,7 +9,7 @@ void OceffWipe3_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe3_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe3_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe3_InitVars = { ACTOR_OCEFF_WIPE3, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe3_InitVars = { (ActorFunc)OceffWipe3_Update, (ActorFunc)OceffWipe3_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe3_0x809879E0/OceffWipe3_Init.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe4/z_oceff_wipe4.c b/src/overlays/actors/ovl_Oceff_Wipe4/z_oceff_wipe4.c index 7a392be38..295e0f75d 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe4/z_oceff_wipe4.c +++ b/src/overlays/actors/ovl_Oceff_Wipe4/z_oceff_wipe4.c @@ -9,7 +9,7 @@ void OceffWipe4_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe4_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe4_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe4_InitVars = { ACTOR_OCEFF_WIPE4, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe4_InitVars = { (ActorFunc)OceffWipe4_Update, (ActorFunc)OceffWipe4_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe4_0x8099D780/OceffWipe4_Init.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe5/z_oceff_wipe5.c b/src/overlays/actors/ovl_Oceff_Wipe5/z_oceff_wipe5.c index deb3ac6db..0543c03a8 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe5/z_oceff_wipe5.c +++ b/src/overlays/actors/ovl_Oceff_Wipe5/z_oceff_wipe5.c @@ -9,7 +9,7 @@ void OceffWipe5_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe5_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe5_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe5_InitVars = { ACTOR_OCEFF_WIPE5, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe5_InitVars = { (ActorFunc)OceffWipe5_Update, (ActorFunc)OceffWipe5_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe5_0x80BC7AD0/OceffWipe5_Init.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe6/z_oceff_wipe6.c b/src/overlays/actors/ovl_Oceff_Wipe6/z_oceff_wipe6.c index 95cfd3ed1..03f6421d3 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe6/z_oceff_wipe6.c +++ b/src/overlays/actors/ovl_Oceff_Wipe6/z_oceff_wipe6.c @@ -9,7 +9,7 @@ void OceffWipe6_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe6_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe6_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe6_InitVars = { ACTOR_OCEFF_WIPE6, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe6_InitVars = { (ActorFunc)OceffWipe6_Update, (ActorFunc)OceffWipe6_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe6_0x80BCA5A0/OceffWipe6_Init.asm") diff --git a/src/overlays/actors/ovl_Oceff_Wipe7/z_oceff_wipe7.c b/src/overlays/actors/ovl_Oceff_Wipe7/z_oceff_wipe7.c index f89c49a3a..99dc5fb54 100644 --- a/src/overlays/actors/ovl_Oceff_Wipe7/z_oceff_wipe7.c +++ b/src/overlays/actors/ovl_Oceff_Wipe7/z_oceff_wipe7.c @@ -9,7 +9,7 @@ void OceffWipe7_Destroy(Actor* thisx, GlobalContext* globalCtx); void OceffWipe7_Update(Actor* thisx, GlobalContext* globalCtx); void OceffWipe7_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Oceff_Wipe7_InitVars = { ACTOR_OCEFF_WIPE7, ACTORCAT_ITEMACTION, @@ -21,7 +21,8 @@ const ActorInit Oceff_Wipe7_InitVars = { (ActorFunc)OceffWipe7_Update, (ActorFunc)OceffWipe7_Draw, }; -*/ + +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Oceff_Wipe7_0x80BCDCB0/OceffWipe7_Init.asm") diff --git a/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c b/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c index 6792102b8..41cf987f6 100644 --- a/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c +++ b/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c @@ -8,7 +8,7 @@ void ShotSun_Init(Actor* thisx, GlobalContext* globalCtx); void ShotSun_Destroy(Actor* thisx, GlobalContext* globalCtx); void ShotSun_Update(Actor* thisx, GlobalContext* globalCtx); -/* +#if 0 const ActorInit Shot_Sun_InitVars = { ACTOR_SHOT_SUN, ACTORCAT_PROP, @@ -20,7 +20,18 @@ const ActorInit Shot_Sun_InitVars = { (ActorFunc)ShotSun_Update, (ActorFunc)NULL, }; -*/ + + +// static ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit D_80973BA0 = { + { COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_CYLINDER, }, + { ELEMTYPE_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000020, 0x00, 0x00 }, TOUCH_NONE | TOUCH_SFX_NORMAL, BUMP_ON, OCELEM_ON, }, + { 30, 60, 0, { 0, 0, 0 } }, +}; + + +extern ColliderCylinderInit D_80973BA0; +#endif #pragma GLOBAL_ASM("./asm/non_matchings/overlays/ovl_Shot_Sun_0x80973640/ShotSun_Init.asm") diff --git a/tools/overlayhelpers/colchkinfoinit.py b/tools/overlayhelpers/colchkinfoinit.py index 73538cef3..fb14a204a 100755 --- a/tools/overlayhelpers/colchkinfoinit.py +++ b/tools/overlayhelpers/colchkinfoinit.py @@ -29,7 +29,7 @@ def main(): if args.type == "ColChkInfoInit": info = list(struct.unpack(">Bx2hB", filedata[file_offset:file_offset+7])) NameMass(info) - output="// colChkInfoInit\nstatic CollisionCheckInfoInit D_{0:08X} = {{ ".format(args.address) + ", ".join(map(str,info)) + "};" + output="// sColChkInfoInit\nstatic CollisionCheckInfoInit D_{0:08X} = {{ ".format(args.address) + ", ".join(map(str,info)) + "};" else: info = list(struct.unpack(">Bx3hB", filedata[file_offset:file_offset+9])) NameMass(info)