Vanilla bug: pressing START on the splash screen in the last moments
before the demo timeout plays the enter chime but then drops into the
demo reel with no music. The attract timer fires while the press-start
fade is still in flight and overwrites the fade target, so the fade
completes as a demo entry instead of the main menu.
Adds a @bug comment documenting it, and guards the demo arm with
is_screen_being_faded() under AVOID_UB only, so the matching build is
byte-identical (the non-AVOID_UB path is unchanged).
* First pass on converting degrees
* Document degrees < 10
* Update most rotation values to degrees
* Simplify DEGREES usage
* A few additional DEGREES conversions
* Documentation of DEGREES function
* Use fractional degrees
Instead of using `DEGREES(15) - 9` use `DEGREES(14.95f)` to avoid mixing representations
* Cleanup / document degrees off by 1
* Update documentation of DEGREES
* Document steering
* Refer to steering position, instead of steering angle
Refer to steering position instead of steering angle, to make clear that it is not the same thing as degrees.
* Change comment to block format
* Pre-spinout swerving
When you sharply move a joystick in 150CC or hit a banana, you can enter a pre-spinout state where you swerve back and forth.
This primarily documents how the swerving works, as well as updating some related function / property names
* Document steering
* Refer to steering position, instead of steering angle
Refer to steering position instead of steering angle, to make clear that it is not the same thing as degrees.
* Change comment to block format
* rename some texture
* ok document drifting effect and player particle
* continue rename
* push more rename
* more documentation
* minor rename test
* continue rename texture
* continue rename
* some rename
* more rename
* other fix
* fix comment
* fix a missing I
* fix a mistake
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* unk_044 initial documentation
* Define player.unk_044 magic values
* Turns more than 5 degrees
* Lakitu Effects
* UNK_0B6 (effect graphics) documentation
* UNK_002 documentation
* Document UNK_0DE and define magic values
* Use defined player types
* Rename `player->unk_0CA` to `lakitu_props`
* rename `player->unk_0B6` to `kart_graphics`
* Rename `player->unk_0DE` to `oobProps`
* rename `player->unk_044` to kartProps
* Formatting updates
* Use camelCase instead of snake_case for player properties
* Fix reference to wrong attribute in comment
* Rename `PRESS_A` to `THROTTLE`
Rename `PRESS_A` to `THROTTLE` to describe the Kart state, which may be slightly different than just pressing A.
* small adjustement
* adjust some naming and other just two other in link with time trial
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Document projection matrix function
Document function for computing a projection matrix. Used for camera and graphics.
* Fix loop index bug
Fix straightforward loop index bug introduced in last commit
* Style guide updates
Changes to match style recommendations
* Update function variables to camelCase
* Use dOxygen tags
* Use block comment
* Document math functions
* Give all functions in src\racing\math_util.c descriptive names
* Improve documentation for math_util
Improves a number of functions by giving descriptive argument names and comments
* Additional merge
* Fix style issues
update variables / parameters to use camelCase instead of snakeCase
* doxygen and other documentation
* Add doxygen documentation
* Rename mat -> mtx for consistency among matrices
* Theta -> Angle for angles
* Give some arguments more descriptive names
* Partial documentation for calculate_orientation_matrix
Documentation for when cosAxisY is 1 and observations that things break when if it does not equal 1.
* Rename functions
Renamed multiple functions for accuracy or clarity
* doxygen whitespace alignment
Improve readability of doxygen info by aligning text
* Make format check
Formatting updates suggested by make format
* Make skyboxes static
* Change function name
angle_from_coords -> get_angle_between_coords
* Math values renamed
Functions:
render_distance_squared -> distance_if_visible
mtxf_rotation_zxy_translate -> mtxf_rotate_zxy_translate
Arguments:
vecTrans -> translate
* Document many effects
Define effects for
* Braking
* Drifting
* Spinning out (driving and bananas)
* Mini turbos
* Losing at GP
* Tumbling on terrain
* CPU rubberbanding
And substitute some pre-existing defined effect names in place of bit flags
* Replace effect magic numbers with defined values
* Separate effect bit-flags into components
* Document more effects
* Rename some effects
* Replace effect bit_flags with defined values
* Formatting fixes
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Document time trial input replay system
Documents how the input replay system works in time trials. This is used for
* Course ghosts (on the raceways)
* Player ghosts
* Replays
* Rename ghosts/replays and minor cleanup
Refer to staff and player ghosts in time trials as replays.
Refer to the basic replay as a "post time trial replay"
Change variable / function names to reflect terminology change
* Define replay magic values
* Rename staff_ghosts files to replays
Renames staff_ghosts files to replays, since they also deal with player ghosts and post time trial replays.
Also, changes staff_ghosts_loop -> replays_loop
* REPLAY_NOT_FRAME_COUNTER -> REPLAY_CLEAR_FRAME_COUNTER
* Add replays header and format
* Update replays.c
* Name load replay functions
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Document projection matrix function
Document function for computing a projection matrix. Used for camera and graphics.
* Fix loop index bug
Fix straightforward loop index bug introduced in last commit
* Style guide updates
Changes to match style recommendations
* Update function variables to camelCase
* Use dOxygen tags
* Use block comment
* Document math functions
* Give all functions in src\racing\math_util.c descriptive names
* Improve documentation for math_util
Improves a number of functions by giving descriptive argument names and comments
* Additional merge
* Fix style issues
update variables / parameters to use camelCase instead of snakeCase
* doxygen and other documentation
* Add doxygen documentation
* Rename mat -> mtx for consistency among matrices
* Theta -> Angle for angles
* Give some arguments more descriptive names
* Partial documentation for calculate_orientation_matrix
Documentation for when cosAxisY is 1 and observations that things break when if it does not equal 1.
* Rename functions
Renamed multiple functions for accuracy or clarity
* doxygen whitespace alignment
Improve readability of doxygen info by aligning text
* Make format check
Formatting updates suggested by make format
* Make skyboxes static
* Change function name
angle_from_coords -> get_angle_between_coords
* Math values renamed
Functions:
render_distance_squared -> distance_if_visible
mtxf_rotation_zxy_translate -> mtxf_rotate_zxy_translate
Arguments:
vecTrans -> translate
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Labeling particle related code
* More labeling. Naming pass on what was labeled last commit
* Stick X clamped with deadzone
* Renaming TyreParticle to Particle
* Matching coco's names and renaming some already labeled to keep style consistent
* Minor extra particle labeling
* Small extra labeling. Restoring some removed newlines
* One last newline adjustment
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Shiftability fix and documentation
* Allow setting `AVOID_UB=1` directly while building
* Set `AVOID_UB` when building with DEBUG.
* Document options for enabling shiftability
* Document `make clean`
* Delete HTML file
* Update compiling.md
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Document projection matrix function
Document function for computing a projection matrix. Used for camera and graphics.
* Fix loop index bug
Fix straightforward loop index bug introduced in last commit
* Style guide updates
Changes to match style recommendations
* Update function variables to camelCase
* Use dOxygen tags
* Use block comment
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Document various functions and variables
* Fix code changes
* Rename function based on discussion
* Identify global table of player speeds
* Improve names of functions
* Label further things related to playerIndex
* Label further balloon related things
* Document further balloon related things
* Use STAR_DURATION
* Update vars
* Fix missing arg
* Commit unpr'd matches
* fix compile
* Commit matching func_80086074
* More matches
* Fix missed labelling
* menus.c formatting
* More matches
* Match update_player_path_completion
* Formatting
* Match func_80050E34
* Match EU Audio init
* Match func_800C16E8
* Match synthesis_process_note
* Match func_80009B60
* Match
* Match cpu_use_item_strategy
* Match render_menus
* match last func
* Fix EU build and eu-final offsets
* Fix instrument align and bring EU matches
* Fix EU trig table segment
* Label audio_init
* Simplify float comments
* Proper EU name version defines
* couple of matches
* match func_800C4FE4
* match func_800C284C
* match func_800C2A2C
* match func_800C3724
* match func_800C4398
* format
* format2
* remove asms