* entrance table OK
* entrance enum fixed
* most entrances using enum, still need to do conditionals
* more entrances
* entrance_table.h cleanups
* some review
* remove _0 from first entrance in a group of setups
* change table description
* typo
* wens spellcheck in vscode
* remove extra line
* wip: refactor flag defines for `eventInf[0]`
* Cleanup attempt
* run formatter
* remove spacing in enum indices comments
* Add line breaks
* Macros +`()` -`;`
* Initial commit
* Go through the rest of the code
* Fix length of EnAnubice.flameCircles
The length used to be 4, but in a for loop 5 elements were used. There
was unused unknown space right after the array and that is now part of
flameCircles.
* Fix offset comment in EnAnubice header
* Fix length of BossGanon2.unk_234
The length used to be 16, but only 15 elements seem to be used. The for
loops only went to 14, and the indicse gotten from a lookup table are
also never higher than 14.
* Revert some ARRAY_COUNTs back to literals
In these cases, using ARRAY_COUNT can make the code more confusing to
read, since the lengths of these arrays are already assumed in other
places in the code or the index is used in multiple arrays.
* Initial commit
* Rename stateTimer to actionTimer
This name is more consistent with actionFunc.
* Name (Setup)Crawl and (Setup)CrawlToSpawn functions
* Rename (Setup)Sink to (Setup)Dig and add (Setup)Sink and (Setup)Drown
* Add IS_DROPPED macro
This is way shorter than checking type == ... || type = ... every time.
* Rename INSECT_FLAG_6 to INSECT_FLAG_LANDED
* Name INSECT_FLAG_0 and the two remaining functions
* Rename INSECT_FLAG_1 to INSECT_FLAG_ON_GROUND
* Replace 'bug' with 'insect' in comment
* Revert changes made in array-count branch
* Update INSECT_DROPPED name in z_player.c
Seems I forgot to rebuild before committing.
* Use bug instead of insect in comments
* Apply suggested changes
* Fix faulty merge
* Run formatter
* Improve `sInitInsectFlags` formatting
* Revert `INSECT_FLAG_ON_GROUND` to `INSECT_FLAG_1`, purpose unclear (to me at least)
* Revert `INSECT_FLAG_TEMP_AND_ALIVE` to `INSECT_FLAG_0`, purpose unclear (to me at least)
* `INSECT_FLAG_TEMP` -> `INSECT_FLAG_IS_SHORT_LIVED`
* `Sink` -> `WalkOnWater`
* `INSECT_FLAG_LANDED` -> `INSECT_FLAG_DROPPED_HAS_LANDED`
* `EnInsect_FoundNearbySoil` -> `EnInsect_TryFindNearbySoil` and cleanup the function
* Run formatter
* Cleanup `actionTimer`
* Some cleanup
* Add `_TYPE_` in `EnInsectType` enum names
* `crawlSoundTimer` -> `crawlSoundDelay`
* Remove `IS_DROPPED` macro
Co-authored-by: Milo van der Tier <milo@vdtier.nl>
* Port a ton of stuff from MM
* Damage effect enum
* Enum for type
* Enum for action
* Limb enum
* Match MM styling as much as possible
* Divide object into sections
* Document values in EnRdDamageEffect
* Respond to Dragorn's review
* Apply Dragorn's suggestion for the union
* Respond to Dragorn's second review
* Move all actions away from -ing
* Fix typos
* Respond to Fig and Roman's reviews
* Fix build error, whoops
* Bring back // fallthrough
* Pass boolean for `freezeFlag` to `Actor_SetDropFlag`
* Use `else if`s in `func_80835F44`
* Cleanup `transitionCtx` usage of instance data
* `TransitionContext.setEnvColor` -> `TransitionContext.setUnkColor`
* Fixup one comment
* linebreaks (#1)
* Run formatter
Co-authored-by: fig02 <fig02srl@gmail.com>
* Un-fake a couple of matches in memory manip functions
* Document fmodf
* Un-fake a couple of matches in memory manip functions
* Document fmodf
* Rename functions and files
* Document memmove, memsets, memcpys
* Format
* Sort out some missing sizeofs
* Name fmodf
* Rename local variables
* size_t
* Use COBRA_SHADOW_TEX_SIZE
* Review
* Tweak the Doxyfile to remove @brief requirement
* Roman's review
* Fix a bug comment
* Change fmodf
* 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`
* Cleanup around `Item_DropCollectible`
* Cleanup around `Math3D_Vec3fDistSq`, `Math3D_Dist2DSq`
* Material/Model naming for one dlist pair
* Minor comments fixup
* Explicit `!= NULL` check
* Signed decimal for an array of coordinates
* Fixup comments some more
* Run formatter
* Remove useless `// clang-format off`
* Improve manual formatting inside `clang-format off` blocks
* Remove `// clang-format off` where used only for code style formatting
* Remove some `// clang-format off` with a for loop "trick"
* Reduce the size of `clang-format off` blocks
* Remove one `clang-format off` by moving assignment to inside line
* Revert "Remove some `// clang-format off` with a for loop "trick""
This reverts commit 30c344b800.
* Put some `// clang-format on` back on the same level as `off`
* 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
* transition type enum
* mode enum, start documenting some types
* some more
* use enums for entrance table
* entrance table filled out
* sceneLoadFlag -> transitionTrigger
* sandstorm state/mode/type
* done i think
* fixes
* clean up circle weirdness
* circle use enum + fix texture names
* fix
* how did that even happen lol
* jesus
* review2
* some more review
* most review, still some more to do
* new transition trigger names
* some of review
* next type default
* 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
* Fix typo `tranform` -> `transform`
* (may be controversial) `indexes` (noun) -> `indices`, both are correct but `indices` prevails in the repo currently, and seems prefered in technical contexts
* Fixup one `@bug`
* Fix typo `relfect` -> `reflect`
* Rename and `@bug` `DemoTreLgt_OverrideLimbDraw`
* Fixup `PLAYER_AP_` to `ARROW_` type conversion
* `posModel` -> `modelPos`
* `effSpawnPosModel` -> `effSpawnModelPos`
* Gohma decay bug: Verified that timers do not prevent UB access
* Reorder summation in a more meaningful way
Co-authored-by: JoshDuMan <40190173+JoshDuMan@users.noreply.github.com>
* Add `BINANG_TO_RAD_ALT2`
* Few hex constants in place of decimal cardinal angles
* Use `BINANG_TO_DEGF` more
* Use `DEG_TO_RAD(int)` for angle literals
* `BINANG_TO_RAD_ALT(literal)` -> use `BINANG_TO_RAD`
* Somewhat arbitrary literal angles cleanup
* Run formatter
* Touch up angle macros (parentheses and hex constants)
* Remove `DEGF_TO_RADF`, use `DEG_TO_RAD` instead
* Remove `DEGTORAD`, use `DEG_TO_RAD` instead
* Use `DEG_TO_RAD` more
* Doc (partially) player model and anim data
* `Player_OverrideLimbDrawPause` -> `func_80091880`
* Enum comments: use hex
* Change `D_80853914` to 1D array, change accesses to use new macro `PLAYER_ANIM_BY_GROUP_AND_TYPE`
* `PLAYER_ANIM_BY_GROUP_AND_TYPE` -> `GET_PLAYER_ANIM`
* Run formatter
* Touch up angle macros (parentheses and hex constants)
* Add `BINANG_TO_RAD_ALT`
* Swap `BINANG_TO_RAD` and `BINANG_TO_RAD_ALT`
* Run formatter
* Use `s32` as type instead of `StackStatus` enum type
* `bossLimbDl` -> `bossLimbDL`
* Fixup comment refering to `Actor.velocity` by struct offset
* Fixup `feetFloorFlags` doc and -> `feetFloorFlag`
* Fixup `xyzDistToPlayerSq` comment
* Make `SkelAnime.mode` comment refer to `AnimationMode` (<- `AnimationModes`)
* Use enum names to refer to anim modes and break long lines in z64animation.h
* `EnDha_OverridePostDraw` -> `EnDha_PostLimbDraw`
* ichains cleanup
* Scene command ids usage cleanup
* Properly name unkXXX members as unk_XXX
* change `gSceneCmdHandlers` length in variables.h too
* Revert Unknown flags to unk0 & unk1
* Remove "current scene" mention from `Flags_*Unknown` as they aren't saved or loaded so not scene-specific
* `Struct_8011FAF0`: unk_00, unk_04
* Run formatter
* Do not break long lines in headers
* Revert "Fixup `feetFloorFlags` doc and -> `feetFloorFlag`"
This reverts commit c45b3611e7.
* Introduce and use more enums and defines for equips and data involved in player drawing
* `EQUIP_TYPE_`, `EQUIP_INV_`, `EQUIP_VALUE_`
* Improve doc on ItemEquips/Inventory's `equipment` field
* Run formatter
* Add `PLAYER_MODELGROUPENTRY_*` for second index of `gPlayerModelTypes`
* Name `PLAYER_MODELGROUPENTRY_*` from existing documentation
* Partial doc on `PLAYER_MODELTYPE_*`
* Some doc on `PLAYER_MODELGROUP_*`
* Run formatter
* Name and some doc/cleanup on the various player draw functions
* Name symbols used for player position in pause menu
* Name player override/post limb draw callbacks
* `BOOTS_NORMAL` -> `BOOTS_KOKIRI`
* `EQUIP_INV_SWORD_GIANTKNIFE` -> `EQUIP_INV_SWORD_BROKENGIANTKNIFE`
* `currentSword` -> `currentSwordItem` to avoid confusion with `PlayerSword` enum
* Make one constant more explicit
* Document severe bug (not an issue by luck)
* Some doc on `PLAYER_MODELTYPE_RH_FF`
* Actually name most of `PlayerModelType`
* Actually name most of `PlayerModelGroup` and improve comments
* Make equipment in debug save data use equip enums
* Name symbol for computing player's `bodyPartsPos` and fix struct access
* Name right/left `HandType` symbols
* Add `PlayerBodyPart` enum
* Run formatter
* Introduce defines for pause player render dimensions and cleanup viewport usage in pause drawing
* Document `playerSegment` related usage
* Run formatter
* Revert player bodypart changes
* Revert equips doc changes
* Revert player model and anim data changes
* Revert drawing-unrelated changes
* Move `sTunicColors` tunic comments to after data
* typo
* rename 800636C0 to gameinfo_init
* fix incorrect casing in cup button
* some constants
* add item00_none enum value
* rename 80009460 to gdmaverbose
* fix typos
* Revert "some constants"
This reverts commit 27a07204d7.
* rename gdmaverbose to gdmamgrverbose
* Revert "rename 800636C0 to gameinfo_init"
This reverts commit c74e255929.
* Revert "fix incorrect casing in cup button"
This reverts commit ac313b3965.
* a couple of typos
* minor changes based on clang-format
* Move `PlayerSwordAnimation` from `z_en_torch2.c` to `z64player.h`
* `PlayerSwordAnimation` -> `PlayerMeleeWeaponAnimation`
* Add `PWMA_` prefix to `PlayerMeleeWeaponAnimation` values
* Use `PlayerMeleeWeaponAnimation` enum more
* Add `PWMA_MAX`
* Update comments in z_en_kanban.c
* Some cleanup around conditionals with `meleeWeaponAnimation`
* Comment `PWMA_` index value in `D_80854190`
* `PMWA_` -> `PLAYER_MWA_`
* Minor fixup
* Missed one spot
* Run formatter
* Document/fix `Player#bodyPartsPos` usage
* `distFromLinksHead` -> `distFromPlayerHat`
* Comment on `bodyPartsPos[-1]`
* Run formatter
* Use `PLAYER_BODYPART_MAX` more
* Use hex for `PlayerBodyPart` enum comments
* 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`
* Add file comment to BgJyaMegami
* Fix and clean Anubice up a bit
* Review
* Improve names, add some usage comments
* Revert to fireballPos
* headPitch
* Rename to AimFireball
* Review
* Put abdomen the right way up