58 discrete sound events across 16 semiotic families.
| Family | Character | Events |
|---|---|---|
| Touch & Gesture | Tactile, immediate, light | 5 |
| Move Outcome | Decisive, confirmatory or deflating | 4 |
| Rotation Lands | Satisfying snap/click | 4 |
| Waves & Ripples | Spreading, resonant | 4 |
| Goal & Match | Rewarding lock-in, settling | 5 |
| Move Indicator | Subtle progress tone | 2 |
| Game State | Tension/constraint vs release | 4 |
| Undo & Redo | Rewind, correction feel | 4 |
| Hints | Gentle suggestion | 2 |
| Victory | Celebration, ascending | 5 |
| Level Transition | Momentum, forward motion | 4 |
| Chapter Transition | Dramatic, theatrical | 5 |
| Cube In/Out | Structural, mechanical | 3 |
| UI | Clean, functional | 6 |
| Tutorial | Warm, guiding | 4 |
| Finale | Special, emotional | 2 |
Each event already has a haptic or animation call site where an audio call can be placed alongside:
| Event | Where to hook | File | Line |
|---|---|---|---|
| Touch Down | OnControlStart |
TouchVisualCoordinator.cs | 21 |
| Tile Change | OnTileChanged |
TouchVisualCoordinator.cs | 32 |
| Direction Locked | OnDirectionPicked |
TouchVisualCoordinator.cs | 47 |
| Circular Mode | GameHaptics.OnCircularRotationSwitch() |
TouchController.cs | 1291 |
| Drag Tick | GameHaptics.RotationDeltaTick() |
CubeletTransforManager.cs | 278 |
| Move Confirmed | GameHaptics.OnMoveConfirmed() |
Game.cs | 444 |
| Move Cancelled | Analytics.Event(MoveCancelled) |
Game.cs | 436 |
| Manual Undo | Analytics.Event(Undo, "manual") |
Game.cs | 392 |
| Pure Tap | FinalAbsoluteDirection == NONE branch |
TouchVisualCoordinator.cs | 249 |
| Snap: Move | GameHaptics.OnRotationComplete(MOVE) |
Game.cs | 570 |
| Snap: Undo | GameHaptics.OnRotationComplete(UNDO) |
Game.cs | 570 |
| Snap: Cancel | GameHaptics.OnRotationComplete(CANCEL) |
Game.cs | 570 |
| Snap: Cutscene | GameHaptics.OnRotationCompleteDuringCutscene() |
Game.cs | 575 |
| Move Wave | StartWaveEffectWithParameters(MoveWave) |
TouchVisualCoordinator.cs | 203 |
| Tap Wave | StartWaveEffectWithParameters(TapWave) |
TouchVisualCoordinator.cs | 250 |
| Winning Wave | StartWinningWave() |
TouchVisualCoordinator.cs | 199 |
| Camera Snap | CameraManager.TOAngleOffsets() |
TouchVisualCoordinator.cs | 231 |
| Tile Unsettled | GoalManager.UnsettleTiles() |
TouchVisualCoordinator.cs | 60 |
| Goal Settles | GameHaptics.OnCubeSlotIn() |
RequestGraphics.cs | 191 |
| Match Feedback In | ForceMatched(tile, true) |
GoalManager.cs | 274 |
| Match Feedback Out | ForceMatched(tile, false) |
GoalManager.cs | 258 |
| Cubelet Shake | ShakeCubelet() |
GoalManager.cs | 303 |
| Move Effect | VFXManager.MoveEffectTween() |
TouchVisualCoordinator.cs | 213 |
| Undo Effect | VFXManager.UndoMoveEffect() |
TouchVisualCoordinator.cs | 273 |
| Out of Moves | CubeAnimator.SetNoMovesFeedback(true) |
Game.cs | 644 |
| Moves Restored | CubeAnimator.SetNoMovesFeedback(false) |
Game.cs | 389 |
| Blocked Attempt | Moves == 0 && !IsUndoing branch |
TouchVisualCoordinator.cs | 253 |
| Vibration Loop | _loopingShakeSequenceDuringNoMove |
CubeAnimator.cs | 93 |
| UI Undo | GameHaptics.OnUndo() |
Game.cs | 481 |
| UI Redo | GameHaptics.OnRedo() |
Game.cs | 531 |
| Swipe Undo/Redo | TryUndo() / TryRedo() |
UIManager.cs | 395/400 |
| Move Hint | PlayMoveHintAnimation() |
Game.cs | 244 |
| Undo Hint | PlayUndoHintAnimation() |
Game.cs | 302 |
| Level Won | IsLevelWon check |
Game.cs | 658 |
| Victory Text | UIManager.SetLevelVictory() |
Game.cs | 662 |
| Victory Tap | VictoryLoop() |
Game.cs | 710 |
| Victory Shake | GameHaptics.OnShakeDuringVictoryAnimation() |
CubeletTransforManager.cs | 199 |
| Victory Final Shake | GameHaptics.OnFinalShakeDuringVictoryAnimation() |
CubeletTransforManager.cs | 201 |
| Level Pop | GameHaptics.OnCubePopLevelTransition() |
GameCoroutines.cs | 587 |
| Transition Rotation | AnimatedRotationUtil() |
GameCoroutines.cs | 722 |
| BG Color Shift | CameraManager.TweenBackgroundColor() |
GameCoroutines.cs | 763 |
| Final Bounce | AnimatedRotationUtil(OutBounce) |
GameCoroutines.cs | 788 |
| Chapter Pop | GameHaptics.OnCubePopChapterTransition() |
GameCoroutines.cs | 407 |
| Chapter Shuffle | StartRandomShuffleEffect() |
GameCoroutines.cs | 382 |
| Cube Shrinks | Tween.Scale(shrink) |
GameCoroutines.cs | 390 |
| Inner Pop | Tween.Scale(cubelets expand) |
GameCoroutines.cs | 424 |
| Chapter Reveal | Tween.Scale + EulerAngles + Flash |
GameCoroutines.cs | 459 |
| Slot In | GameHaptics.OnCubeSlotIn() |
CubeAnimator.cs | 215 |
| Slot Out | GameHaptics.OnCubeSlotOut() |
CubeAnimator.cs | 277 |
| Shadow Fade | Tween.Custom(InsideGradientEnd) |
CubeAnimator.cs | 220 |
| Button Press | GameHaptics.OnUISelection() |
TextButton.cs | 77 |
| Scroll Tick | GameHaptics.OnUIScrollTick() |
ScrollRectLean.cs | 319 |
| Menu Open | Game.OpenMenu() |
UIManager.cs | 821 |
| Menu Close | Game.ResumeGameplay() |
UIManager.cs | 931 |
| Flash In | UIManager.FlashIN() |
GameCoroutines.cs | 465 |
| Flash Out | UIManager.FlashOUT() |
GameCoroutines.cs | 511 |
| Tutorial Wave | StartWaveEffectWithParameters() |
GameCoroutines.cs | 178 |
| Tutorial Flash | FlashIN() |
GameCoroutines.cs | 247 |
| Tutorial Hand | Tween.Position(hand) |
GameCoroutines.cs | 275 |
| Tutorial Restored | FlashIN() |
GameCoroutines.cs | 296 |
| Color Shift | TweenBackgroundColor + TweenUIColor |
TouchVisualCoordinator.cs | 225 |
| Finale Text | SetCustomText(GetNextFinalString) |
TouchVisualCoordinator.cs | 222 |