Commit graph

424 commits

Author SHA1 Message Date
EmeraldLockdown
95d4d627ea
Fix Popup Setting (#485)
* Remove old setting

* Readded setting

* Make setting actually work

* Add override functions

* Reset overrides on network shutdown

* Use djui_is_popup_disabled instead of ternary expression

* Move all the other stuff out of .h file
2023-10-27 03:10:32 -07:00
David Joslin
cf20658079 Eyerok can now get attacked by remote players 2023-10-27 01:03:20 -07:00
David Joslin
8fe77eaf9f Ran autogen 2023-10-26 17:15:01 -07:00
flipflop bell
22761949f7
Fix gBehaviorValues.GrateStarRequirement and add gBehaviorValues.Chil… (#471)
* Fix gBehaviorValues.GrateStarRequirement and add gBehaviorValues.ChillyChiefDeathPosY

For some reason, the castle_cannon_grate.inc.c file was unaltered so gBehaviorValues.GrateStarRequirement would not do anything.
gBehaviorValues.ChillyChiefDeathPosY is self explanatory, it lets you change the Y position where the Chilly Chief bully dies.

* ChillyChiefDeathPosY -> ChillBullyDeathPosY

---------

Co-authored-by: <peachy.peach.sm64@gmail.com>
2023-10-20 19:15:38 +02:00
Sunk
302b9b71fa
Patch out toxic gas camera from romhacks (#462)
* Patch out toxic gas camera from romhacks

* Allow toxic gas camera in romhacks to be disabled with camera_allow_toxic_gas_camera()

In romhacks only. Toxic gas camera in vanilla levels will always remain active.
Passing in 0 means enable toxic gas camera.

* Reset gOverrideAllowToxicGasCamera to network_shutdown()

* Swap order

I too have a hard time reading my own code
2023-09-20 19:12:08 +02:00
Sunk
284e02dcb1
Add gLevelValues.wdwWaterLevelSpeed (#469)
Some romhacks do change the speed of the wdw water level.
I am aware that the water level is an object and should be under gBehaviorValues, but that feels wrong so it's under gLevelValues.
2023-09-11 18:42:15 +02:00
PeachyPeach
31c2e23c48
allocate_mario_action fix and improvement (#453) 2023-08-18 18:55:39 +02:00
Sunk
c428612a9e
Add set_exclamation_box_contents() (#445)
* Properly set Mario's y vel to 0 on popping

* Change 0 to 0.0f, just in case

* Re-introduce a few vanilla bugs under gBehaviorValues

The Shell Mario glitch was patched as a side effect to patching a different bug, but several romhacks use it so I need it back.
The ability to collect multiple normal caps at once is needed for hat-in-hand using the hat factory glitch.

* Fix Shell Mario fix

Found the actual reason why the glitch doesn't work and figured that this change shouldn't affect anything else, so I removed its entry from gBehaviorValues.

* Add InfiniteRenderDistance to gBehaviorValues

I'm well aware that disabling the infinite render distance will be very desync prone, however a few glitches, most notably cloning and chuckya double jump, need objects load and unload from render distance.

* Allow mods to disable the camera centering from romhack camera

* Allow mods to disable romhack camera centering

Done again

* Update on network shutdown

* Remove a line which I have no idea why it returned

* Add set_exclamation_box_contents()

No way this is memory safe or even well made but I did what I could

* Added (most of) peachy's suggestions

Still need to figure out how to stop the game from reading further than the size of the array without using a hardcoded number

* Added more of peachy's suggestions

I figured a good way to cap how far the exclamation box reads is to pass in the length of the array as well
2023-07-18 18:18:02 -04:00
Sunk
d1aa4aee1e
Add gLevelValues.bubbleOnDeathBarrierInCapStages (#449)
Also add a few smaller fixes with bubbles
2023-07-18 18:01:05 -04:00
Sunk
3242c4e7c8
Document manual.lua (#443)
* Properly set Mario's y vel to 0 on popping

* Change 0 to 0.0f, just in case

* Massively increase surface pool size

Also exposed the surface pool counts by creating a few functions to get them. They only existed for debugging but may as well keep them.

* Allow extended moveset to be toggled from a chat command

I got permission to edit extended moveset. Eventually I'll try to see if I can improve upon this moveset.

* Remove old surface code

Part 1

* Heavily document manual.lua

Hopefully nothing I added is wrong

* Small change in descriptions
2023-07-18 18:00:35 -04:00
Agent X
ed60d53ab3
Mod Storage C++ (#448)
* Mod Storage C++

* Implement Peachy's suggestions.

Thank you Peachy.
2023-07-18 17:52:11 -04:00
Agent X
d63abe9c7e
Changes to light shade color (#444) 2023-07-10 15:40:45 -04:00
Sonicxryan
3258064a7f
Shading (#439) 2023-07-06 16:21:37 -04:00
Dominicentek
809cbc314b
Add lifeCap, coinCap and coinToLife to gLevelValues (#429)
* Add lifeCap, coinCap and coinToLife to gLevelValues

* autogen

* forgor

* renamed the properties
2023-07-04 14:16:07 -07:00
MysterD
aeb8817f0d Reduced Lua GC pressure by a lot, reuse cobjects/pointers 2023-06-24 23:43:03 -07:00
Sunk
f6a78e0c77
Allow mods to disable romhack camera centering (#423) 2023-06-23 16:58:47 -07:00
MysterD
2842803362 Added gLevelValues.fixCollisionBugsPickBestWall 2023-06-22 20:18:10 -07:00
MysterD
c7a557d870 Add gLevelValues.fixCollisionBugsGroundPoundBonks 2023-06-22 11:40:59 -07:00
Agent X
3f60869fcb
Add the ability to change lighting color (#420)
* Add the ability to change lighting color

Well it's actually multiplying the lighting color and not changing it completely but I think it's better that way.

* Consistency
2023-06-22 11:28:17 -07:00
MysterD
c92b62fe58 Enable romhack cam by default when in a non-vanilla level 2023-06-22 02:12:57 -07:00
Dominicentek
2629381971
Customizable dialogs (#411)
* add customizable dialogs

* remove testing mod

* add HOOK_ON_DIALOG

* Reset dialog overrides in `network_shutdown`

It may have compile errors idk editing code on phone sucks

* typo smh

* copy over the file from original repo so this fork can be synced

* run autogen again

* actually im stupid
2023-06-18 20:04:39 -07:00
Agent X
f1990c618e
Add tons of new save file / star related functions (#419)
These were needed to port interact_star_or_key to Lua but are also just good to have exposed IMO.
2023-06-18 20:04:02 -07:00
MysterD
b3eff990ae Re-ran autogen 2023-06-18 12:28:26 -07:00
MysterD
488ef1c6d2 Added collision_get_temp_wall_collision_data() to Lua 2023-06-15 19:55:55 -07:00
Sunk
a0ff975ec8
Re-introduce a few vanilla bugs under gBehaviorValues (#413)
* Properly set Mario's y vel to 0 on popping

* Re-introduce a few vanilla bugs under gBehaviorValues

The Shell Mario glitch was patched as a side effect to patching a different bug, but several romhacks use it so I need it back.
The ability to collect multiple normal caps at once is needed for hat-in-hand using the hat factory glitch.

* Fix Shell Mario fix

Found the actual reason why the glitch doesn't work and figured that this change shouldn't affect anything else, so I removed its entry from gBehaviorValues.

* Add InfiniteRenderDistance to gBehaviorValues

I'm well aware that disabling the infinite render distance will be very desync prone, however a few glitches, most notably cloning and chuckya double jump, need objects load and unload from render distance.
2023-06-11 14:24:13 -07:00
MysterD
def1122159 Allow toggling the false ledge grab fix 2023-06-11 13:00:11 -07:00
Isaac0-dev
05f4c42f81
add cancels to HOOK_BEFORE_PHYS_STEP allowing for custom step systems (#400)
* add cancels to HOOK_BEFORE_PHYS_STEP allowing for custom step systems

* give lua mods access to stepArg and nextPos from hanging and air step; fix a crash when m.floor is null
2023-05-31 21:10:06 -07:00
Emerald Lockdown
3e52c4f5db
djui_popup_create_global (#402)
* Add djui_popup_create_global
2023-05-31 21:05:07 -07:00
MysterD
929b10995c Allow other mods to add levels to arena 2023-05-31 16:56:57 -07:00
MysterD
1dd70283da Fixed bounds checks in save_file_is_cannon_unlocked() 2023-05-20 20:07:17 -07:00
Dominicentek
9a065ffced
Expose save_file_is_cannon_unlocked to smlua (#395)
* Update convert_functions.py

* Update save_file.c

* Update save_file.h

* Update cannon_door.inc.c
2023-05-20 20:06:15 -07:00
MysterD
b0408a1379 Fix some bugs found in testing 2023-05-18 17:54:29 -07:00
MysterD
18bf5847a2 Prevent rending of corrupted graphnodes, only run lua GC once per frame 2023-05-16 21:49:13 -07:00
MysterD
fa88a5aee0 Make certain GraphNodeObject fields mutable again 2023-05-16 00:05:26 -07:00
MysterD
60d70d0d38 Fix several more possible crashes from the Lua API 2023-05-15 15:55:16 -07:00
MysterD
2eb2b8c18f Make GraphNode flags mutable from lua again 2023-05-15 01:19:10 -07:00
MysterD
2083242b66 Fixed several crashes and errors found in static analysis 2023-05-15 01:15:20 -07:00
MysterD
5598ac95e7 Merge branch 'dev' of github.com:sm64ex-coop-dev/sm64ex-coop into dev 2023-05-14 12:12:30 -07:00
MysterD
8129ab7665 Prevent crashes and hangs 2023-05-13 03:07:20 -07:00
MysterD
cc1ec3e81f Prevented hundreds of additional crashes from the Mod API 2023-05-11 20:33:21 -07:00
Isaac0-dev
fad7984cd4
add djui_open_pause_menu() (#391) 2023-05-11 06:10:25 -04:00
MysterD
039be71266 Prevent even more possible crashes from the mod api 2023-05-11 01:46:27 -07:00
MysterD
f785050ccb Fix more possible crashes 2023-05-11 00:19:01 -07:00
MysterD
af01a214ee Fix autogen for AnimationTable 2023-05-10 22:29:39 -07:00
MysterD
d30b1e61a6 Add a container to animation tables so that we can track their length and stay in bounds 2023-05-10 20:57:35 -07:00
MysterD
b22230db5d Merge branch 'dev' of github.com:sm64ex-coop-dev/sm64ex-coop into dev 2023-05-10 15:21:00 -07:00
Prince Frizzy
d368e4e844
Name more audio code and variables, Document some others. (#386) 2023-05-10 14:31:58 -07:00
MysterD
b863cc80c8 Prevent several possible crashes and hangs, limit more struct fields to read-only 2023-05-10 13:25:41 -07:00
PeachyPeach
3ab4c944ac
better kick/punch/trip, gp and flying detection (#388) 2023-05-09 15:38:29 -04:00
MysterD
cb499491f4 Fix crash in network_receive_lua_sync_table 2023-05-07 22:46:00 -07:00
MysterD
1ee3fd1d13 Fixed ~240 possible crashes 2023-05-05 23:59:58 -07:00
MysterD
0a4dfd17a4 Re-ran autogen 2023-05-03 01:01:36 -07:00
MysterD
5b108e50e6 Merge branch 'coop' into dev 2023-05-03 01:01:18 -07:00
Agent X
52d70e33a5
Expose some painting functions to Lua (#357)
* Expose some painting functions to Lua

get_painting_warp_node
initiate_painting_warp

* Change initiate_painting_warp u8 to s16

In initiate_painting_warp, pass in -1 to not override the painting index.

* Add sanity checks to get_painting_warp_node

* Add requested changes
2023-05-03 00:54:57 -07:00
Prince Frizzy
ee3a7018ab
Adds support for compiling other regions (#378)
* Initial support for compiling with EU.

* Fix EU text.

* JP now compiles, TODO: Fix Autogen to fix JP and fix text in djui.

* audio: Prevent crash in EU.

* audio: Sync EU audio to 60 Hz instead of 50 Hz

* Add logging and remove sanity check to hopefully track EU crash.

* Various improvements for EU

Improve some memory debugging
Improve sound debugging
Initalize some variables in load.c for the sound system
Synchronize the EU cutscenes with the US version.

* Fix credits music playing in EU, Document some EU audio code.

* Autogen now supports version excluded object fields and functions. Reran autogen in accordance.

* Fix some potentional shifting issues due to version differences.

* Decrease the sleep times in some spots, We do not need them to be so long. (#373)

* Add the region to the version string.

---------

Co-authored-by: djoslin0 <djoslin0@users.noreply.github.com>
2023-05-03 00:54:25 -07:00
Marioiscool246
7b4b873d39
Add fov adjustment to djui_hud_world_pos_to_screen_pos (#374)
* Add fov adjustment to djui_hud_world_pos_to_screen_pos
sFOVState is now a global (gFOVState)
djui_hud_world_pos_to_screen_pos now returns false if the position is behind the camera

* Fix aspect ratio parentheses

* Rerun autogen

---------

Co-authored-by: Marioiscool246 <marioiscool101@gmail.com>
2023-04-30 22:54:55 -04:00
PeachyPeach
2aa6e1aa08
custom animations no dynos (#371)
Load animations with smlua_anim_util_register_animation and set them with smlua_anim_util_set_animation.
2023-04-28 21:00:17 -07:00
Isaac0-dev
08d31b8255
give mods more control over animations (#369)
* give mods more control over animations

- added HOOK_ON_OBJECT_ANIM_UPDATE
- make some animation values mutable

* add to docs
2023-04-29 01:56:18 +02:00
PeachyPeach
adba0f6de8
Bug fix: level_script_parse (#366)
* Bug fix: level_script_parse

* level_is_vanilla_level
2023-04-29 01:55:29 +02:00
SMS Alfredo
57ceb6543f
Expose o->collidedObjs to Lua via obj_get_collided_object function (#362)
* The function

* Autogen

* Add index parameter
2023-04-25 21:43:07 -04:00
MysterD
f2a8df7728 Made nametags mod interpolate names and health 2023-04-24 16:45:25 -07:00
PeachyPeach
fe934ffe82
djui_hud_set_rotation (#356)
* djui_hud_set_rotation

* some goddard textures
2023-04-24 06:34:21 -04:00
PeachyPeach
df248e5139
Adding hazardType to HOOK_ALLOW_HAZARD_SURFACE; more loading info (#355) 2023-04-23 12:11:56 -04:00
PeachyPeach
8311116cdf
obj_init_animation_with_accel_and_sound + fix collision_find_surface_on_ray parameter names (#352) 2023-04-20 19:43:37 -04:00
Agent X
92da90bf3f
Remove Share Lives (#351)
it's a leftover from the very early betas, it isn't needed and isn't even fully functional anyway.
Also potentially fixed mario_get_floor_class crash
2023-04-20 07:02:00 -04:00
MysterD
c71d3c564f Re-ran autogen 2023-04-20 01:28:42 -07:00
Isaac0-dev
bc7909c392
allow interact type to be 0 in hook_mario_action (#350)
* allow interact type to be 0 in hook_mario_action
2023-04-20 01:28:23 -07:00
MysterD
491a69549c Restore old version code 2023-04-20 00:51:34 -07:00
MysterD
98c78a9470 Merge branch 'coopnet' into coop 2023-04-19 00:23:37 -07:00
PeachyPeach
999ea1dd42
Expose globally custom behaviors defined with hook_behavior (#345)
* Expose globally custom behaviors defined with hook_behavior; macros for mod strings max length

* fixes

* made customBehaviorIndex a mod field to be more relevant
2023-04-17 21:54:55 -07:00
MysterD
42276e0efd Add lobby descriptions 2023-04-17 16:34:56 -07:00
MysterD
4566b7ee14 Ripped out discord network system, started re-adding invites 2023-04-15 19:53:34 -07:00
MysterD
0e1cda1b91 Ran autogen 2023-04-13 22:39:42 -07:00
PeachyPeach
318807d3c2
level_script_parse description (#340)
enhanced level_script_parse description
2023-04-10 12:25:26 +02:00
Isaac0-dev
f7a3e5f0a6
add a way for Lua mods to detect what OS coop is running on (#338)
* patch for beta 32

* bump version

* fix lakitu cam duplication hopefully

* add a way for Lua mods to see what OS its running on
2023-04-08 19:52:16 -04:00
MysterD
e7ebce5207 Removed lag compensation functions that shouldn't be added to the Lua API 2023-04-03 21:56:52 -07:00
MysterD
fce88728d2 Improve lag compensation 2023-04-03 13:55:03 -07:00
MysterD
192d47aea0 Added FONT_TINY 2023-04-02 23:02:14 -07:00
MysterD
9cfa078b5e Make gMarioStates->controller immutable in Lua 2023-04-01 17:16:18 -07:00
MysterD
6fc711e440 Added smlua_text_utils_get_language() 2023-04-01 00:04:45 -07:00
MysterD
7df87d583e Fix crash when removing a sync objects and iterating at the same time 2023-03-27 20:25:35 -07:00
MysterD
b596cb2af2 Figure out a ping between every player, adjust resend rate based on it 2023-03-27 11:50:32 -07:00
Isaac0-dev
6cb1b2faec
Beta 32.0.1 (#325)
* patch for beta 32

* require the development flag for Lua profiler

* autogen
2023-03-26 01:15:28 -04:00
Agent X
4277230f20
Show players on star select toggle (#321)
* Show players on star select toggle

* Make only toggleable by mods

* Allow player list to also be disabled
2023-03-23 21:12:26 -04:00
Agent X
1a86d46d95
Override envfx from Lua (#316)
* Override envfx from Lua

set_override_envfx(-1) to reset override

* Fix type mismatch
2023-03-23 14:46:15 -04:00
Agent X
c79a001f5f
Make fixed collision rounded corners toggleable (#315) 2023-03-22 21:02:43 -04:00
Agent X
53b8a2f8e6
Fix compilation warnings and stop demos when hosting (#313)
* [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
2023-03-21 22:41:43 -04:00
Isaac0-dev
7e46ce4a21
fixes and other improvements (#309)
* 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
2023-03-21 19:43:29 -04:00
Agent X
751dfe61c7
Move everything over (#280) 2023-03-20 22:36:25 -04:00
Agent X
42b43a9b7e
get_ttc_speed_setting and set_ttc_speed_setting (#307) 2023-03-20 20:20:11 -04:00
Agent X
612dc2b78d
Merge pull request #304 from Agent-11/server-settings
Add gServerSettings to Lua manual tables
2023-03-20 20:00:21 -04:00
Agent X
3a45334a3d
Merge pull request #310 from Agent-11/time
get_time()
2023-03-20 19:59:31 -04:00
Agent X
22952dda05
Expose sound_banks_enable/disable to Lua (#311) 2023-03-18 17:12:33 -04:00
Agent X
c67b09b77f get_time() 2023-03-14 20:53:23 -04:00
Agent X
b13b96cc19 Add gServerSettings to Lua manual tables 2023-03-07 17:46:09 -05:00
Isaac0-dev
a939ddc07b
bring back the ability to lose your cap (#229)
* bring back the ability to lose your cap

* run autogen and add "cap" to the mario states guide

* fix some indentation
2023-03-03 01:46:46 -05:00
PeachyPeach
1e175b5ce7
Make most used and useful features built-ins (#242)
* made all bools u8 for consistency with fixCollisionBugs
* preview blue coins + visible secrets
* preserve indexing
* star number
* hud cap timer
* red coins radar + secrets radar
* extended pause display
* autogen
* only sDynosBuiltinFuncs is sensitive to indexing
* rebased
2023-02-26 03:15:54 +01:00
Sunk
9ec75abc60
Add HOOK_BEFORE_SET_MARIO_ACTION (#253)
* Small quality of life changes

Disabled fixed collision in sm74 by default.
Popping should now completely set the popped player's speed to 0.

* Add HOOK_BEFORE_SET_MARIO_ACTION

Param: incoming action
Return: changes incoming action
If the return value is 1, prevent the action from happening entirely.
0 can't be used here since it'll break the title screen.

* Update hooks.md

* Revert "Small quality of life changes"

This reverts commit 05dd235cd0.
2023-02-22 20:28:23 -05:00
Isaac0-dev
baedae5412
rerun autogen (#291) 2023-02-22 00:56:30 -05:00
Agent X
ea7f0a11c2
Small improvements to HUD and new functions (#268)
* Small improvements to HUD and new functions

- Split HUD_DISPLAY_FLAG_CAMERA_AND_POWER into HUD_DISPLAY_FLAG_CAMERA and HUD_DISPLAY_FLAG_POWER
- Added hud_is_hidden()
- Added camera_is_frozen()
- Added extra sanity check to hud.c

* Re-add old flags

* Fixes and improvements

* Mod compatibility
2023-02-21 00:23:15 -05:00
Agent X
4aada40a62
area_create_warp_node and area_get_warp_node* (#270)
* area_get_warp_node*

- Added area_get_warp_node to Lua
- Added area_get_warp_node_from_params to Lua

* area_create_warp_node and warp constants

Here you go Isaac!

* Add object param

* Commits work again, pushing everything else
2023-02-20 21:47:32 -05:00
Isaac0-dev
3bc0b13e20
ACTIVE_FLAG_DORMANT (#281) 2023-02-18 23:45:13 -05:00
Isaac0-dev
3f7f5da50e
expose course_is_main_course() to Lua (#282) 2023-02-18 16:23:51 -05:00
Isaac0-dev
053d4902ed
allow mods to hide and move shadows for small objects (#257) 2023-02-18 16:06:03 -05:00
Agent X
4e293712fd
Expose Paintings to Lua (#279)
* Expose paintings to Lua

* Make some "dangerous" fields immutable

I just thought being able to edit paintings IDs from Lua was a little bit too much.
2023-02-16 18:54:38 -05:00
Agent X
8046d19db1
Add ' and " to gTextures (#273) 2023-02-15 19:45:11 -05:00
Isaac0-dev
2d1cb4712c
add a way to create/modify whirlpools (#267) 2023-02-08 16:40:41 -05:00
Agent X
35f7caecc1
Improvements and optional tweaks (#263)
- Added visibleToEnemies to invisible fields
- Added cur_obj_set_billboard_if_vanilla_cam() which makes trees only billboard if free camera is off
- Added RespawnShellBoxes to gBehaviorValues
- Added pauseExitAnywhere to gLevelValues
- Disabled the power meter chime playing on the main menu whenever disconnecting from a server with low health
2023-02-08 10:51:07 -05:00
Agent X
3dcbd5908f
Expose version constants to lua (#264) 2023-02-08 10:42:16 -05:00
Isaac0-dev
0b6f0dcf0e
Give Lua mods access to a form of level script preprocessing (#258)
* Give Lua mods access to a form of level script preprocessing

* Disable acts setting
2023-01-31 07:24:56 -05:00
Prince Frizzy
46b2e24052
Add support for custom cap sequences. (#250) 2023-01-31 05:55:18 -05:00
PeachyPeach
d5a19a4d90
added new mods to default; removed visibleToEnemies from lua (#245) 2022-12-17 19:32:55 +01:00
Agent X
acd65c7355
Add E_MODEL_SSL_TOX_BOX (#247) 2022-12-17 19:29:24 +01:00
SMS Alfredo
35bdaef094
Character Sound Hook (#223)
* Character Sound Hook

* The rest of autogen to be safe

* Indentation Fix

* Fix more indentation

* Get rid of unneeded auto gen junk

* Run autogen again

* Add HOOK_CHARACTER_SOUND to guide
2022-12-17 19:25:30 +01:00
Isaac0-dev
571d80aebf
make fixCollisionBugs an integer again (2) (#241) 2022-11-30 00:44:49 -08:00
Isaac0-dev
07ad5a55c5
add HOOK_OBJECT_SET_MODEL (#236)
* add HOOK_OBJECT_SET_MODEL
runs whenever a behaviour sets a model.
2022-11-30 00:37:43 -08:00
Prince Frizzy
523e7842d9
A bunch of LUA autogen additions. (#235)
* A bunch of LUA autogen additions.
- Add support for Vec4f, Vec4s and Mat4 in the autogen.
- Improve error messages for improper argument counts
- Added support for more pointer types in the autogen.

* Fix offsets in sMat4Fields.

* autogen: Rework this at the request of DJ.
2022-11-30 00:37:12 -08:00
wRadion
34a0b12e6c
Fixed Vanish floors/ceilings (non-wall surfaces) (#225)
In the vanilla game, vanish does only work with walls specifically, and not floors and ceilings. This is because the check for vanish surfaces was only implemented with the walls. So I simply pasted the same code but with the floors and the ceilings.
2022-11-18 18:39:17 -08:00
Isaac0-dev
dddbe4bd16
Make fixCollisionBugs an integer again (#232)
This is for mod compatibility.
2022-11-14 18:16:17 -05:00
Prince Frizzy
f815a53080
Add some new LUA helper functions and fix some bugs. (#230)
- Add new functions for objects, Feel free to flesh some out if need be.
- Fix long-standing issue with our LUA garbage collection, It will now run after all our hooks do to prevent buildup which causes lag.
2022-11-12 05:01:50 -08:00
MysterD
b6b5b4f4e3 Add ability for mods to signal that a player will not be seen by enemies 2022-11-11 19:02:11 -08:00
SMS Alfredo
bb00d47cab
Sample Stop Functions (#224)
Adds in bassh_stop_sample for source and audio_sample_stop for Lua. These functions immediately stop whatever audio the specified sample is playing.

If used in tandem with #223, this allows you to create custom character voice clips without them ever overlapping with each other.
2022-11-02 19:51:34 -07:00
PeachyPeach
55ed83ddb8
djui_hud_render_texture_tile[_interpolated]; increased GFX pool and main memory pool (#211)
djui_hud_render_texture_tile: allows user to draw a part of a texture instead of the whole texture (tilesets)
    increased GFX pool size from 512kB to 4MB
    increased main memory pool size from ~11MB to 32MB
2022-11-02 19:45:20 -07:00
Isaac0-dev
d806c2d8c2
add HOOK_ON_CHAT_MESSAGE (#220)
includes the message string and the mario state of the player
return false to prevent the message from showing (might be possible to make a chat flter with this?)
2022-10-30 17:34:50 -07:00
PeachyPeach
a8e397047a
CAP color; near/far warning fix (#214)
Added CAP color part; Player's cap no longer uses the SHIRT color
    Added METAL color as an alias of CAP color; Metal characters now uses the CAP color to tint the metal texture (was SHIRT color)
    Fixed the cap inside color (was HAIR color)
    Fixed the near/far warning
2022-10-30 17:30:40 -07:00
Sunk
97090abf28
Added HOOK_ALLOW_HAZARD_SURFACE and various fixes (#209)
* Fixed naming from ceil to cell

* Added HOOK_ON_QUICKSAND

* Modified hook and removed weird newlines

* Renamed hook and increased usage

HOOK_ALLOW_QUICKSAND -> HOOK_ALLOW_HAZARD_SURFACE
Now also works on lavaboost.
Suggestion by Agent X. May add this hook to the death barrier check.

* Autogen

* Fixed downwarping to quicksand upon popping

As a side effect though, Mario will no longer snap to the floor upon being popped.
2022-10-30 17:25:56 -07:00
Agent X
90dd2e47c5
Why weren't star door models exposed to Lua? (#217) 2022-10-25 13:28:02 -07:00
Isaac0-dev
89afa8181e
just a few more improvements (#207)
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
2022-10-18 15:34:46 -07:00
wRadion
e4e9c02d51
Added warp_to_warpnode function (#157)
* Added warp to warp node function

* Added generated docs

* Restored Makefile (will put in other branch)
2022-09-30 20:02:34 -07:00
MysterD
36270e4301 Reran autogen 2022-09-26 19:30:09 -07:00
Agent X
4b84a87c6f
Mod storage, network_discord_id_from_local_index and other small changes (#200)
* Mod storage & network_discord_id_from_local_index

Introducing mod storage, a key/value system for saving things like high scores or settings or anything like that to AppData\Roaming\sm64ex-coop\sav\mod-name.sav (Windows example)
You can currently save only strings meaning if you want to save a number you'd need to do
mod_storage_save("score", tostring(score))
and then
score = tonumber(mod_storage_load("score"))
To handle types like that.
network_discord_id_from_local_index() returns the discord ID of a player by local index.
Some misc changes I made were removing the unsed ini.h include in save_file.c and making the autogen converters output LF line endings instead of CRLF on windows.

* Prevent getting id if using direct connect

* Update djui_panel_player.c

Why does this bother me?

Co-authored-by: djoslin0 <djoslin0@users.noreply.github.com>
2022-09-26 19:28:26 -07:00
Emerald Lockdown
8e9b2c270c
save_file_erase_current_backup_save and more (#189) 2022-09-26 19:14:53 -07:00
Agent X
6c0757c908
Color type and palette/color functions (#199)
Added a Color type (typedef u8 Color[3])
Added network_player_color_to_palette and network_player_palette_to_color
Reran autogen
2022-09-26 19:11:51 -07:00
Agent X
1241c56ed9
Expose level_trigger_warp and related constants (#197) 2022-09-19 19:51:27 -07:00
Emerald Lockdown
ade3e7b887
Remove save_file_erase function (#195) 2022-09-19 19:33:43 -07:00
Agent X
f726fb5d74
HOOK_ON_SCREEN_TRANSITION (#192) 2022-09-18 17:30:29 -07:00
Isaac0-dev
c7bdeef8d5
multiple improvements (#176) 2022-09-12 20:00:51 -07:00
Emerald Lockdown
a864e2d3ba
Add network_is_moderator (#180) 2022-09-12 19:58:58 -07:00
Sunk
ffc06db874
Unhardcoded floor and ceiling limits (#179)
* Unhardcoded ceiling and floor limits

* Revert "Unhardcoded ceiling and floor limits"

* Revert "Revert "Unhardcoded ceiling and floor limits""

This reverts commit 71b2da4c4b898cda73f211620d138b346370d2ce.

* Let's try that again
2022-09-12 19:58:01 -07:00
wRadion
94d5dfcf10
Scrolling textures (continued) (#175)
* Handle scroll targets as dynamic array + some error handling

* Remove the need to call init (clean automatically scroll targets)

* Free iteratively instead of recursive

* Added comments + handled some potential errors

* Completed comments

* Remove debug print
2022-09-12 19:57:28 -07:00
Agent X
a1953afd1c
SURFACE_RAYCAST (#177)
* SURFACE_RAYCAST

* Exclude from camera collision
2022-09-12 19:56:24 -07:00
MysterD
ab5d78ed7e Re-ran autogen 2022-08-25 17:49:45 -07:00
wRadion
44bbd23f83
Handle RM_Scroll_Texture and editor_Scroll_Texture behaviors from RM2C hacks (#173) 2022-08-25 17:46:33 -07:00
Agent X
cbc78025f3
is_transition_playing() (#171)
Can be useful for people making HUD mods or anything like that.
2022-08-25 17:42:30 -07:00
Agent X
215a8402bf
Add character head glyphs to gTextures (#167) 2022-08-25 17:38:34 -07:00
Emerald Lockdown
748b7e9134
Added warp_to_start_level function (#154)
* Added `warp_to_start_level` function

* Fix include things
2022-08-25 17:27:05 -07:00
Isaac0-dev
d4417171e4
Improvements (#151)
More lives fixes, death loop fix, add a null check and add get_dialog_id()
add a way to disable rom hack cam collisions
expose more sound management functions
2022-08-25 17:25:54 -07:00
Agent X
9d0a61450b
gsDPSetTextureFilter, refactoring and o.header.gfx.skipInViewCheck (#147)
* Add gsDPSetTextureFilter to DynOS symbols

* Refactor code and fix 2 year oversight

Refactored the main menu background code, now uses vec3f_set instead of manually setting every vector

Also finally fixed the bug where you load in with only 3 lives, this has been in coop for 2 years now and was likely made as a test for syncing live count and was never reversed.

* add skipInViewCheck to GraphNodeObject

* Remove idle set

Co-authored-by: djoslin0 <djoslin0@users.noreply.github.com>
2022-08-11 01:23:54 -07:00
Emerald Lockdown
93bdbf81c3
Expose save star flag (#139)
* added save_file_set_star_flags and save_reload
2022-08-07 20:53:42 -07:00
Emerald Lockdown
670acc638e
Exposed save_file_erase and save_file_reload to lua (#137) 2022-08-07 20:52:51 -07:00