summaryrefslogtreecommitdiff
path: root/mm/src/code/z_actor.c
AgeCommit message (Collapse)Author
2026-01-20Texture scrolling interpolation, Take 2 (#1332)Eblo
* Scrolling texture interpolation Co-authored-by: Nicholas Estelami <NEstelami@users.noreply.github.com> * Interpolate remaining GIs * Clean up gDPSetTileSizeInterp --------- Co-authored-by: Nicholas Estelami <NEstelami@users.noreply.github.com>
2026-01-06[Rando] Enemy Soul Shuffle (#1284)Caladius
* Add Aliens and initial code moved from old build. * Update Enemy Souls to latest Develop and fix issues. * Change Stalchild Animation to Idle * Fix Stalchild Eyes * Adds Hiploop to keep in line with Enemy Drops * correction * Update Matrix Calls * Remove comment * Remove Garo for now * Add Octorok Soul req for Upper Canyon Access * Add soul requirement for Red Switch * Grant Soul INF when the option is off * Adds Nejiron Soul * Add Flying Pot Soul * ew (#14) * cleanup * Add Bubble Soul * Adds Freezard * Change Soul behaivor to Invincible * header cleanup and arg consolidation * Fixes OnFileCreate to actually shuffle Enemy Souls. took this op. to fix up Boss Souls shuffling as it was needed to cleanly shuffle Enemy Souls. * Naming Updates * Name Updates pt2 * Add Tracker Icons and adds a Default to avoid erroring * Fix Iron Knuckle Helmet * revert item icon default and add soul flame to tatl target for enemies that are invincible. * Move VBs to GameInteractor_VanillaBehavior.h * Use VB_PERFORM_AC_COLLISION for enemy souls * Add enemy souls for closer parity with drops Stub out enemy draw funcs Use macros to streamline existing skeleton inits Logically account for enemy souls in CanKillEnemy Fix logical quirk with Ikana ice arrows * Draw everything * Remove unused INIT arg from SETUP_FLEX_SKEL * Add Igos, Keeta, Gomess Make soul RIs contiguous, separate boss and enemy Ignore target color for EnInvadepoh Remove Real Bombchus and Flying Pots for now Require Gekko and Snapper souls for beating both * Add Enemy Souls to item tracker * clang format --------- Co-authored-by: mckinlee <mckinlee@ymail.com> Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>
2025-11-20[Audio Editor] Port Audio Options from SoH Audio Editor (#1325)Glought
* Ported Audio Options from SoH Audio Editor *Moved "Mute Low HP Alarm" to Audio Editor -> Audio Options Changed Cvar From: "gEnhancements.Sfx.LowHpAlarm" To: "gAudioEditor.LowHpAlarm" *Moved "Mute Carpenter Sounds" to Audio Editor -> Audio Options Changed Cvar From: "gEnhancements.Sfx.MuteCarpenterSfx" To: "gAudioEditor.MuteCarpenterSfx" *Moved "Mute Crying Goron Child" to Audio Editor -> Audio Options Changed Cvar From: "gEnhancements.Sfx.ChildGoronCry" To: "gAudioEditor.ChildGoronCry" *Added "Disable Tatle Call Audio" *Added "Disable Enemy Proximity Music" *Added "Randomize All Music and Sound Effects on New Scene" *Added "Randomize All Music and Sound Effects on Randomizer Generation" *Added "Display Sequence Name on Overlay" and "Overlay Duration" Slider *Added "Link's Voice Pitch Multiplier" Slider * *Ported "AddSearchWidget" Functionally Enabled for Audio Editor -> Audio Options * Cleaned up some code I missed and ran clang format. * Renamed "OnScene" Hook to "OnSceneChange" * Made it so "Link's Voice Pitch Multiplier" slider only effects Link's voice. * Forgot the "AudioHook.cpp" file its needed for the "Display Sequence Name on Overlay" option. * Moved the "Sfx" folder to the "Audio" folder. * Removed extra line breaks between sections in "RegisterAudioWidgets()". * Renamed "OnGenerationCompletion" hook to "OnRandoSeedGeneration" * Changed "gAudioEditor.*" to use "CVAR_AUDIO("*") in "AudioEditor.cpp" * Added "AddAudioSearchWidget" function Changed all "BenGui::mBenMenu->AddSearchWidget lines to use "AddAudioSearchWidget". * Changed the "OnSeqPlayerInit" hook parameters type to use the "s32" Macro. * Update BenMenu/BenGui include paths: Replaced "../../" with "2s2h/". * Ran Clang Format. * Added "DisableEnemyProximityMusic.cpp" Added "VB_PLAY_ENEMY_PROXIMITY_MUSIC" enum to "GIVanillaBehavior" in "GameInteractor.h" "Audio_UpdateEnemyBgmVolume" is now wrapped in a "GameInteractor_Should" * Added "DisableTatlCallAudio.cpp" Added "VB_PLAY_TATL_CALL_AUDIO" enum to "GIVanillaBehavior" in "GameInteractor.h" "Audio_PlaySfx(NA_SE_VO_NAVY_CALL)" is now wrapped in a "GameInteractor_Should" * Added "LinksVoicePitchMultiplier.cpp" Added "Enable Link's Voice Pitch Multiplier" checkbox to Audio Editor The "Link's Voice Pitch Multiplier" slider is now disabled when "Enable Link's Voice Pitch Multiplier" is not enabled. Added "VB_LINK_VOICE_PITCH_MULTIPLIER" enum to "GIVanillaBehavior" in "GameInteractor.h" "AudioSfx_PlaySfx" in the file "z_actor.c" in function "Player_PlaySfx" is now wrapped in a "GameInteractor_Should". * Removed "OnSceneChange" Hook. Removed "GameInteractor_ExecuteOnSceneChange". Removed "GameInteractor_ExecuteOnSceneChange(play->sceneId);" from "z_play_2SH.cpp:OTRPlay_SpawnScene" function Renamed "AudioEditorRegisterOnSceneChangeHook" to AudioEditorRegisterOnRoomInitHook". * Made Changes requested by Eblo to "LinksVoicePitchMultiplier.cpp" and "z_actor.c" * WIP Randomize On New Scene
2025-11-06Merge pull request #1321 from HarbourMasters/develop-mionEblo
Merge develop-mion->develop
2025-11-03Fix lens actors not showing (#1315)Eblo
2025-10-30Convert to ObjectExtension (#1299)Eblo
* Replace ActorExtension with ObjectExtension * We only need cassert here, not all of LUS * Expose ObjectExtension_Free to C++ * Remove unneeded vector include
2025-10-29Bump LUS and OTRExporter, add null audio backend (#1289)Eblo
* Bump LUS and OTRExporter, add null audio backend * Missed an include change * And again * Thanks macOS * Another one * Bump LUS again, fixing SDL audio backend bug * Sync LUS bump changes to merged PRs * Bump LUS again * Update CMakeLists.txt includes
2025-09-16Document Player's Face and z_actor FaceChange functions (#1777)engineer124
* player face docs * more docs * cleanup * toto * more comments * fix bss, names * better comment * PR, fix comment * fix bss * sEyeTextures comment * FaceChange_UpdateBlinkingNonHuman --------- Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2025-09-16Apply MATRIX_FINALIZE_AND_LOAD to port filesEblo
2025-09-16EffectSs Sync (#1799)Derek Hensley
* gEffectSsOverlayTable * Sync with OoT docs
2025-09-16Misc FAKE fixes (#1783)Derek Hensley
* CutsceneCamera_UpdateSplines fake match * CutsceneCamera_Init -1 splineIndex * Eye Point comment * func_80B781DC better fake * func_80B32F04 * ObjSwitch_Update * ObjSwitch_InitTrisCollider * ObjAqua_Init * EnTrt_ItemGiven * func_80C10E98 partly * EnTest7_WarpCsWarp this to 1 * EnTest6_InvertedSoTCutscene better fake * EnTest6_DrawAmmoDropRupee * EnPoSisters_MatchPlayerY * func_8095B76C * EnMinifrog_Init * func_80A5C0B8 * EnKnight_UpdateEffects * EnKnight_FlyingHeadAttack * EnKakasi_Init * EnInvadepoh_ModelInfo_GetNextFaceAnim * BgAstrBombwall_InitCollider like func_809CE068 * Player_UpdateInterface * Player_CsAction_TranslateReverse * DynaPoly_AddBgActorToLookup better fake * CutsceneManager_FindEntranceCsId * func_800AE930 better fake * Math3D_CylVsLineSeg better fake * MapDisp_InitBossRoomStorey * Play_Init * EnTimeTag_Diary_Wait better fake * Remove fake label from Player_SwordFromIA * Player_PostLimbDrawGameplay partly * EffectBlure_AddVertex prev temp * Player_PostLimbDrawGameplay attempt 2 * AudioMgr_StopAllSfxExceptSystem * Camera_Normal0 * Camera_Jump2 * Camera_Normal3 * PR review
2025-09-16Document Update Actor Flags (#1762)engineer124
* name flags, TODO: comments * comments * improve comments * small cleanup * cleanup comment
2025-09-16Document Culling (#1759)engineer124
* culling docs * cleanup * PR suggestions
2025-09-16Document Light-Based Actor Flags (#1754)engineer124
* light flags template * first attempt * typo * improve names * improve comments
2025-09-16Small Misc Clean (#1751)Derek Hensley
* Fix z64item comment * titleCtxt -> titleCtx * combine gfx buffers bss into 1 file
2025-09-16Document Actor Ocarina Interaction (#1748)engineer124
* ocarina interaction * cleanup * 0x * document zora exception * add comment
2025-09-16Player Docs: Spin Attack (#1741)engineer124
* spin attack * cleanup * fix bss * PR review * sync func name * add todo
2025-09-16Player Docs: Talking (#1738)engineer124
* player talk * cleanup * fix comment
2025-09-16Document Room Type (#1740)engineer124
* roomType * cleanup
2025-09-16Player Docs: Z Targeting (#1736)engineer124
* z target docs * Player_UpdateZTargeting * func docs * more cleanup
2025-09-16Animation Cleanup: En_Z* (#1727)engineer124
* cleanup * more progress * finish off z * one more thing * one more animIndex * fix spacing
2025-09-16dead flag (#1735)engineer124
2025-09-16Further Attention Docs (#1732)engineer124
* more attention docs * more docs * cleanup * more cleanup * spacing * more attention docs * small cleanup * consistency
2025-09-16actor flag thump (#1730)engineer124
2025-09-16Cleanup gSPMatrix, rename `Matrix_New` -> `Matrix_Finalize`, add ↵engineer124
MATRIX_FINALIZE_AND_LOAD (#1729) * mtx-finalize * cleanup gSPMatrix
2025-09-16Document `ACTOR_FLAG_UPDATE_DURING_OCARINA` and ↵engineer124
`PLAYER_STATE2_USING_OCARINA` (#1720) * ocarina flag * oops * PR
2025-09-16Target -> Attention (System Rename) Part 2 (#1721)engineer124
* remaining attention rename * cleanup
2025-09-16Sync Colliders Final (#1718)Derek Hensley
* ElementDamageInfoAT * ElementDamageInfoAC * colMaterial * elemMaterial
2025-09-16Target -> Attention (System Rename) (#1716)engineer124
* attention * revert flags, too large of a diff * more revert
2025-09-16Colliders Sync Tris Quad Sphere Line (#1714)Derek Hensley
* Tris * Quad * Sphere * Line
2025-09-16Player Docs: FocusActor and Lock-On Cleanup (#1711)engineer124
* focus actor docs * small cleanup * brackets * remaining lock-on docs * more cleanup/docs * more reticle docs * oops
2025-09-16Colliders Sync Cylinders (#1709)Derek Hensley
2025-09-16Player "Hostile" Docs (#1706)engineer124
* actor flag hostile * player hostile
2025-09-16Colliders Sync JntSphere (#1700)Derek Hensley
* JntSphere * Format * PR review
2025-09-15InitVars -> Profile (#1697)Derek Hensley
* ActorProfile * EffectSsProfile * TransitionProfile * variables.txt
2025-09-15Colliders Sync ColliderElement (#1698)Derek Hensley
2025-09-15Player: Document "WaitForPutAway" (#1694)engineer124
* import OoT docs * cleanup * carry actor * more cleanup * PLAYER_STATE1_CARRYING_ACTOR
2025-09-15Misc Clean (#1680)Derek Hensley
* vramu32 in Overlay_Relocate * Actor_SetColorFilter args * Effect Hitmark enum * Actor_WorldToActorCoords * Some fault clean up * contoller.h * macros.h no longer needs stdint.h
2025-09-15Fixup actor audio flags docs (#1682)Dragorn421
* Fixup actor audio flags docs * format
2025-09-14Add a `z64play.h` header (#1646)Anghelo Carvajal
* z64play.h * Move macros, functions and variables to header * cleanup * Reduce needed headers on z_collision_check * Change play functions to take PlayState * Move `Actor_ProcessInitChain` to `ichain.h` * format * Update src/code/z_play.c Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * Add macros.h to sys_math3d.c * Rename SequenceContext to SceneSequences --------- Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2025-09-14Animation Cleanup: En_T* (#1522)engineer124
* anim T cleanup * more cleanup * brackets and floats * small thing * more floats * fix name * fix * format --------- Co-authored-by: angie <angheloalf95@gmail.com>
2025-09-14Clean up circle tex and gZeroVec3f/gZeroVec3sEblo
2025-09-14Fix LensMode Names (#1643)inspectredc
2025-09-14General cleanup (#1636)Derek Hensley
* totalLoadedActors comparision * OBJMINE_PARAMS * Sort z64.h header includes * MapSelect_LoadConsoleLogo * Combine notebook tables into 1 * TGSw clean up
2025-09-14`ovl_En_Door` docs pass (#1603)Anghelo Carvajal
* DoorScheduleResult * actionVar * DOOR_DL_ * enums * ENDOOR_TYPE_SCHEDULE and related stuff * Name some functions and start figuring out stuff * defines * start documenting schedules * Name Inn doors * More door schedule naming * ajar * Name remaining schedule types * parameters diagram and some cleanups * Name renaiming types * format * rename some schedules * Use more static_assert * name anims * yeet unrelated stuff * requestOpen * Yeet DoorScheduleResult * whoops * stuff i missed * Update src/overlays/actors/ovl_En_Door/scheduleScripts.schl Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * Update src/overlays/actors/ovl_En_Door/z_en_door.h Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * Update src/overlays/actors/ovl_En_Door/z_en_door.h Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * review * Update src/overlays/actors/ovl_En_Pm/z_en_pm.c Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * Update src/code/z_sub_s.c Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * review * FindScheduleDoor --------- Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
2025-09-13Clean2 (#1605)Derek Hensley
* AnimationContext_Update * TransitionTile_InitGraphics * disasm files * gPlayerFormItemRestrictions -> code_8012EC80 * fix * Extract gCircleTex * Const fixes * gPlayerFormItemRestrictions suggestions * Setup_InitRegs * z_inventory
2025-09-13Animation Cleanup: En_R* (#1516)engineer124
* begin R * finish anim R * cleanup * small adj * cleanup * CS_STATE_IDLE * CS_ID_NONE * more cleanup * sBssPad * angles * sneak in small fix * small fix
2025-09-12Animation Cleanup: En_P* (#1507)engineer124
* anim P cleanup * PR Review * PR Review * Postbox Idle
2025-09-12Document Actor Category Change (#1518)engineer124
* Actor Category Change * cleanup * comments * adj comment * revert small cleanup for libc64 PR * adjust comments
2025-09-12Use `CURRENT_TIME` Macro (#1514)engineer124
* use CURRENT_TIME macro * add comment * cleanup brackets