* [WIP] fix warnings
Committing now as is for Isaac to take a look at this.
Having issues with VERSION_TEXT
* Fix VERSION_TEXT crash and stop demos on host
* HOOK_JOINED_GAME
* expose VERSION_TEXT, and two more adjusments
* show if a constant type is a string with autogen
* fix another blunder by that guy
* should use an or operator here
* fix frame limiter stuff
- Add NULL checks to DynOS warps
- Change checks for skipping interpolation on the original title screen for much better ones
- Interactions are no longer processed if you are on the title screen
- Re-add some of the legacy demo code for the original title screen
- Fix disconnecting on the original title screen
- Fix disconnecting on the act select screen
- Fix interpolation crash
* fix player connected spam on joining a game
* make it possible to actually disable interpolation
by setting the frame limiter to 30
also move the "Disable Popups" option to misc settings.
* maybe someday ill learn to read.
* one day.
Bug:
Clicking on Palette Preset to cycle through palettes overwrites and erases the custom palette
Fix:
Added config values coop_custom_palette_* to save the custom palette colors
Clicking on Edit Palette now sets the current palette to Custom and loads the custom values instead of using the previous preset selected
Add the Lua Profiler to the debug menu.
Prevent Mario from sleeping on the main menu.
Fix IP address string corruption when saving the config file.
Bring back the Discord fatal message.
Add get_dialog_box_state
Prevent some attacks from registering as pvp attacks.
Clean up all cases of camera.lua
Put gLastCollectedStarOrKey in a better spot.
Clean up my moderator code a bit, changing gIsModerator to boolean.
Brang back kicked, banned and full party messages.
Fixed a warning on older compilers like raspberry pi's and use configAmountofPlayers instead of MAX_PLAYERS
Fixed compiling with the flag DISCORD_SDK off.
Added "Fixed Collisions" to the debug menu.
Added HMC, CCM, RR, BITDW, PSS and TTC to the main menu options.
Fix my own oversight; Prevent the port from being duplicated in the join menu. (temporary fix)
Hopefully bring back the crash handler on windows by not checking for termination signals on windows
It now only appears when someone stops hosting and you are disconnected from their lobby, I also changed the text to "Disconnected: server closed" in case it wasn't obvious
Just a simple code cleanup opportunity I saw
"I won't be porting this to the web" - djoslin
Compiled and tested everything to see if it works, feel free to check yourself or look over the code
Also, I noticed TARGET_N64 was there too, might do a clean up on that since we all know this isn't getting ported to the N64 anytime soon.
* Support for more granular player colors
You can now configure RGB values for shirt, pants, gloves, and shoes.
Due to some limitations, configuring shoes does nothing at the moment.
* Remove paletteIndex and friends
Restructured and filled in some remaining code to account for that.
* Add Edit Palette panel to Player panel
* Change PlayerPalette contents to an enum-indexed array, remove shoes
This gets rid of all the hokey code doing switch cases on the
different parts.
* Fix goof with player model selection box
Should actually have affect now even if a custom palette is being used.
* Fix gap in player color display list commands
The extra space was leftover from when I was trying to get shoes
working. Forgot to clean it up.
* Standardize PlayerParts enum, including for lua constants autogen
* djui_panel_player.c: Properly hook sending palette changes on unpause
Editing the palette and then unpausing should send out the packet to
everyone with the new palette changes (and update the palette preset
selection box), but since we weren't hooking that situation before, it
would stay changed only for you. You would have had to press the Back
button for it to work right.
* Allow Lua mods to continue using `paletteIndex`, `overridePaletteIndex`
This lets mod code like this still work unchanged:
if s.team == 2 then
np.overridePaletteIndex = 7
elseif s.team == 1 then
np.overridePaletteIndex = 15
else
np.overridePaletteIndex = np.paletteIndex
end
It's essentially faked, and would work strangely if the value of either
variable was inspected more closely directly. This should at least
handle the typical use case, though.
Every frame, `overridePaletteIndex` is checked to see if it was modified
from its previous value. If so, `overridePalette` is set to the preset
corresponding to the index. `paletteIndex` contains a special value that
when used to assign to `overridePaletteIndex`, it copies `palette` into
`overridePalette` to restore the real colors, which of course may not
follow the presets at all.
* characters.h: Pack `PlayerPalette` to eliminate size differences between computers
* mario_misc.c: Remove remaining "TODO GAG"
Mods are now loaded into a table
Clients now request a mod list from the server, then download each file one at a time before joining
Embedded constants.lua into the program