* Generic Camera Flags
* New flag names
* Add flags to functions
* Finish flag docs
* More docs
* More cleanup
* More clarity
* Better shrinkwindow flag docs
* Improve name
* CAM_INTERFACE_FLAGS
* Better approach to edge cases
* Change ordering for consistency
* Oops
* Add masks to macro
* PR/Discord discussions
* cleanup comment
* Oops
* PR Suggestions
* More PR Feedback
* More PR Suggestions
* More Camera Flags
* PR Suggestions
* More flag style change
* Small cleanup
* More flag docs
* Another flag
* Fix flags
* sync names with other PRs
* more fixes
* fix comments
* update with hud visibility mode docs
* missed one
* fix comments
* Roman PR Suggestions
* interfaceField
* small fix
* letterbox cleanup
* cleanup
* fix macro arg
* fix func declaration
* many more docs
* better docs?
* missed some
* oops, revert
* add flags to name
* cleanup
* flag
* double signal
* simplify cam func name
* more suggestions
* PR Suggestion
* Remove `(ActorFunc)` casts in initvars, use `/**/` trick for format
Achieved by using the following regex:
(ActorInit.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*\n\};)
replaced with
$1$2/**/ $3$4/**/ $5$6/**/ $7$8/**/ $9$10/**/ $11$12/**/ $13$14/**/ $15$16/**/ $17$18/**/ $19
plus a change from /**/ to #if 0 #endif in docs/
* Manual fixes
* rename functions
* dragorns name suggestions
* Revert "dragorns name suggestions"
This reverts commit dd4626ce5e.
* lets try that again
* reword comment
* comments
* projectile speed
* arg name
* more comments
* minVelY comment
* merge master and format
* Clean up player tracking related things in NPCs
* Cleanup Npc_UpdateTalking usages and related things
* Reformat
* Minor fixes based on review comments
* Remove unneeded declarations
* More consistent function names
* Comment names on titled scenes
* Comment some more scene names
* Comment some map assets symbol prefixes
* Name collapse sequence scenes (from the non-collapse equivalent scene's name + `_COLLAPSE`)
* Name ganon/ganondorf boss scenes (symbol prefix suffixed with `Scene` to prevent confusion with boss actors)
* Fix symbol prefix for back alley night scene
* Name the two grave scenes (normal and fairy's fountain variant)
* Name most houses, name/update misc scenes
Co-authored-by: fig02 <fig02srl@gmail.com>
* (hakaana) `GRAVE` -> `REDEAD_GRAVE` to be more specific
Co-authored-by: fig02 <fig02srl@gmail.com>
* `miharigoya_scene`: `market_guard_house`
* `kakariko_scene` -> `kakariko_center_house`
* `richards_house` -> `dog_lady_house` (for localization differences)
* Revert "Comment some map assets symbol prefixes"
This reverts commit 210a38a628.
* remove other xml prefixes
* ganon_boss, ganondorf_boss
* comments to namefixer
* `KAKARIKO_CENTER_HOUSE` -> `KAKARIKO_CENTER_GUEST_HOUSE`
* two collapse sequence scenes -> `GANONS_TOWER_COLLAPSE_`interior/exterior
* Run namefixer
`find src include -type f -exec ./tools/namefixer.py {} \;`
* run formatter
Co-authored-by: fig02 <fig02srl@gmail.com>
* Rename npc dialog state variable
* Rename and doc NPC actor talking funtion
* Introduce NpcTalkState enum
* Rename NPC_TALK_STATE enum values
* Document NpcPlayerInteractionState and related functions
* Rename player tracking opt enum variants
* Rename npc functions, interact info
* Minor npc actor function tweaks
* Minor comment fixes for npc
* Generalize NPC player tracking to point tracking
* Change unused NpcInteractInfo field type and name
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
* Rename headRot and torsoRot
* Rename GetTalkState to UpdateTalkState
* Minor comment fixes
* Rename rotateActorShape and clarify related comments
* Remove unneeded parentheses in z_en_heishi4.c
* Reformat
* Remove unclear comment
* Rename yPosOffset to yOffset
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
* Document Timers, First Draft
* some progress
* more timer docs
* cleanup
* small cleanup
* more cleanup
* comments
* more cleanup
* extra comment
* more docs
* brackets
* PR Suggestions
* cleanup, missed some
* more suggestions
* more PR Suggestions
* small change
* environmental
* Copying SubCam Changes from PR 908, made it to the end of bosses
* Finish copying over PR
* format
* More cleanup
* clean-up
* PR Suggestions, Clean-Up, Improvement in CS
* Remove substructs from fd/fd2
* format
* Improve fishing
* minor fix
* Make CutsceneCameraDir more general
* `sActiveCamMove` -> `sCamMove`
* Fix conflict with object kankyo
* Add CAM_ID_MAIN to object_kankyo
* Improve cam cutscenes further
* Revert cutscene cmd names (better for a separate PR)
* At -> LookAt in the context of Cutscenes
* Missed naming in diving game
* Format
* Fill in Ganon2 Names (now that it's matching)
* format
* `sActiveCamId` -> `sReturnToCamId`
* activeCamId -> returnToCamId
* Discord Discussions
* FIRST
* Move macro to bottom, comments
* More suggestions
* PR suggestion, cleanup comment
* Oops
* add comments
* Adjust comment
* Change edge-case
* whoops
Co-authored-by: fig02 <fig02srl@gmail.com>
* Doc equips usage (inventory, current and player-specific constants)
* Improve some comments
* `currentSword`(`Item`) -> `currentSwordItemId`
* Comments on the right in `D_801261F8`
* Improve `sDebugSaveInventory.equipment` formatting with extra parentheses
* Use constants for `sNewSaveInventory.equipment`
* Run formatter
* Make comments in z64save.h header a single line even if very long
* `CHECK_OWNED_EQUIP_ALT`
* One more use of `CHECK_OWNED_EQUIP`
* `OWNED_EQUIP_FLAG`
* `OWNED_EQUIP_FLAG_ALT`
* Improve (?) giving sword by item id
* "half-byte" -> "nibble"
* Improve equips for setting kokiri sword
* Improve (?) checking boots by item id
* Improve (?) checking equips by item id
* Fixup one spot assuming `EQUIP_TYPE_SWORD == 0`
* Comments on the right in `sBootDListGroups`
* script-assisted `itemGetInf` flags
* comment near non-trivial `itemGetInf` usage
* Run formatter
* Try something with the itemgetinf flags that can't use the packed value
* Add defines for `eventChkInf` (direct access)
* Add defines for `eventChkInf` (access through `Flags_GetEventChkInf`)
* Add defines for `eventChkInf` (access through `Flags_SetEventChkInf`)
* Add defines for `infTable` (direct access)
* Add defines for `infTable` (used by `Flags_GetInfTable`)
* Add defines for `infTable` (used by `Flags_SetInfTable`)
* Add defines for `eventInf`
* parenthesis cleanup near `GET_EVENTCHKINF` usage
* parenthesis cleanup near `GET_ITEMGETINF` usage
* parenthesis cleanup near `GET_INFTABLE` usage
* fixup one `eventInf` usage
* parenthesis cleanup near `GET_EVENTINF` usage
* parenthesis cleanup near `Flags_GetEventChkInf` usage
* slight `z64save.h` formatting improvement
* Improve itemGetInf flags in z_bg_dy_yoseizo
* Questionable improvement in z_en_ge2
* Questionable improvement in z_en_daiku
* Questionable improvement in z_en_mu
* Run formatter
* Parentheses around `gSaveContext` macros arguments
* Move individual flags define to the end of z64save.h, and improve comments separating the groups
* Move binang utility macros out of angle conversion macros block
* `BINANG_TO_DEGF` -> `BINANG_TO_DEG_ALT` (it may even be warranted to name it _approx instead of _alt, unsure)
* Add `BINANG_TO_DEG` (unused by oot) (for completeness)
* `DEGF_TO_BINANG` -> `DEG_TO_BINANG_ALT` (again may even be _approx, or maybe _cam)
* Add `DEG_TO_BINANG` (unused by oot) (for completeness)
* `RADF_TO_BINANG` -> `RAD_TO_BINANG`
* `RADF_TO_DEGF` -> `RAD_TO_DEG`
* Cleanup argument names in angle conversion macros
* Format for angle macros changes
* Run formatter
* Move `DEG_TO_BINANG_ALT`, `BINANG_TO_DEG_ALT` to z64camera.h
* Remove `DEG_TO_BINANG`, `BINANG_TO_DEG`
* Remove `_ALT` from `DEG_TO_BINANG`, `BINANG_TO_DEG`
* Add comment about inaccuracy near `DEG_TO_BINANG`, `BINANG_TO_DEG`
* run formatter
* `CAM_` prefix on `DEG_TO_BINANG`, `BINANG_TO_DEG` macros
* Revert "Remove `DEG_TO_BINANG`, `BINANG_TO_DEG`"
This reverts commit 5321647e5b.
* Rename variables and function
* Improve comment
* PR Suggestion
* PR Suggestions
* Revert back to `Audio_PlaySoundGeneral`, make a separate PR `Sound` -> `Sfx`
* Oops, fixed that
* Name in-actor effect functions / improve naming consistency
"particle" -> "effect"
Fixup: consistent effect functions names, missed a bunch
* Use `materialFlag` as int for the "is material already set" "boolean"
Fixup `materialFlag` (actually a boolean one), and `objectFlag`
More actually boolean `materialFlag`s
* Consistently use `_EFFECTS_COUNT` defines (except partial buffer usage, for now)
`BOSSFD_EFFECT_COUNT` -> `BOSSFD_EFFECTS_COUNT`
`EFFECT_COUNT` -> `FISHING_EFFECTS_COUNT`
Place `_EFFECTS_COUNT` defines before effect struct definition
* Name `countLimit` the "max new effect index" argument
* Rename all effect buffers to `effects`/`sEffects`
* Fixup some array/pointer usage
* `EnNiw` also has this pseudo-effects system
* `EnSyatekiNiw` also has this pseudo-effects system
* `EnFz` also has this pseudo-effects system
* `_EFFECTS_COUNT` -> `_EFFECT_COUNT`
* `effects` -> `effect` where used as iterator (hopefully covers everything)
* Run formatter
* Tool-assisted flags for `Actor_UpdateBgCheckInfo`
* Manual flags separation
* Run formatter
* Light doc on the flags
* `UPDBGCHECKINFOFLAG_` -> `UPDBGCHECKINFO_FLAG_` (what an improvement!)
* Run formatter
* Run formatter
* Fixup `Math3D_LineClosestToPoint`
* `gDodongosCavernBossLavaFloorTex` is 32x64
* Name empty-dlist-making functions `_EmptyDList`
* Fix typos
* transitionRate -> morphFrames
* Compare `xyzDistToPlayerSq` to squared values
* Fix hookshot target/post collision header names being swapped
* Fix description of `z_bg_mizu_movebg.c`
* Add scene command comment to `func_80098508` to match other scene command handlers
* Some fixup in `Camera_Demo5`
* `1` -> `ALLOCTYPE_ABSOLUTE` in comment on `ActorContext.absoluteSpace`
* First pass, tool assisted bgCheckFlags
* Few manual bgCheckFlags
* Run formatter
* Remove fake bgCheckFlags 10-15
* Move existing documentation to the defines
* Comment on `bgCheckFlags` and rephrase some doc
* Name obvious flags, and some cleanup
* Comment on flag 9 being wall-interaction-related (thanks engineer and fig)
* Run formatter
* `BGCHECKFLAG_7` -> `BGCHECKFLAG_GROUND_STRICT`
* Touch up water-related bgcheckflags doc
* `BGCHECKFLAG_9` -> `BGCHECKFLAG_PLAYER_WALL_INTERACT`
* Name generic anim info structs and cleanup usage
* Make `EnDaiku` use generic struct
* Add `/* decimalid */` comments to all added enums
* small fixes
* Two more generic animinfo structs
* Cleanup usage of newly generic structs
* Cleanup x2 usage of newly generic structs
* `transitionRate` -> `morphFrames`
* Properly name generic anim structs (attempt to at least)
* `anim` -> `animation`
* fixes
* run formatter
* Use consistent prototypes for each actor's ChangeAnim helper
* run formatter
* minor cleanup
* Run formatter
* `Animation_ChangeInfo` -> `Animation_ChangeByInfo`
* Document `func_800D1694` as `Matrix_TranslateRotateYXZ`
* Document `func_800D1FD4` as `Matrix_ReplaceRotation`
* Cleanup `Matrix_RotateAxis`
* Document `func_800A7EC0` as `SkinMatrix_SetRotateAxis`
* Document `func_800D2A34` and `func_800D2A98` as `Matrix_SetTranslateScaleMtx`(`F`)
* Document mostly unused functions at the end of `sys_matrix.c`
* Add in-use renamed functions to `namefixer.py`
* Add `Matrix_SetTranslateScaleMtx2` to `namefixer.py`
* Run formatter
* Fix namefixer.py mistake from #952
* Format clang-11.1
* Fix `Matrix_TranslateRotateYXZ` wrongly documented, it actually is `Matrix_SetTranslateRotateYXZ`
* VS Code is stellar at refactoring (no)
* Run formatter
* Come on VS Code
* Improve `Matrix_ReplaceRotation` docs
* Fix typo
* Fix namefixer.py
* Add ACTOR_FLAG_ defines
* Add ACTOR_FLAGS_ALL macro and use ACTOR_FLAG_* constants everywhere
* Remove unused ACTOR_FLAG_* constants
* actor flags in bigokuta & ko
* actor flags in obj_mure
* actor flags in stalfos, twinrova & ganon2
* actor flags in morpha & barinade
* name some previously missed actor flags
* found some comments using hex for actor flags
* Actor flags in ovl_En_Ganon_Mant
* Actor flags in EnWf
* Flags in en_zf
* Actor flags in BossGanon (FeelsOKMan)
* Remove `ACTOR_FLAG_NONE`
* Wrap expansion of `FLAGS` in parentheses
* `ACTOR_FLAGS_ALL` -> `CHECK_FLAG_ALL`
* Move `CHECK_FLAG_ALL` to `macros.h`
* Run formatter
* Initial progress on z_message_PAL, very messy
* Fix merge
* Some more progress
* Fix merge
* More z_message_PAL
* Small progress
* More small progress
* message_data_static files OK
* Prepare z_message_tables
* Matched another function, small updates
* Attempt to use asm-processor static-symbols branch
* Refactor text id declarations
* Begin large text codes parser function
* Fix merge
* Refactor done
* Build OK, add color and highscore names
* Remove encoded text headers and automatically encode during build
* Fix kanfont
* Various cleanups
* DISP macros
* Another match aside data
* Further progress
* Small improvements
* Deduplicate magic values for text control codes, small improvements
* Tiny progress
* Minor cleanups
* Clean up z_message_PAL comment
* Progress on large functions
* Further progress on large functions
* Changes to mkldscript to link .data in the .rodata section
* data OK
* Few improvements
* Use gDPLoadTextureBlock macros where appropriate
* rm z_message_tables, progress on large functions
* 2 more matches
* Improvements
* Small progress
* More progress on big function
* progress
* match func_80107980
* match Message_Update
* match func_8010BED8
* done
* Progress on remaining large functions
* Small progress on largest function
* Another match, extract text and move to assets, improve text build system
* Small nonmatchings improvements
* docs wip
* Largest function maybe equivalent
* Fix merge
* Document do_action values, largest function is almost instruction-matching
* Rename NAVI do_action to NONE, as that appears to be how that value is used in practice
* Fix merge
* one match
* Last function is instruction-matching
* Fix
* Improvements thanks to engineer124
* Stack matched thanks to petrie911, now just a/v/low t regalloc issues, some cleanup
* More variables labeled, use text state enum everywhere
* More labels and names
* Fix
* Actor_IsTalking -> Actor_TalkRequested
* Match func_8010C39C and remove unused asm
* More docs
* Mostly ocarina related docs
* All msgModes named
* Fix assetclean
* Cleanup
* Extraction fixes and headers
* Suggestions
* Review suggestions
* Change text extraction again, only extract if the headers do not already exist
* Fix
* Use ast for charmap, fix assetclean for real this time
* Review suggestions
* BGM ids and ran formatter
* Review comments
* rename include_readonly to include_data_with_rodata
* Remove leading 0s in number directives
* Review suggestions for message_data_static
* textbox pos enum comments, rename several enum names from Message to TextBox
Co-authored-by: Thar0 <maximilianc64@gmail.com>
Co-authored-by: Zelllll <56516451+Zelllll@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Roman971 <romanlasnier@hotmail.com>
* Update names and doc of `Matrix_RotateRPY` and `SkinMatrix_SetRotateRPY` to ZYX Tait-Bryan angles
* Update name and doc of `Matrix_JointPosition` to `Matrix_TranslateRotateZYX`
* `Euler ***` -> `Tait-Bryan *** angles`
* Update docs of `SkinMatrix_Vec3fMtxFMultXYZW` and `SkinMatrix_Vec3fMtxFMultXYZ`
* Fix doc of `SkinMatrix_MtxFMtxFMult`
* Update docs of `SkinMatrix_Invert`
* Change name and docs of `SkinMatrix_SetRotateYRP` to `SkinMatrix_SetRotateYXZ`
* Change name and docs of `SkinMatrix_SetScaleRotateRPYTranslate` to `SkinMatrix_SetScaleRotateZYXTranslate`
* Change name and docs of `SkinMatrix_SetScaleRotateYRPTranslate` to `SkinMatrix_SetScaleRotateYXZTranslate`
* Change name and docs of `SkinMatrix_SetRotateRPYTranslate` to `SkinMatrix_SetRotateZYXTranslate`
* Add renamed functions to `namefixer.py`
* Run formatter
* Consistent function names (`ABC()` if equivalent to `A() B() C()`)
* Add parens around params usage in VEC_SET macro
* Remove unnecessary space character in a xml
* Use defines instead of magic values in head/tail magic comments
* Use `OS_USEC_TO_CYCLES` to make a time look better in `Graph_TaskSet00`
* `0x25800` -> `sizeof(u16[SCREEN_HEIGHT][SCREEN_WIDTH])`
* `0x803DA800` -> `0x80400000 - frame buffer size`
* Use `OS_VI_` defines instead of hex
* Add empty line after some variable declarations
* Remove unused `extern CutsceneData` in `z_bg_dy_yoseizo.c`
* `Matrix_MtxFToYXZRotS` does not use `MTXMODE_`
* Use `MTXMODE_` more
* Remove `ASCII_TO_U32`, use `'IS64'`
* Add explicit `!= NULL` in some ternaries
* Use `INV_CONTENT`, `AMMO` macros more
* Use `PLAYER_AP_` enum more to compare to `Player#heldItemActionParam`
* Get rid of lowercase hex (outside libultra)
* `gWindMill*` -> `gWindmill*`
* Format and small fix enums in `z_boss_mo.h`
* Use `CHECK_BTN_ANY` more
* Fix xz/xy mistake in comment in tektite
* Rephrase comments mentioning "the devs" in a more neutral way
* Clean-up some objectively useless parens
* Fix some negative values written as u16 instead of s16 in ichains
* `SKJ_ACTON_` -> `SKJ_ACTION_`
* Run formatter
* Fix unk_ offset of `TransformUpdateIndex#unk_10` -> `unk_0E`
* Remove comments using in-game text
* Remove `U` suffix from integer literals
* Revert "Remove `ASCII_TO_U32`, use `'IS64'`"
This reverts commit c801337dde.
* Use `PLAYER_STR_*` to compare to `CUR_UPG_VALUE(UPG_STRENGTH)`
* Add empty line after decl x2
* Revert "Use `PLAYER_STR_*` to compare to `CUR_UPG_VALUE(UPG_STRENGTH)`"
This reverts commit d80bdb32da.
* Make `CUR_UPG_VALUE(UPG_STRENGTH)` compare to integers (eventually needs its own enum)
* Only use `PLAYER_SHIELD_` enum with `Player#currentShield`
* Only use `PLAYER_TUNIC_` enum with `Player#currentTunic`
* Fix all headers to comply with C standard
* fix a file in libultra
* Update include/stdbool.h
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Update stdbool.h
* Update z64animation.h
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>