summaryrefslogtreecommitdiff
path: root/src/code/z_play.c
AgeCommit message (Collapse)Author
2025-06-17Document `Save.cutsceneIndex` and adjacent data / code (#2286)Leonid Kapitonov
* introduce `enum CutsceneIndex` as a first step * crudely rename `enum CutsceneIndex` entries * run `check_format.py ...` separetely so that it doesn't clutter previous commit. still, allowing `clangd LSP` to run format-on-save yields inconsistent results for me with the project's tooling, especially for header files * apply a draft PR suggestion Co-authored-by: mzxrules <mzxrules@gmail.com> * rename `CS_INDEX_*` with PR suggestions and some additional observations reverified with > `check_format.py ...` > `make ...` additionally: - current clang-format lacks a rule for trailing commas - compiler says about them `cfe: Warning 624` * improve `CS_INDEX_*` naming, rem `ENTRANCE` suffix https://github.com/zeldaret/oot/pull/2286#discussion_r1829165205 reverified with > `check_format.py ...` > `make ...` * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/4/console hmm, i do need this automation locally to * apply a PR suggestion https://github.com/zeldaret/oot/pull/2286#discussion_r1829219841 * remove redundant comments, fix the header comment and add a comment chunk from https://github.com/zeldaret/oot/pull/2286#discussion_r1829108940 * rename the flag for freeing `nextCutsceneIndex` * rename the flag for automatic `sceneLayer` calc it gets assigned to the `nextCutsceneIndex`, so `CS_INDEX_NONE` name was misleading * use explicit scene layer names instead of numbers * ok, now the last two `CS_INDEX_*` are less unknown the purpose of `CS_INDEX_BARRIER` is not quite clear still * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/14/console * run `fix_bss` locally `ntsc-1.2` refused to comply though * revert all local to the branch bss shifts * ugh, use defines instead of an enum probably size of enum entries doesn't match well? originally these were just numbers. besides, not like it's a real enumeration from zero to a value or some bit flags * still, add a BSS pragma for `z_demo.c` * apply review changes * factor out a cutscene layer formula * give scene layers names throughout code * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/32/console * tweak `CS_INDEX` descriptions * apply PR review suggestions * rename "auto" -> "default" * apply PR review suggestions https://github.com/zeldaret/oot/pull/2286#discussion_r1868693980 essentially reverts 106cb1021be88f745ee303838c11c7d7cbf9c79d, except for 2 generic `z_scene.c` lines * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/77/console * Apply suggestions from code review Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> Co-authored-by: mzxrules <mzxrules@gmail.com> * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/175/console * Move CS_INDEX_* macros to z64save.h, with the definition of gSaveContext.save.cutsceneIndex * `#define CS_INDEX_D 0xFFFD` and co. Co-authored-by: cadmic <cadmic24@gmail.com> * add comment on CS_INDEX_D * review * CS_INDEX_NONE is back * bss * expand comment about 0xFFFD * fix comment about 0xFFFF usage * review --------- Co-authored-by: mzxrules <mzxrules@gmail.com> Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> Co-authored-by: cadmic <cadmic24@gmail.com>
2025-06-17Rename `acDmgInfo.effect` -> `hitBacklash` (#2555)Dragorn421
* CollisionCheckInfo.atHitEffect -> atHitBacklash * ColliderElementDamageInfoAC.effect -> hitBacklash * add HIT_BACKLASH_ enum * bss * bss * bss * bss * bss * Update comments
2025-06-15Macroify PlaySfxGeneral calls: introduce `SFX_PLAY_CENTERED` and ↵Dragorn421
`SFX_PLAY_AT_POS` (#2633) * Add `SFX_PLAY_CENTERED` * Add `SFX_PLAY_AT_POS`
2025-06-07Document fog functions Gfx_SetFog(2) and Play_SetFog (#1922)Tharo
* Document fog functions Gfx_SetFog(2) and Play_SetFog * review * Apply suggestions from code review Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com> --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2025-06-04Remove "z64" prefix from all headers (#2518)fig02
* z64 - a * z64 - b * z64 - c * z64 - d * z64 - e * z64 - f * z64 - g * z64 - h * z64 - i * z64 - l * z64 - m * z64 - o * z64 - p * z64 - q * z64 - r * z64 - s * z64 - t * z64 - v * restore file * fix merge * fix merge --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2025-06-04T() macro loose ends 2 (#2564)Dragorn421
* More T() in niw_girl, ossan, rr, ta, tana, wall_tubo, yabusame_mark * Add and use LOG_STRING_T() * include debug.h in translation.h * Kyaaaaaa * bss * comment on Yabusame mato possible typo * Revert "Kyaaaaaa" This reverts commit 95097831fac62dd1f039b89cefca114c6a23b56e. * (Kuzu)hara * 原 -> "-Hara" from dev name, possibly
2025-04-27Delete macros.h; Delete global.h (#2516)fig02
2025-04-26add array_count.h (#2514)fig02
2025-04-25macros.h 3/5: Split various macros (#2512)fig02
* split out various macros * fix * fix2 * fix dw * libc path * fix macro * does this fix bss * fix bss
2025-04-24Use official macros for Physical Address conversion (#2511)fig02
2025-04-23macros.h 1/?: `PRINTF` and `T` (#2509)fig02
* create printf and translation headers * non-overlays complete * printf finished * move T macro * edit comment * fix error * fix bss * remove is_64 * fix bss
2025-04-19Remove Variables.h; Decouple z64.h from global.h (#2507)fig02
* progress * z64.h issues sorted * remove variables.h * format * n64 fix * another fix * did the wrong fix * fix libleo * fix bss * review * remove instead of comment
2025-04-16variables.h: migrate all remaining varaibles, remove other dependencies ↵fig02
except z64.h (#2505) * move remaining variables from variables.h * fix other dependencies * extra newline * fix and adjust comment * is this the problem * fix bss
2025-04-06variables.h cleaning: migrate libultra variables (#2503)fig02
* variables.h cleaning: migrate libultra variables * another increment_block_number * fix bss
2025-04-05Remove functions.h (#2501)fig02
* split most of functions.h * osdriverominit * forgot include * fix * remove functions.h * temporary fix for fix_bss * fix bss * revert fix_bss.py change
2025-03-26Some functions.h and variables.h work (#2491)fig02
* sort fuctions and variables * bss
2025-02-26Reduce dependencies on global.h (10) (#2490)mzxrules
* reduce z64.h size * fix z_cheap_proc.inc.c * ,bss * remove temp delcaration
2025-02-24Reduce dependencies on global.h (9) (#2488)mzxrules
* split game states * split all GameState headers * match fig names * deduplicate headers from bad merge * split z64actor.h into z64actor_profile.h, z_actor_dlftbls.h * fix compile error * .bss
2025-02-22Clean out z64.h (#2484)fig02
* Clean out z64.h * fix version include * overlay.h * pr suggestion * try fixing main.c * add back forward declare * fix bss * header guard * prefix
2025-02-20Create headers for Game States (#2482)fig02
* make headers for gamestates * fixes * fixes 2 * bss
2025-02-19Reduce overlay dependencies on global.h (8) (#2478)mzxrules
* move variables into z64environment.h * z_room.h * z64sram.h, z64ss_sram.h, z64font.h, kanread.h * z64lifemeter.h, z64debug.h, debug_arena.h * buffers.h * remove z_bgcheck global * gamealloc.h * suggestions * .bdd
2025-02-16Reduce overlay dependencies on global.h (7) (#2472)mzxrules
* z64env_flags, z64quest_hint_commands * z64cutscene_spline, z64save.h moved from z64.h * bss * pr suggestion * bss * suggestions
2025-02-11Name Actor_DrawAll (#2464)fig02
2025-01-27Split z64debug_display.h, z64draw.h, z_en_item00.h (#2443)mzxrules
* z64debug_display.h * z64draw.h * z_en_item00.h * bss
2025-01-19[iQue] Match z_actor (#2431)cadmic
* [iQue] Match z_actor * Reword comment
2025-01-10[iQue] Match remaining src/boot files (#2417)cadmic
* [iQue] Match remaining src/boot files * Fix debug ROM * Use -funsigned-char * Sort ique before gc in LNx macros
2024-12-17Document z_horse.c and related actors (#2278)mzxrules
* document z_horse.h * .bss * suggestions and more comments * bss * INGORACE -> INGO_RACE * format header macros * FIx incorrect type comparision * EnInMode -> EnInStartMode * R_EXITED_SCENE_RIDING_HORSE
2024-12-15Add macros for line number differences (#2365)fig02
* initial work, think I got all of them * cleanup line_numbers.h * fix gc-eu-mq-dbg * fix matching problems * remove old lines * format * missed some stuff * comment fixes * other * review changes
2024-12-08Document Player Params (#2307)fig02
* document player params * better bgcamindex comment * cant use -1 for condition * fix match * define for default bgcam * doesnt work * matches * better comment
2024-12-02Fix some more GCC warnings, mark some bugs based on GCC warnings (#2309)Tharo
* Fix some more GCC warnings, mark some bugs based on GCC warnings * Weird formatting * Suggested changes * More weird indentation I guess * UNREACHABLE() macro, add missing NORETURNs to fault_n64.c * AVOID_UB for PAL path in z_file_nameset.c * Remove comments about return types * Remove temp no longer needed
2024-11-17Decouple Debug Features From gc-eu-mq-dbg (#2296)fig02
* rename OOT_DEBUG to DEBUG_FEATURES * makefile changes * add DEBUG_ASSETS * fix DEBUG_FEATURES usages * format * fix errors * review * fix problem and review2 * review * add DEBUG_FEATURES to DEBUG_ASSETS check * review * whoops * format
2024-11-15Use debug macros even in N64-only code (#2298)cadmic
* Use debug macros even in N64-only code * Use UNK_FILE/UNK_LINE instead
2024-10-09[ntsc-1.0/1.1] Match line numbers in debug strings (#2255)cadmic
2024-10-01[headers] Create `one_point_cutscene.h`, `z64olib.h` and move stuff to ↵Dragorn421
`z64{object,player,scene}.h` (#2250) * [headers] Create `one_point_cutscene.h`, `z64olib.h` and move stuff to `z64{object,player,scene}.h` * bss * sSceneCmdHandlers * bss * bss
2024-09-23[PAL N64] Miscellaneous changes (#2211)cadmic
* [PAL N64] Miscellaneous changes * Reword comment Co-authored-by: fig02 <fig02srl@gmail.com> * glitch -> Glitch --------- Co-authored-by: fig02 <fig02srl@gmail.com>
2024-09-05Update Room Documentation (#2015)mzxrules
* Update Room Documentation * Write more complete documentation, implement suggestions. * Function name changes; minor comment tweaks * nit * Resolve Dragorn fixes * Resolve Fig suggestions, fix comment wording * fix bss, fig suggestion * bss
2024-09-04Pause docs: `WorldMapArea` enum and related data (#2130)Dragorn421
* Pause docs: WorldMapArea enum and related data * `WORLD_MAP_AREA_20` -> `_QUESTION_MARK` * bss
2024-09-05[ntsc-1.2] Organize n64dd declarations and convert to 1.0 addresses (#2127)cadmic
* Reorganize n64dd declarations * Fix bss * Really fix bss
2024-09-04[ntsc-1.2] Match game.c, z_play.c, z_room.c (#2117)cadmic
* Match z_room.c * Match game.c and z_play.c * Add undefined syms * Rewrite condition based on other file matches
2024-08-28[ntsc-1.2] Decompile fault.c (#2046)Dragorn421
* wip decomp ntsc-1.2 fault.c * more ntsc-1.2 fault.c * decompiled fault_v1.c * name fault_v1 functions, wip * try to clean up build system (two versions of the fault system coexisting) * cleanup * cleanup2 * fix build gc-eu-mq-dbg * match 2 more, ty anon * matched * review * more review * fixup spec * `(uintptr_t)ptr op int` instead of `ptr op (type*)int` * move fault.h out of global headers, properly include fault.h and versions.h * compile all fault_*.c files regardless of version by overriding FAULT_VERSION * n64 FaultMgr.framebuffer s32 -> u16* * FaultMgr.framebuffer -> FaultMgr.fb * make gc FaultMgr.fb u16* (yes, thats everything) * bss * fix Fault_Printf return type * noop FaultDrawer_SetFontColor, FaultDrawer_SetCharPad in fault_n64 * fault_color_ stuff is only for fault_gc * rm empty line in makefile * I guess `D_80105A90_unknown` is `[sg]TotalAllocFailures` * bss * `Fault_WaitInput` -> `Fault_WaitForInput` * use named fault funcs in pointers array * FAULT_OOT{N64,GC} -> FAULT_{N64,GC} * Apply suggestions from code review Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> * review, sync fault_{gc,n64} * Apply `FPCSR_CE` suggestions from code review Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> --------- Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
2024-08-27[Audio 6/?] Build Soundfonts and the Soundfont Table (#2056)Tharo
* [Audio 6/?] Build Soundfonts and the Soundfont Table * Improve lots of error messages * First suggested changes * Make audio build debugging more friendly Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> * Some fixes from MM review * Make soundfont_table.h generation depend on the samplebank xmls since they are read, report from which soundfont the invalid pointer indirect warning originates from --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-27T() macro 6 (#2090)Dragorn421
* T() in z_skelanime.c * T() in z_eff_blure.c * T() in z_play.c * T() in z_jpeg.c * T() in z_horse.c * T() in z_eff_spark.c * T() in z_malloc.c * T() in z_effect_soft_sprite.c * add todo on translating "確保" (litterally ~"secure", but may be better as "allocate"-ish) * review * format
2024-08-26Add all N64 version defines (#2095)cadmic
* Add all N64 ROMs to versions.h * Remove OOT_ prefix from version defines * Make it pretty
2024-08-20Add versions.h (#2060)Dragorn421
2024-08-19Allow building the Debug ROM without debug features (#2052)cadmic
* Allow building the Debug ROM without debug features * Fix bss * Add comment * Reword again * Fix bss
2024-08-19Match ntsc-1.2 z_scene_table.c (#2050)cadmic
* Match z_scene_table.c * Attempt to fix bss ordering * Forward declare PlayState instead * Untangle circular includes in z64scene.h
2024-08-17[Audio 5/?] Build the Samplebank Table (#2044)Tharo
2024-08-14Generic actor params getters (#1359)Tharo
* Initial PARAMS_GET macros * NOSHIFT macro * Use number of bits rather than raw mask values * Add descriptions for each generic macro * Reformat * Adjust comment * format * edit en_door macro names * edit redead macro name * edit bdan switch macro name, and remove unneeded comments in go2 * mizushutter macro names * remove PARAMS_GET_S, rework ishi switch flag handling * actually remove PARAMS_GET_S * remove PARAMS_GET2_S * PARAMS_GET_U and PARAMS_GET_S * format * fix merge * format --------- Co-authored-by: fig02 <fig02srl@gmail.com> Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-09Match remaining GC retail versions (#2019)cadmic
* Match the remaining GC retail versions * Fix BSS ordering for existing versions * Disable clang-format for #pragma increment_block_number * sramResetCode -> sSramResetCode * Replace 0xFF3F with or-ing all buttons together * Revert "Disable clang-format for #pragma increment_block_number" This reverts commit 406b6d26c92911c676a7ea9f07a1612211760e11. --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-07-28Match NTSC loose ends (#2004)cadmic
* Match NTSC loose ends * Add comment about giObjectSegment size