- added the missing limit check for `sCustomModelsCount`
(caused memory overflow into `bbh_seg7_vertex_`)
- changed `LOG_ERROR` to `LOG_LUA_LINE`, so that the mod dev can easily see any missing models
(similar to getting warnings about missing audio files with `audio_sample_load`)
Fixed the issue where the camera wasn't behaving like vanilla in vanilla sm64
Fixed the issue where the camera was just stuck while in water/flying in a romhack
The nametag's scale is now controlled by its depth, matching the player's size
The nametag's color now uses the same function used by chat to retrieve the player color
The nametag will fade away if it gets too close to the camera
* Update mtxf_lookat
* Make new mtxf_lookat a little easier to read and add mario specific types
* fix the declaration for mtx[3][3]
* Added negative sign
- fixed "SDL_GetClipboardText" memory leak
- forcing unicode clipboard data format on Windows (UTF-16LE system, UTF-8 in-game)
- all "get_clipboard_text" functions return a zero-width string in case of failure, instead of NULL
Three new functions have been added, to be able to change the respective mod menu elements' values:
- update_mod_menu_element_checkbox
- update_mod_menu_element_slider
- update_mod_menu_element_inputbox
* interpolate all fovs
* perfected the fov equation
just the facts
* create fov coefficient function
use it to scale units along with fov
* add get_current_fov
returns the current fov
* Update math_util.c and math_util.h to move toward inlining functions instead of macros for autodoc. Expose some misc functions useful to lua
* Fix formatting
* Fix math_util.c formatting
* Fix formatting for smlua_math_utils.c
* Fix formatting smlua_functions.c
* Fix type redundancy in _Generic macros
* Add checks for including the highly optimized builtin compiler functions for GCC/Clang
* Add compiler checking for absx() to add in the highly optimized GCC/Clang builtins
* Fix repeated use of float built-ins for non floating point numbers
* Fix grammar mistake
* Fix functions to use camelCase as requested.
* Fixed the use of a custom sqrt approximation as modern procs have a built in FSQRT instruction that is faster.
---------
Co-authored-by: js <js@cartbara.columbus.rr.com>
Sometimes, the player can ground pound a pole before even landing or punch/kick an enemy at high speeds which will kill the enemy but not give bounce back to the player. This fixes those, although there are definitely mod incompatibilities.
* Make dives knockback based on speed
Suggestion from issue #349
* Add `get_local_coopnet_id`
Suggestion from issue #264
* Readd breakdancing as an attack
Suggestion not only from me but also from a few players I talked with. However this was not a suggestion that came from issues.
* Change around pvp damage
Suggestion from issue #343 and some changes from talking with the creator of the suggestion
* Change `get_local_coopnet_id`
The function can now take in any local id and has been renamed to just `get_coopnet_id`
* Suggested fixes
- Doors now no longer will be repeatedly talked even if you don't move away. It now behaves closer to vanilla.
- Fixed the ending level name not being able to be replaced.
- Only inited `smlua_audio_utils` if needed, since there will probably be plenty of people who play without ever using mods with custom audio.
- Fixed the pause anywhere setting - this ended up not being fully accurate to ex-coop, which it was originally intended to be.
- Stopped regenerating dynos collision bin on start up every time therefore giving a slight start up speed boost for some people.
- Added a config file setting that lets people choose to compress dynos bins on startup (disabled by default).
- Fixed a warning that shows on non macs during compiling.
- Properly fixed the chat box focus.
- Made the public lobby rules panel "temporary".
- Added a cleaner loading screen design.
- Added an ex-coop theme easter egg, can only be activated from the config file.
- Cleaned up the Lua traceback logging, now shows the folder and file the error occurred in, rather than the full path.
- Added a way to set `gCheckingSurfaceCollisionsForCamera`, so mods can specify to surface finding functions to ignore `SURFACE_FLAG_NO_CAM_COLLISION` internally.
- Rewrote the way smlua pushes CObjects/CPointers to Lua. Now using the C Lua API entirely to connect to Lua.
- Fixed a use-after-free bug that could easily crash the game through Lua (explained further in one of my comments below).
- Fixed a common crash in `audio_sanity_check`.