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 2bb11f0c0d..9b4823f222 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 b9ddb40492..d2c4c755f2 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 4a372d9a34..32835a3e8e 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 567d08db64..6db3e4938d 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 ccdc6d0395..f802879e35 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 616f41b1b9..064496c0ba 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 da5ab5277c..0156c38a10 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 e780bd5e9b..48b02a870d 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 1924e2f483..5ad9302301 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 78d4da4faa..10474c41e2 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 544fe757e6..16aabb24a5 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 6855a8cd4d..143d2b9150 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 e9d2b6e75c..a6f171e3de 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 a00fd98ac1..b3dd893e01 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 8d5fb3b145..aa0eb2efb6 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 3ec6566088..994a72e356 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 bfe8b41502..6d0003cc9d 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 2f30ccfb5c..dcb643a15a 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 5bbbd6216e..de1717f104 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 b2cd121760..2a309cc98e 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 b7ff320102..9db6c885d5 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 b6f48be2bf..27027c909c 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 d333555e5f..8aaa821162 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 a55b31da29..3efacef06d 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 eb63627fe6..cf40ac5da5 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 f0f025b577..756a3c901b 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 07afed272c..e59eae4e72 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 eb061c1031..525878f478 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 71700d67fd..b5ddc920a6 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 08a1c31701..a78c50b962 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 a4f62910c5..75945a2976 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 6fae688215..1e33fde7db 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 0087603b81..407e65ff5e 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 aa222a2bb1..f39d0120e8 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 e3f9bb3221..7775dd979c 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 883d7a4593..7508569d46 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 e9e8030eef..e6e4043e33 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 99d77a0db6..384a2ac394 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 32d14f9bc4..9487dba71b 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 dd5d758623..7417b544b8 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 f52330323a..cb5bcd9af5 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 1c0d8e40f4..fcd95014ec 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 b497d7d892..0c391f43bd 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 2de552db6f..a73562b95b 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 4e3113f377..62aff4c641 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 7d8abd8ad3..d4f5c32d3c 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 6ebb393815..ac6819d143 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 82b62e5ba9..c4273ccaaf 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 0a65bda40e..52900f7a99 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 0cca8bb5eb..3e5e24cb31 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 1b75fdce20..24e2d7137a 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 09bd00ac3d..aeab434d81 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 834f7394c5..be1c08a93a 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 ff2f046671..329e9ff830 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 098c76fb55..dad5a97e12 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 01c2fb5ab3..8af49488db 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 953683f073..e587e54628 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 3b8cf4da13..c61f737b1c 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 7282595b3e..1d84958d06 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 a6ecb7f933..28ff099c0b 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 d53fa05437..0999c96c2b 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 1dda1def50..6799e323c8 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 e3955f9dc1..dd8f38c2f9 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 2d946a30eb..ca9066b77d 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 ba5800f689..4e9e95a1d5 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 23d6cc4088..b4e9d9b02c 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 b125e556fa..b9c84d9d28 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 5220fbf04d..65c24155d9 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 5b30f48bd4..91c1c07d0e 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 410abcafa4..3127b9fd69 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 a9c406738c..ae25d8b969 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 223283919c..11e4353edb 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 f9ca033fe3..3c8bd3aa8c 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 0591930bee..b05caa4452 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 4d69bd6e60..d0e93375bd 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 01e7363ea3..7adacccc3b 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 260c6ec172..c80f7222d6 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 8f2bfebac9..018baba9e0 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 eaf2988a01..dd722b090c 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 987ff4b299..c9f193141b 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 c009f856be..003edea59e 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 83d0644372..10609313c0 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 37a1aec954..fe43468e63 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 b26ae28e86..5c32544e48 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 0579c1ce81..9ece1c7326 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 9e631633f6..1ad9aa7856 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 7bc56d5e41..cddf4cecec 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 18f32f9fd9..56057a7531 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 0843d59921..913020907b 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 d675609707..106f55651f 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 bc6dc586d1..c36f1765c5 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 e21e1d7ef2..9f08d854c4 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 459e124713..81749b85fd 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 76e9378161..c81fb07ebb 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 524e3b28a4..331fd500b6 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 f9d7f8e216..caf51468c7 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 2652e32bba..bb9a284191 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 7d0a6eab43..73ffd9be57 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 3d48fa2c3b..e2c739bdd0 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 37241b4298..60f5faf5fb 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 4e982594d9..53b32e265e 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 120284d73b..04a4061618 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 cfbf0ffd60..41b24d3976 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 4409bc17cb..5f18d76a49 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 49f199316e..e9d3072e9e 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 b929e556d4..c9ca734401 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 8f258f6d95..0385569ae1 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 170fa01e60..337016442e 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 75c0818ebb..052cb0ad37 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 e013caf4ea..a9445dff1d 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 a8bb9958a7..f84fb53fde 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 f48ed134d1..53f3619a2e 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 fe2f175fd3..2f550ac035 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 7312413831..daed7a5170 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 78b0eacf5e..7fb0aec09f 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 c66daf7939..1f4886d3a3 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 122541832c..e9d8f5e398 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 2eda58e072..c136e38349 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 ffa724597a..b15bf9cffd 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 ecb7a9c274..d3630b4458 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 20ed2bde1d..c2c9dca0ab 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 9d080debc6..afa76ede75 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 7cfb2d877b..8431d0de94 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 733e31a2ae..59bf7b5509 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 9d6af72084..0ad57f4e9a 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 79c3b37dcd..d434a12c2c 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 db8d93e7bb..e16c013135 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 7a67306f3b..bdb581cf0d 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 f81ae5d80f..dcc9f8e9f2 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 e51743ef11..aec1c03b48 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 18fc7e6b65..2831972102 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 ba5737630d..a82c84d7aa 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 8fff6bf050..5c09e043f8 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 67b82d3918..4bfbd98fd7 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 6ad91eb352..648d269986 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 b2fad3f602..b14ee63621 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 2ec52ae33f..e2a0462b47 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 eda9934674..a13d7a01eb 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 fd358524f3..5954377fa8 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 43eedf37ca..28f10a2aad 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 568ec0c86d..eef5a55b31 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 772c746c27..24b8466f6c 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 2b3979f103..ee1f7b3339 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 183c18ccef..20a6cfbd69 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 582af2bc69..846263a4bd 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 d466f03a9b..daa5059383 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 87398ba705..2bd5676962 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 e9d92e8e3b..89388283ca 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 06d07c874a..2d9d4f3fc4 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 9ff852aa5c..9f74db2490 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 a5a7038918..677475cb6d 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 6dbce2f887..e7856fa02f 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 96a32b7a0a..2cc1e1c5d7 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 383f49f083..31b71d6e18 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 dbef805319..8f7d11db67 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 8781783e6a..0f7c3b37e4 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 233370b1b9..fee96a92dd 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 cd6f90e3e9..9fe4fbd9dc 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 0ee6d5bd3a..8b1862ecdd 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 a7f8256caa..879198922c 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 539e69d904..101327e992 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 ec5f1fe4e8..1bd6411282 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 a6f0dda2e8..e226ec77c3 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 74b39979c8..a9d27bce7a 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 3fcd88dc62..296233301d 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 a1660a5658..6a3ce7ccf6 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 dd2feb08b9..b53819b306 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 7a8b8d3ace..56c5db8752 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 a3c10ade24..f9e0b8b4f0 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 265e3acb53..8ea70dc7c0 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 90d4edb806..6473e22881 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 084d5d3abd..f1f8ca9d71 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 b488c38e07..25c4fcc02e 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 e8e7303bec..faf1660a0e 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 43617cef17..c5636dfc6e 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 b618e0cdb6..1e5c078dd3 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 b5a0b88bd7..51babbbc3e 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 cb283841f8..3cf50264f5 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 cf9d501094..31b5a2b446 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 ec835b0d76..6914a8ee3c 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 eca155cbfa..4215c741fb 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 82f26e4264..d6e5fdc0e6 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 b71faacd75..d185f79444 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 82610e3e7e..5b799bfda4 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 2b76bcbdb3..7bf8cc94c5 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 72c81172c5..6c2748ef0d 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 c7fdd14d3a..7289155658 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 30e7ec541d..190479c5b0 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 7be5e798b7..2e616205fc 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 6151d3407d..b76161727d 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 e371bed285..dde3fb2934 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 50e4069102..363c89d84c 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 974985cb23..4155aa8a58 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 4daee01c6e..93030452a0 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 4cb8bc36bc..3cbeda374a 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 2dacead0a7..df7ca7f266 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 e523b6b676..a71b281400 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 c8744fbed3..222d98b0f4 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 139867b4eb..5c63182306 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 fd5b8abb74..53a1a57851 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 562c94bf81..780d8248e2 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 8e1cf48075..68d1471652 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 6efea2bcf7..a26bec2b3b 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 49763014a9..065702030e 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 1130c00b7a..451112df91 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 1e2b09ebef..b958d72a7f 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 8592592d66..f618e58fa9 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 93309a6899..45e4034d14 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 f8b5d1f492..3b3ddca090 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 961e35421c..fd806c1db1 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 7b708810a4..eb3318ce50 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 9aa10d7d71..0ff3fefd00 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 868447decc..02d92af0f7 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 9001e19fdc..d3cfb8b428 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 e9e92f8ba3..2c50bcb0ca 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 670f9e0d73..0d94b62a44 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 243fb7575f..ed62f7f531 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 7eaf74b724..d108f992a2 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 9961a00dfd..267dc6c26c 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 4bdc4da0a5..aabe101cd0 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 497db3583e..24279f8309 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 896513c44f..288913259b 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 21e7cf7eec..35bad4c62d 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 43baaa459a..c041d1e2eb 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 23fe508ded..bd256b99dc 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 68b8a502d0..6b44d3c4ee 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 ef6fc135ed..234350e552 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 eeeee2a77d..37d9af7dfb 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 34b4283206..3ebfab7aac 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 ec54f5efc2..58450d52ac 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 42c1a1f10f..004ad27845 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 71bf534b1e..2fc356bd41 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 9b7a6769ec..3fee5e0730 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 1413eb43fb..2f60ac6851 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 510bb8060e..75ce9ba5b4 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 93c807e183..6b617a7a1d 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 1934023f66..e6e899b122 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 66535c0c7c..59e09619f9 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 16b9706b66..4b15414bdf 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 c6066bb5e7..6681e89944 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 88e85baa91..08266b25d1 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 3f88815475..2f70297c3b 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 8212f80678..81966a1b47 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 f3f4f01d81..5635fd8acc 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 e134fb999b..448a2e9ab1 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 f1dadc9556..c12023e804 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 abf48ed7a9..9f809479c9 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 87b3d06b9f..64b3a352fe 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 0d0cef49ae..e0615854aa 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 35f8c79f1b..87e70f298e 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 f581c78614..e3fa211adf 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 252b5e1d1d..462a0923ac 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 f1cd3dad78..f19b37fe7b 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 ec40f7286f..09be84c049 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 d4d000088b..820af77787 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 872cc7551e..be4eaf75d3 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 5588db382b..76ad7447c3 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 571e75aa0e..671f4c9317 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 796a6afb62..c46f41fefc 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 8b4d3f50a8..b759500634 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 d19c26e746..f810037962 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 f8664c86c0..8605b625f5 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 9a3688d98f..e6425a39b9 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 f185b88731..a69b357a89 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 cc70389abd..48cddfe620 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 8ab6d45f42..dd697146fd 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 c4f8de74b4..28be266101 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 f68a605a14..7fa7a03245 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 bcd9d78aa0..86a338ecc6 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 238baa6f24..f0b901d40d 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 dc404cf9dc..80d29f681e 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 ed37a1c4db..99c21ff4c4 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 23de44aa63..19364cd9a4 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 20a3408e21..726290b945 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 6b3d84ebea..e51ac45d2b 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 2114f40090..51747fedc1 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 79ee8c90f2..4475e5ea55 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 80c6a7b234..c1406000d3 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 ff6ed587f1..4186e4f4dd 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 6a7f17af1a..640ec7230b 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 e5dbf946d3..4471d05397 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 7787014f7e..158d983a88 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 79886e2fd5..21cd333be7 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 23e4ba6602..493137f39e 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 9f176e4bf2..7da67c8b72 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 584c9a0f73..bfef26f30b 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 52ab7d0fd5..5452215de3 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 ebf9b2d562..cbae6b7c6f 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 5d7cf8f27c..7890364f4f 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 e9b006c3e4..09f4342b9d 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 da6d3f02fc..3ee6a1203a 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 e9e801a2fd..59e95d9e76 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 72fe527fe3..1cb14fe903 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 367eac450b..219e8393e3 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 bd81a15524..12a5937515 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 a9b2ebcd69..e6fd5f6cf4 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 b1359a9f10..ce466d3620 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 7f3865079f..f035a6205a 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 33b8fa7cfe..ed8dea5037 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 b4d2ff2de3..e6fcc3bc51 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 2cafda0da3..24969c796b 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 3e23dad14c..f6182a241c 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 11ee0ea86e..37624ff47a 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 0a542e6e26..2894d38859 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 9588a98c80..80d90e3d55 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 19cb87941f..0da5bb1910 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 98791ccd28..fe129aed53 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 dd22cecfec..9e048aeaab 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 3a922053fe..ac7d967e0a 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 0aa248ee45..76ee5a28ab 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 af27a36398..d916a82729 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 1e238b83bd..2d063651b7 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 5aa8656cce..413000565e 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 91045d5364..b6746c7138 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 496f73075b..33cc223fec 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 25a4cfa93f..7bcc9c16e2 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 3052fae558..1882dda693 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 a4e79b0063..32e2124662 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 49aa60a2f6..9511577102 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 97faffe8f5..f11f35a4a8 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 593cd27cc2..7bc6131ec1 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 d093177cc0..b3ad6239d5 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 f2753bebe9..5a0712acdf 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 5ef4b7e31b..6437540df5 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 ebb51452d2..237220d53f 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 a24af6f4b2..d8e6e3fcba 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 357a088ea2..92c04492b1 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 407e73cbfe..f876ac1a25 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 d7a1bb0578..5e1949b38c 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 1fbade222b..9280d9a462 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 adb5de6d24..dead6d6914 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 2bb877d4e2..1351266b15 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 2c1745ebcc..5f2b65574f 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 1cf6c40d6f..0dab77f20d 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 6650a35662..c7f2af56bf 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 27b372ad75..2aff9783f1 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 951b10239e..1f56efeefc 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 bd8e493e8f..9ef7128cb1 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 6dcb95dd62..de841a12d0 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 719a8e0e05..83fdedd562 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 5e91e18672..aa48acb2bc 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 01a447bd95..186e299cf4 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 2e801ca7e4..10e942ee1f 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 3e84b0952c..ef8a22c0ad 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 d20d58ed23..3d859a0bd9 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 ee633997cb..ab1c048f89 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 4cd1f903fa..29e7e28b9f 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 46d25ee51c..435c722307 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 0f2999b7a3..b114a8236e 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 01fe8d3323..d634b5e9d6 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 c41b660947..879c5b87a9 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 8c9cfd2082..6810b54f12 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 b34fac1d17..faf5fce28b 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 4239f52819..ce349d2439 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 751ae3ba07..d2570b8453 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 8e061c6f80..2c8823f6e6 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 4fe7bda1cc..c94bf38eb0 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 741f301789..177dad54e6 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 430f3972ff..e88aed7eb6 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 8f3327d74b..7f34c7b17d 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 bcbc2a135d..f5f20bb44b 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 129070a10a..4a1046efe4 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 dea348c71e..b4c7e65eb9 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 c0c79a7844..ad82d45de0 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 3e7e088cb1..94446bd481 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 4ec5da5fd3..c60b20f8b4 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 5d0dfeaed2..31740c9c86 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 758e6222db..3305c60482 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 0848eff378..1317ccf654 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 34d8d20992..2c7f1c973c 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 df89668080..806b09c66a 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 6e4611eb50..3e58951982 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 9c54a39917..85a8b9b1a3 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 3cc8b70b17..b6a2723436 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 e541455782..d308619352 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 445006584a..d6f2495f56 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 679ad81630..896c38eb52 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 68a99ae064..c9c88dbda9 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 416816dc6b..842f8a4923 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 852e427b6c..8162d318d9 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 1c29ae2b79..7b502bb12e 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 a01e631faa..108e5924e1 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 3aa7e76180..a577252308 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 2d05eff8c6..6f57e1d495 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 d5016b7be0..045c053217 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 2354a54035..8d1c3c8752 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 2c47e2d79d..26788d0840 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 526cccba07..091e021750 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 c06a9f14e5..84ae67a995 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 b77c2a7c25..a754ff05ee 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 14ca275cd1..25008c8252 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 68b2b054b0..140d93a942 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 70084df845..a441457ddc 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 faf687e4a0..cf6e899e8f 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 6b2fa299cb..88797f6d9b 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 ead9c09399..eb842de4a5 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 f81f5d4dca..746086217a 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 a04bb58313..6a5b6ac0fd 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 bab86c7f03..e166794c00 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 0d7c745fd9..ec4336c99f 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 b91347ce69..b94d0bb249 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 058212c77c..beea11a985 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 5733e6fcb0..4b399f2759 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 abb2e314bc..338a592741 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 351084f625..8c8587bffb 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 bf89d0eab4..699b20f51c 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 55475d5be3..0bf094ef99 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 ae145c8025..f320dae2ff 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 14d8b7644a..5d1bd8a26e 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 d5d4bc8f6a..08a826fe4b 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 26322a2eb9..a604be5bc0 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 26b0c06ede..99334d542a 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 09ecb1c28b..7583e2c28c 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 c9cf224ec9..7cd18b0116 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 182a123ce0..0e5df3545f 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 1fe01b458a..25490a7eea 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 7cbe45c110..b82932eaa5 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 151dfe7770..43d0f02934 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 d75392f665..70a6668421 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 8b666d641c..7170600677 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 4cb125413d..d8518abbc5 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 a0c554f2cf..d79b01c053 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 fb845cf6cf..87116a7256 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 1ec77ea173..61ffbabea7 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 c51d25e8c1..cd57dd3d63 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 bf809480ec..55482936c4 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 2b77ffed2c..924b479544 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 053c9a42fa..9a3f5f3ad0 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 7182ade64d..0354e4e929 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 63e12c2e96..116984b42c 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 96a063af59..d9b722c06d 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 9f6fc51146..c887057692 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 16d9007929..79ed5c41d3 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 cb34f99132..3578e14b58 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 f759ab30fd..84d9c5500a 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 581ac9cad7..227c2b79c5 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 3bb34b6596..a989c5b926 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 4070a6b71e..08398dc955 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 38d216d6d0..385a7b6644 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 113c307b2d..04f1604121 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 d799193573..5db64d4d62 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 5015888ce6..ecb88b35b5 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 3abf41e3bb..ba3978341c 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 11127af603..3d40f74796 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 6624db6ea1..fec0906613 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 05e51d9523..709aef7577 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 a7f844f5f2..feea811d29 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 9af149d160..38ecb0c694 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 40b7dec901..a9bdf62cf5 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 c932883bbc..6e72d83e3c 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 0af5f76e3d..1d05f45205 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 e79c848152..41ecdd5e66 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 2e846f4234..cec18dd0ef 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 4ea35e79f6..7c52f08bc9 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 db31d92812..a5adfdc548 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 a3513d8070..2cdd7d9820 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 07cbf940fb..02564d8703 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 b2a9740ba2..cdd6845878 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 b6dd852c1d..0fed3ca8c7 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 eaed27d77c..de934dd22b 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 0e27430d57..5b06002977 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 f3ff437bdb..79391e87c9 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 6167b0b556..fd48e0d13a 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 867ea587af..587a1e6ad4 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 197cc99f1a..e767d2c82e 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 1df3774daf..40303bc339 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 884f996fdb..8deef74300 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 100a74e8b3..f40381e080 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 e538d3b43e..11e56fb219 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 e6837182c4..2ba089dd87 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 001688c4b5..4e22ca3677 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 88e2ebc656..905f843589 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 ac4c2c15da..8e1b3a5690 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 6206465884..7cc8275b0f 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 636cbee26e..598d79f278 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 5d2355d179..02974cda74 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 c1ccbc541e..3323dbdd14 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 526c7b7e80..ef61b7e817 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 130011d614..b2122e47d2 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 4f1c247819..44cb6bbd27 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 0204d8d7d0..ad967189fb 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 e7fa974542..6eda2a5ca7 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 9bd00ff4b1..95762d3d52 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 2b051b4924..09ce262d03 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 7a392be389..295e0f75d0 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 deb3ac6db0..0543c03a8a 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 95cfd3ed1b..03f6421d3e 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 f89c49a3a1..99dc5fb54c 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 6792102b88..41cf987f6b 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 73538cef3f..fb14a204a8 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)