Commit Graph

5804 Commits

Author SHA1 Message Date
toaster f0fd9f7656 Ok, now the MobjThinker Lua hook is neutralised properly as well. 2019-08-01 11:35:04 +01:00
Steel Titanium e2cd85d4da
I dunno how that got here 2019-07-31 20:57:08 -04:00
Steel Titanium 3177b27a11
Changes
Kill off the hack
2019-07-31 20:51:55 -04:00
toaster 7cb02985f4 * Added boss enable linedef (type 449).
- Frontside x offset = boss ID (determined via parameter for all bosses)
	- Noclimb flag = disable mode
	- Bosses don't do a fuckin' THING - no state updates, no player searches, no sounds, no lua, no nothin' - and it's all totally netsynced.
	- The only thing they WILL do is flash infinitely if you hurt them, but this is designed for stuff where you're not meant to be in the same room as the boss til it's activated.
	- All bosses of all IDs are automatically enabled on mapload, then if an enable mode version of this linedef is present in the map for a specific boss id, that boss id is automatically disabled.
* Add multi-boss support via parameter for:
	- All bosses' MT_BOSSFLYPOINT search
	- Boss 5's waypoint search
	- Oldbrak's waypoint search (this one's for you, jood)
2019-07-31 23:17:17 +01:00
Steel Titanium d6dacaaab2
ALL CAPS
Woops forgot to do this
2019-07-31 00:49:14 -04:00
Steel Titanium 58b56b2867
New ring sparkles 2019-07-31 00:47:42 -04:00
toaster 2ae07bdf3b Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into bustables_misc
# Conflicts:
#	src/p_user.c
2019-07-30 18:14:52 +01:00
toaster 7bff305672 * Strip the word "function" from INLEVEL error messages, since they're now shared between access and function cases.
* Move it into lua_script.h, so it's available to everything that needs it.
2019-07-30 17:57:57 +01:00
toaster 69e573517f Fix lua scripts erroring on the title screen because they're run there but it's not counted as GS_LEVEL (aka #168). 2019-07-30 17:48:13 +01:00
toaster d541bb7ead * Fix something I neglected earlier when fixing Ghosts and Replays for 2.2 - the fact that the player's skin will change if they don't have NiGHTS sprites like Sonic does not being accomodated. 2019-07-30 17:24:21 +01:00
toaster 18e43a5cef * Fix "exitlevel" being counted as a special stage success despite not giving you an emerald by inverting stagefailed's default value, since there's only a limited number of ways you can WIN at a special stage.
* Correct a potential source of desync in P_GiveEmerald.
2019-07-30 16:44:40 +01:00
Alam Ed Arias b77780e1e7 Fix building with MSVC 2019-07-29 19:02:45 -04:00
Alam Ed Arias e50dc7c779 Merge branch 'public_next' into private 2019-07-29 18:31:01 -04:00
Alam Ed Arias 963d2f5da3 Merge branch 'master' into next 2019-07-29 18:05:33 -04:00
Alam Ed Arias 66f84efd02 SDL2: fixed compiling mixer interface with MSVC 2019-07-29 17:56:35 -04:00
toaster f141220e82 Added escape pod. Okay, now I'm truly done with this branch. https://cdn.discordapp.com/attachments/249925765423038464/605506507345362964/srb20033.gif 2019-07-29 22:13:24 +01:00
toaster deaee586ed Make MANIASPHERES' #define'd away stuff also recreatable with SOC, since I want to release it publically if the team don't want it. 2019-07-29 21:06:17 +01:00
toaster a6a3048c8f * Fix diagonal spring ring assortments being forced up/down with slopes. 2019-07-29 21:03:28 +01:00
toaster 62c708e64a Two one liners related to angles, so doin' em in a single branch.
* If a spring has vertical speed AND horizontal speed, always set the player's angle when touching it.
* If you have less than 32 rings and spill them, they now get launched away from the player's motion, rather than in the direction of the camera.
2019-07-29 20:29:02 +01:00
toaster 47554b57e4 * Made the evaluation screen even more attractive.
* Fixed an unused variable warning in lua_skinlib.c.
- fixed post-level cutscenes playing when you get game over in MP (still kinda on-topic)
Also with apologies to MI:
- golden egg statue mode for tutorial, since the grey doesn't contrast enough with the blue and lime green
- fixed closed captions for replaced player sounds being incorrect
- fixed closed captions overlapping tutorial text
2019-07-29 14:55:36 +01:00
toaster 5dc095a47d Further improvements on MI's request, just to be safe. 2019-07-28 22:53:27 +01:00
toaster 1d799630af Made it possible to just call `EV_CrumbleChain(rover)` in Lua 2019-07-28 22:45:20 +01:00
Monster Iestyn 18e2c2461f Merge branch 'wavingflag' into 'master'
New CEZ scenery

See merge request STJr/SRB2Internal!257
2019-07-28 15:44:00 -04:00
toaster 384533165c * Fix crash error in GL.
* Re-enable the perplayer stuff in V_DrawFadeFill - not worth having it disabled when it'll just have to be re-enabled later.
* Remove some "consistency with software" stuff in hw_draw.c that already has equivalents
2019-07-28 17:47:57 +01:00
toaster f47c3f40d1 Smoothen emerald rotation a tad. (Not gonna upload a new test exe, it's basically identical...) 2019-07-28 14:59:42 +01:00
toaster bebaf6f984 * Add comments for maintenence.
* Fix not-guaranteed-to-be-set-to-zero-ness of sparklloop
* Add blackrock sparkles to good ending.
* Don't have emerald sparkles be randomised.
* Adjust credits to include Sal (credits sprites + four merged internal MRs and a bunch of public ones) and a few other known contributors, plus remove oni's name (he requested i do it a whiiile ago)
2019-07-28 11:40:19 +01:00
toaster 7569e0b184 Good morning, fix three little things.
* Made the black rock animate backwards through its anim again, to match the 2.1 and earlier intro.
* Rid branch of mixed code declaration warnings.
* Other cleanup.
2019-07-28 10:41:00 +01:00
toaster 063e350c63 A good and bad ending cutscene now exist.
Also:
* SPR2_XTRA - instead of defining lumpnames in S_SKIN, those kinds of assets can just be bundled into the spriteset. Required for ending cutscene stuff, I guess, but also done for HUD life icon and character select image (aside from Sonic&Tails, still SOC'd in).
* Minor oversights in SPR2 support corrected.
* Better evaluation, featuring ending assets.
* Intro has warping-in blackrock, reusing ending assets.
* Cutscene text now supports lowercase (intro and custom).
* Disable the asset-fucking "gamma correction" I put in over two years ago when implementing colour cube. (This is the only thing I could move into another branch if you MUST, but it's basically invisble in the diff so w/e.)
* Don't blank the screen if the top left pixel of a screen-covering patch is transparent. (Checked via nonzero topdelta for first column)

Bugs:
* OPENGL ONLY: The first ~20 frames of both endings are fucked. A little help here? Might be HWR_DrawFadeFill's fault, which I just created. OR it could be in f_finale, but I doubt it, since it doesn't appear in Software.
2019-07-28 00:32:57 +01:00
Steel Titanium 39f348f853 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into linedef-award-rings 2019-07-24 21:18:45 -04:00
Steel Titanium 60ffef9830 More simplified code
Also delay is in tics, per MS' request.
2019-07-24 21:18:07 -04:00
Alam Ed Arias f67f9405bc Merge remote-tracking branch 'origin/master' into flats-png 2019-07-24 19:07:36 -04:00
Alam Ed Arias 0eb6b24415 Merge commit '45922f80d1e35aadc9da6e20fa32fa78c1044dfd' into flats-png 2019-07-24 18:17:01 -04:00
Steel Titanium 2075b525a9 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into musicplus-sdlmixerx 2019-07-22 22:22:12 -04:00
Steel Titanium c35afa2c96 Merge branch 'master' into musicplus-sdlmixerx 2019-07-22 22:20:08 -04:00
Steel Titanium af959ee309 Some fixup 2019-07-22 22:01:05 -04:00
Monster Iestyn cb278388f0 Merge branch 'recordattack-bg-fixes' into 'master'
Record Attack bg fixes

See merge request STJr/SRB2Internal!259
2019-07-20 11:33:06 -04:00
Monster Iestyn 0f8c046c6f On second thoughts I'll go back to 8 for length in these variables, since as far as I can tell the code doesn't need it to be longer anyway 2019-07-20 16:30:30 +01:00
Steel Titanium 6c2ef839c1 New award rings linedef executor 2019-07-18 22:42:46 -04:00
toaster 64517a1362 Fix !150, too 2019-07-18 00:16:01 +01:00
toaster 1d5e8e249e Successfully cause landing events when the ground moves up to hit you, as opposed to just when you move down to the ground. 2019-07-17 23:25:49 +01:00
toaster 82acf2de6b Fix Knuckles-in-quicksand messup. 2019-07-17 23:24:44 +01:00
toasterbabe 385d34e67e * Make busting a FOF through any in-game means (or not providing a target sector to EV_CrumbleChain) bust all FOFs with the same control sector.
* Make CA2_GUNSLINGER not get overridden by being in quicksand.
2019-07-17 21:34:04 +01:00
toaster 438c4d1d51 Fix spindash being broken in quicksand
# Conflicts:
#	src/p_mobj.c
#	src/p_user.c
2019-07-17 21:33:18 +01:00
Monster Iestyn c8cfc3110f Merge branch 'public_next' 2019-07-16 18:28:49 +01:00
Monster Iestyn 6eaf7625a9 Merge branch 'master' into next 2019-07-16 18:26:46 +01:00
Monster Iestyn e50147f7f0 Merge branch 'master' into recordattack-bg-fixes 2019-07-16 17:04:42 +01:00
James R 91502f1499 Don't send login final hashes to everyone
Someone thought it was a good fucking idea to make logins NetXCmds. NetXCmds
are sent to everyone however. Thankfully logins are two passes. And the second
pass uses a salt based on the playernum. Therefore, in order to actually make
use of the final hash, you'd have to be the same playernum as who originally
sent it. Still a stupid exploit.

P.S. The netcode is LOL XD by VincyTM -Telos
2019-07-15 16:14:00 -07:00
Monster Iestyn 5ef4dda9b9 Instead of ignoring blank menutypes in M_IterateMenuTree, ignore them in the MIT_ functions instead.
(I'm doing this because MIT_GetMenuAtLevel appears to actually care about whether menutype is zero or not unlike the others; I don't want to break the code designed around that)
2019-07-15 20:25:57 +01:00
Monster Iestyn d44a8ab78e Slightly unrelated tweak: bghide && titlemapinaction clearly takes precedence over bgname if both are present, so reorder these if statement blocks 2019-07-14 22:36:14 +01:00
Monster Iestyn a1e6f5bdb3 remove some of the GS_TIMEATTACK hacks I added because I now realise I can just turn titlemapinaction off when entering the menus \o/ 2019-07-14 22:28:19 +01:00
Monster Iestyn f6842a80b4 Fixes for menus:
* add gamestate != GS_TIMEATTACK checks to prevent Record Attack or NiGHTS Mode losing their backgrounds
* increase bgname to 9 to include the extra NULL byte? (is this a good idea actually)
* make M_IterateMenuTree ignore menu levels without a menutype value
2019-07-14 21:58:48 +01:00
Steel Titanium 4e839596a1
Fix crash with GME sounds when being freed 2019-07-14 14:55:04 -04:00
Monster Iestyn fac6de9c2e The titlemap glitches turned out to be linked to deathmatchstarts, which wasn't actually properly cleared out each level load ...let's actually fix that, lol.
(Neither were the CTF starts but those didn't directly cause any problems luckily)
2019-07-14 18:10:03 +01:00
sphere 79cf8eb08d Add a blue variant of the pole banner & change some doomednums. 2019-07-14 17:30:33 +02:00
Monster Iestyn 5c54022a89 Add static keyword to these variables for correctness 2019-07-14 16:23:01 +01:00
Monster Iestyn 794235a848 Fix mixed code-and-declaration error 2019-07-14 16:19:48 +01:00
Monster Iestyn 6cf82fbb43 Merge branch 'libopenmpt-fixes' into 'master'
Improved libopenmpt loading

See merge request STJr/SRB2Internal!251
2019-07-14 11:03:14 -04:00
MascaraSnake ca7de207d4 Merge branch 'wallspike-fix' into 'master'
Fix wall spikes that start retracted

See merge request STJr/SRB2Internal!255
2019-07-14 10:55:10 -04:00
Monster Iestyn d30af084d7 Merge branch 'thinkerlists-fix' into 'master'
Thinkerlists fix

Closes #161

See merge request STJr/SRB2Internal!253
2019-07-14 10:52:56 -04:00
sphere ee937c4df0 Add a blue variant of the waving flags. 2019-07-14 16:50:45 +02:00
sphere cfc56c9541 Don't upscale the waving flags, make them twice as large instead 2019-07-14 15:30:00 +02:00
toaster b3e953c8c3 Correct some extant fuckups. 2019-07-14 14:21:32 +01:00
sphere 911b0262ee Whoops, forgot to revert this. 2019-07-14 02:31:33 +02:00
sphere 9c73424b4b Add spring flags: float for horizontal & no gravity for diagonal. 2019-07-14 02:17:44 +02:00
sphere 106f6498e2 Add meleestate to MT_WALLSPIKE. 2019-07-14 01:29:36 +02:00
sphere e68e510ca2 Assign sound to the wood debris object. 2019-07-13 23:15:56 +02:00
toaster 323d5d61d3 Correct some more minor issues with hw_light.c and the ALAM_LIGHTING. (Hi Alam! ^u^) 2019-07-13 14:07:40 +01:00
toaster 47f138ac34 I know this isn't my branch, but found several reference haemmoragers and figured it'd be appropriate to commit here. 2019-07-13 13:43:22 +01:00
Jonas Sauer 166f1fac66 Fixed the thinkerlist issues by removing THINK_LIMBO. Delay-removed thinkers now stay in their list.
Also includes toaster's assorted fixes and improvements from target_painted_on_your_ass.
2019-07-13 01:42:03 +02:00
Monster Iestyn 35adf2ce4a fix leftshift of negative value MascaraSnake also gets 2019-07-09 21:48:18 +01:00
Monster Iestyn f62087ef30 Fix MascaraSnake's issues with sign-compare (hopefully) 2019-07-09 21:43:38 +01:00
Monster Iestyn 63d337211e Merge branch 'eggcolosseum' into 'master'
Egg Colosseum (CEZ3 remaster)

See merge request STJr/SRB2Internal!248
2019-07-09 16:32:24 -04:00
Monster Iestyn 11a24b88ee Merge branch 'seaegg_tweaks' into 'master'
Sea Egg

See merge request STJr/SRB2Internal!244
2019-07-09 16:25:07 -04:00
Monster Iestyn dc71e297bb Fixed mixed-code-and-declaration, shadowed variables, etc ...and the compiler doesn't like P_AddEachTimeThinker being inline anymore for some reason, oh well 2019-07-09 21:15:12 +01:00
Steel Titanium 60cb2de6a0
Seperate declarations from code 2019-07-09 15:51:11 -04:00
Steel Titanium c1c6656b54
Merge branch 'master' into libopenmpt-fixes 2019-07-09 15:44:58 -04:00
Steel Titanium 848061d517
Fix compiling on Linux 2019-07-09 15:42:14 -04:00
toaster 2df90888bb Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into eggcolosseum
# Conflicts:
#	src/p_mobj.c
#	src/sounds.c
#	src/sounds.h
2019-07-09 19:52:52 +01:00
Monster Iestyn 3e305c0993 Merge branch 'toast_cleanup' into 'master'
PITY IN PINK and everything associated (formerly toast_fixes)

See merge request STJr/SRB2Internal!232
2019-07-09 14:31:25 -04:00
Monster Iestyn ef984eb336 Merge branch 'metalfixes' into 'toast_cleanup'
Metal Sonic Boss fixes (again)

See merge request STJr/SRB2Internal!245
2019-07-09 14:29:42 -04:00
Monster Iestyn c1bea02f03 Merge branch 'rainfixesmkII' into 'master'
Accidentially broke rain in the rainfixes branch (oh, the irony!)

See merge request STJr/SRB2Internal!249
2019-07-09 14:24:14 -04:00
MascaraSnake 574cf2609f Merge branch 'remove-character-flags' into 'master'
Remove character flags

Closes #27

See merge request STJr/SRB2Internal!246
2019-07-09 14:18:27 -04:00
Steel Titanium 21c6836fe0 Some few comments 2019-07-09 00:56:22 -04:00
Steel Titanium e112856265 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into libopenmpt-fixes 2019-07-09 00:17:27 -04:00
Steel Titanium 9c2c81ba4e Merge branch 'master' into libopenmpt-fixes 2019-07-08 23:37:56 -04:00
Monster Iestyn b571be865b Merge branch 'sound-menu-fix' into 'master'
Sound options menu fixes

Closes #160

See merge request STJr/SRB2Internal!250
2019-07-08 19:42:47 -04:00
MascaraSnake d3d24bc0bd Removed the "disable" linedef effect, since it's useless now that the character flags are gone 2019-07-08 22:58:31 +02:00
MascaraSnake 5b741d8232 Simplified checks for ML_NETONLY and ML_NONET 2019-07-08 22:56:00 +02:00
Monster Iestyn 4da108748b Use M_SetupNextMenu to actually set up the Sound Options menu "properly" instead of the old hacks.
If you wanted the game to reset the item selected to the top option like before though, I left a line commented out that would do that for you. Unlike the old item = 0 way, it would automatically be corrected for headers and other spaces (thus kind of future-proofing this code)
2019-07-08 21:17:40 +01:00
toaster 98b6280d03 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into toast_cleanup
# Conflicts:
#	src/p_mobj.c
2019-07-08 13:53:31 +01:00
toaster 1f15209eb5 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into seaegg_tweaks
# Conflicts:
#	src/p_enemy.c
#	src/p_mobj.c
2019-07-08 13:52:11 +01:00
toaster a65925aeca Realised I accidentially broke rain in the rainfixes branch (oh, the irony!), realised it needed a few additional P_RecalcPrecipInSector calls to properly work with the new arena, and increased its speed.
If you must, I can cherrypick this into another branch - but it's required for this one, at least.
2019-07-08 13:39:21 +01:00
toaster 5e0d18be2d Before I forget... 2019-07-08 13:36:02 +01:00
toaster 867f7ecfca ha ha ha how can i possibly describe this commit
Just wait for the MR, it won't be far behind.
2019-07-08 13:26:40 +01:00
Steel Titanium d2adb5e829 Update info.h
Also add a case for MT_BRICKDEBRIS to P_MobjThinker
2019-07-06 18:11:49 -04:00
Steel Titanium ef05d81a4c Change this, not that it really matters but 2019-07-06 00:39:36 -04:00
Steel Titanium ec8f64100e Hardcode brick debris 2019-07-06 00:36:02 -04:00
toaster 5baaba1d9e Realised I accidentially broke rain in the rainfixes branch (oh, the irony!), realised it needed a few additional P_RecalcPrecipInSector calls to properly work with the new arena, and increased its speed.
If you must, I can cherrypick this into another branch - but it's required for this one, at least.
2019-07-04 14:44:09 +01:00
toaster b78fac66c4 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into eggcolosseum 2019-07-04 14:09:56 +01:00
toaster 3efb49487e Pre-pinch behaviour complete - heavily reliant on a new map, which I won't be sharing until everything is ready.
Just making this commit now so I can merge in master...
2019-07-04 14:09:38 +01:00
MascaraSnake a5074a846b Implemented a skin-based linedef executor trigger 2019-07-03 09:19:29 +02:00
toaster 4ad1703ae3 Revert "Revert "Merge branch 'metalfixes' into 'toast_cleanup'""
This reverts commit c04b560e92.
2019-07-03 00:58:02 +01:00
MascaraSnake c04b560e92 Revert "Merge branch 'metalfixes' into 'toast_cleanup'"
This reverts merge request !239
2019-07-02 23:49:10 +00:00
MascaraSnake 5cec737985 Remove character-specific flags, replace them with net-only/no-net flags 2019-07-03 00:10:22 +02:00
MascaraSnake e9978b2955 Merge branch 'master' into thinkerlists
# Conflicts:
#	src/f_finale.c
#	src/p_enemy.c
2019-07-02 23:08:37 +02:00
toaster a3f758f34f Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into seaegg_tweaks
# Conflicts:
#	src/p_mobj.c
2019-07-02 14:19:36 +01:00
Monster Iestyn 726b0f6c83 correctly use P_UnsetThingPosition, P_SetThingPosition + P_DelSeclist around MF_NOBLOCKMAP addition in the TNT explosion code 2019-06-30 22:22:12 +01:00
Monster Iestyn 658a3f2eea comment out unused variable 2019-06-30 19:33:41 +01:00
toaster f9f92abc44 ha ha ha ha ha ha ha ha
Sea Egg is majorly changed according to Mystic's ancient instructions (excepting the flying FOF rock, I cared not for fucking around with FOFs).

Specifically:
* Faster paced fight.
* Instantly travels horizontal distance.
* Fakes no longer hurt papa, and spin out like a deflating balloon when he dies.
* New attack: When surfacing, produces an electric shockwave. Replaces underwater shock. Designed for new, shallow arena.
* Support for multiple bosses in the same map distinguished by parameter.

Will upload map to fight the new battle in on the MR.
2019-06-30 15:37:33 +01:00
Steel Titanium 164e797670 Better loading code for modules 2019-06-29 20:35:31 -04:00
mazmazz 2c9170fa95 Merge remote-tracking branch 'origin/master' into musicplus-sdlmixerx 2019-06-29 19:41:06 -04:00
mazmazz 5b0f7d2850 Merge branch 'master' into musicplus-sdlmixerx 2019-06-29 19:31:01 -04:00
mazmazz 0c96c5404c 2.2 jingle name fixes 2019-06-29 18:44:45 -04:00
mazmazz 923dc34215 Merge branch 'public-notpublic-musicplus-jingle' into internal-musicplus-jingle 2019-06-29 18:33:45 -04:00
mazmazz 6244489fd0 Merge branch 'public-musicplus-jingle' into public-notpublic-musicplus-jingle 2019-06-29 18:10:44 -04:00
Monster Iestyn 9913cc39a1 Merge branch 'public_next'
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
#	src/p_user.c
#	src/r_data.c
2019-06-29 20:55:58 +01:00
MascaraSnake e5a0bd8be3 Merge branch 'wooddebris-fix' into 'master'
Wood debris fix

See merge request STJr/SRB2Internal!240
2019-06-29 03:21:15 -04:00
Jaime Passos afa6afa593 something something memory leaks 2019-06-28 19:43:37 -03:00
Monster Iestyn 3a9ce483f5 Merge branch 'master' into next
# Conflicts:
#	src/r_data.c
2019-06-28 23:24:36 +01:00
Steel Titanium 2c906e9c29 Merge branch 'jimita-unfuck-awayview' into 'next'
unfuck awayview

See merge request STJr/SRB2!493
2019-06-28 18:21:52 -04:00
Steel Titanium 47eb711097 Merge branch 'public-musicplus-feature-endoflevel' into 'next'
Fade out music at end of level, before intermission

See merge request STJr/SRB2!472
2019-06-28 18:21:07 -04:00
MascaraSnake 836d3d3186 Fixed Canarivore gas going through the floor 2019-06-29 00:19:46 +02:00
Monster Iestyn 3e404051c9 Merge branch 'console-colors-touchup' into 'master'
Console color shenanigans

Closes #156

See merge request STJr/SRB2Internal!238
2019-06-28 18:16:12 -04:00
Monster Iestyn e2859aab5d Merge branch 'titlemap-fix' into 'master'
Fix Titlemap with mazmazz's fancy menu stuff

See merge request STJr/SRB2Internal!228
2019-06-28 18:15:46 -04:00
Monster Iestyn 88dc34818e Give MT_WOODDEBRIS the MF_SCENERY flag, so it can be made to join its MT_ROCKCRUMBLEn friends in dying after hitting the ground.
(Untested)
2019-06-28 21:40:20 +01:00
toaster faebe0f9af Metal Sonic fixes!
* Add more context clues to his fight, including an indicator for which laser attack is being used after chargeup.
* Make missiles able to vectorise him.
* Add another laser orb attack - vertical slice - and change the laser orb sequence to accurately reflect that horizontal is the hardest of the ones in 2.1.
* Optimise TC_BLINK, and fix an issue with TC_ALLWHITE that somehow avoided coming up in testing.
* Fix colorized bosses losing their colorization when flashing, by forcing TC_ALLWHITE.
2019-06-28 20:48:14 +01:00
Steel Titanium 251494c3c8 Fix console back color not being correct.
This also adds support for using such colors in a text prompt
2019-06-26 22:08:17 -04:00
toaster 8f6973cb51 Now it's CA_TWINSPIN's turn to get the improvements!
* Remove PF_THOKKED every time a successful damage bounce occours.
* When this happens, spawn a number of particles based on thokitem at half scale! (Optimised, again, for MT_LHRT.)
* Also spawn these particles when a successful spring boost occours, as well as playing a twisted spring sound.

Also, some other related tweaks:

* Optimisations to A_VultureBlast, which was used as a base for the particle creation.
* Make the Metal Sonic boss use P_PlayerCanDamage instead of a custom, somewhat broken player damage detection mechanism.
* P_SpawnGhostMobj takes colorized into account.
* Fold Tails propeller damage into P_PlayerCanDamage.
* When performing an Attraction Blast, place the player in roll frames.
* Update all conditions preventing SH_PINK to incorporate thokitem and spinitem as well.
* Buff MT_LHRT travel distance at slow speeds.
2019-06-26 23:26:05 +01:00
toaster d5988c4f8c Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into toast_cleanup
# Conflicts:
#	src/p_mobj.c
2019-06-26 20:43:37 +01:00
Monster Iestyn e63e36f5e4 Merge branch 'levelselect-tweaks' into 'master'
Some small tweaks to level select

See merge request STJr/SRB2Internal!230
2019-06-25 16:50:44 -04:00
Monster Iestyn ac669d77c4 Merge branch 'levelheader-startrings' into 'master'
Startrings level header option

Closes #155

See merge request STJr/SRB2Internal!237
2019-06-25 16:43:16 -04:00
Monster Iestyn 8aeee22529 Merge branch 'bossfixes' into 'master'
Boss fixes

See merge request STJr/SRB2Internal!235
2019-06-25 16:36:23 -04:00
Jaime Passos 8362710e50 Merge remote-tracking branch 'origin/flats' into flats-png 2019-06-25 16:04:24 -03:00
Jaime Passos 28566008b4 Merge remote-tracking branch 'upstream/master' into flats-png 2019-06-25 16:02:35 -03:00
Jaime Passos 5047f4e7f0 Fix slope flat offsets 2019-06-25 14:58:34 -03:00
Jaime Passos 0af9e865f9 Delete R_CropFlat 2019-06-25 14:41:07 -03:00
Jaime Passos 02c3710211 hHA 2019-06-25 14:40:00 -03:00
Jaime Passos a39c52708c Merge remote-tracking branch 'upstream/master' into flats 2019-06-25 12:56:03 -03:00
Monster Iestyn 88f7ff06d8 Merge branch 'HUDfixes' into 'master'
HUD fixes

See merge request STJr/SRB2Internal!234
2019-06-24 17:47:44 -04:00
Steel Titanium 8026fe0d4b Some few changes.
The amount of rings you start with also applies when you respawn from a starpost.

Startrings counts the ring total requirement for a perfect bonus.
2019-06-24 16:21:03 -04:00
Nev3r 14a1af9396 Merge branch 'rainfixes' into 'master'
Rain fixes and associated

See merge request STJr/SRB2Internal!233
2019-06-24 15:07:35 -04:00
Steel Titanium a801efa946 Forgot to do this. 2019-06-23 18:51:42 -04:00
Steel Titanium 2e200a784c Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into levelheader-startrings 2019-06-23 18:24:15 -04:00
Steel Titanium 7a23b19be8 Add startrings level header option 2019-06-23 18:15:40 -04:00
Monster Iestyn f8087565b7 Merge branch 'drawanglefixes' into 'master'
Drawangle fixes

Closes #153

See merge request STJr/SRB2Internal!236
2019-06-23 17:33:40 -04:00
Monster Iestyn 826e8e1aaf Fixed goofups I missed back 3 months ago 2019-06-23 17:51:58 +01:00
Monster Iestyn d9ca8b45d3 Saving work so far, UNTESTED
# Conflicts:
#	src/r_data.c
2019-06-23 17:51:36 +01:00
Sryder 8a778a4070 Simply truncate the per-map COLORMAP lump instead of not reading it at all.
Keep the warning though.
2019-06-23 15:02:32 +01:00
Sryder 5f339fc2a9 Don't overlap strncpy in WAD file load 2019-06-23 14:52:49 +01:00
Sryder bb9b1b3b1f Change COLORMAP lump size check to be exact
A lower size could technically be valid, but could easily run into strange issues.
2019-06-23 13:49:39 +01:00
Sryder bc254d9cf7 Kill Texture SOC feature.
As far as I know it's basically unused, and the strstr is inherently unsafe because there's no guarantee that a patch's contents are NULL terminated.
2019-06-23 13:48:29 +01:00
Sryder 45922f80d1 Don't read from a per-map COLORMAP if it is too big.
Could this be changed to only read the first so many bytes?
2019-06-23 12:47:20 +01:00
Monster Iestyn ce6db1cc9c Merge branch 'public_next' 2019-06-22 22:44:42 +01:00
Monster Iestyn c9456e141d Merge branch 'master' into next 2019-06-22 22:42:13 +01:00
Monster Iestyn 755e4a8b2c Merge branch 'make-credits-great-again' into 'next'
Prevent just anyone from skipping credits but allow admins

See merge request STJr/SRB2!478
2019-06-22 16:13:04 -04:00
toaster 5c54c4f922 Remove some more 2.1-related ringslinger offsets to the chat. 2019-06-22 20:17:09 +01:00
toaster b02c21b818 Remove some more 2.1-related ringslinger offsets to the chat. 2019-06-22 20:15:57 +01:00
toaster 29c4fa306a Realised I forgot to do this. Without this commit, the drawangle update stuff is useless :V 2019-06-22 17:33:37 +01:00
toaster 3e14ab4e03 Realised I forgot to do this. Without this commit, the drawangle update stuff is useless :V 2019-06-22 17:23:04 +01:00
toaster 28a61f2f3c Correct some oversights where drawangle was incorrectly ignored. 2019-06-22 17:07:18 +01:00
toaster 3021116797 Some preliminary work to make multiple bosses in the same map work nicely together, by allowing parameter to alter the linedef executor tag to call in increments of 100.
Also: Making sure every single reserved tag is recorded as an LE_ constant.
2019-06-22 17:03:39 +01:00
toaster c8d145e474 Tweak Boss5MakeItRain's bomb launch angles to properly smash the ceiling in the new arena. 2019-06-22 17:03:28 +01:00
toaster 81882b63b8 As I wanted MI to do but he was too exhausted at the time from hardcoding, make the Fang bullet knockback less hardcoded and instead give it MF2_SUPERFIRE.
# Conflicts:
#	src/p_mobj.c
2019-06-22 17:03:10 +01:00
toaster 64827348c7 HUD stuff.
* Re-fix chat HUD position, and make it not move in match (which it needed to do in 2.1).
* Fix HU_drawPing for the new palette.
* Change the condition for greying out players, since the current one was buggy.
* Allow for tokens on the coop MP HUD, and use the small emeralds so there's space for them.
* Fix the mapping between skincolours and name colours in new chat, specifically to take into account every possible text colour (as opposed to the port previously done, which only used the 2.1 text colours and looked like ass as a result).
2019-06-22 16:54:05 +01:00
toaster e6ce55f7b5 Do some minor HUD fixes.
* Move HUD text's anchoring to underneath STR instead of above Lives.
* Adjust chat position slightly, to take advantage of SRB2's HUD layout having less content towards the bottom (unlike Kart, where it has roughly equal).
* Fix Match emeralds not displaying while in tab rankings with all-seven invuln/shoes bonus active.
2019-06-22 16:53:38 +01:00
toaster 6cf376a9b5 Support backspace for resetting various menu values, just like Kart. 2019-06-22 16:50:46 +01:00
toaster 6371de806b Improve rain/weather.
* Like Kart, remove cv_precipdensity.
* Like Kart, replace "Infinite" draw distance value with "None".
* Better thinker with more return optimisation.
* Better placement of thinking in rendering, to avoid ceiling-mounted sprite glitches.
2019-06-22 16:50:30 +01:00
toaster 02e315a4ee Add HUD icon for Pink shield. (Don't worry, this is my last expected commit in this branch. Gonna cherry pick everything unrelated to the Pink shield into a bunch of other branches now.) 2019-06-22 16:44:32 +01:00
Sryder13 8444379d53 Free the zentries 2019-06-22 00:52:28 +01:00
Sryder13 83da71f809 Merge branch 'master' into pk3_leak 2019-06-22 00:28:14 +01:00
Sryder13 dcd4995eb3 Remember to end inflating 2019-06-22 00:19:34 +01:00
MascaraSnake e20949ef77 Merge branch 'new-acz-minecarts' into 'master'
ACZ hardcoding (including minecarts)

See merge request STJr/SRB2Internal!231
2019-06-21 17:45:03 -04:00
MascaraSnake 287c25b8f9 Forgot to copy something over from the CR_ROPEHANG case 2019-06-21 23:42:48 +02:00
MascaraSnake 4385e07c0b Always use the white sidemark sprite, since track switching is no longer "activated" 2019-06-21 23:40:28 +02:00
MascaraSnake ed7a109ce9 Also back by popular demand: Restricting the camera angle during a minecart ride 2019-06-21 23:34:49 +02:00
Monster Iestyn 149a8bb760 Merge branch 'public_next' 2019-06-21 22:13:39 +01:00
Monster Iestyn f84c898040 Merge branch 'master' into next 2019-06-21 22:10:32 +01:00
Steel Titanium fe7b041346 Merge branch 'public-notpublic-libopenmpt' into 'master'
libopenmpt support

See merge request STJr/SRB2Internal!229
2019-06-21 17:03:53 -04:00
MascaraSnake 28abc883be By popular demand: Track switching only requires strafe instead of jump+strafe 2019-06-21 20:13:30 +02:00
toaster 50e4a65f99 Correct some more oversights of switching to revitem for CA2_MELEE's particles. 2019-06-21 12:51:55 +01:00
toaster d5e91ed8d7 Don't give SH_PINK in Race/Competition. They're your opponents! 2019-06-21 12:35:37 +01:00
toaster 3597b1c485 Make minor adjustments to the CA2_MELEE and CA_TWINSPIN stuff. 2019-06-21 00:43:03 +01:00
toaster f7fe418f7c Slight buff to MT_LHRT. 2019-06-20 23:43:05 +01:00
toaster f182bb867f HUD stuff.
* Re-fix chat HUD position, and make it not move in match (which it needed to do in 2.1).
* Fix HU_drawPing for the new palette.
* Change the condition for greying out players, since the current one was buggy.
* Allow for tokens on the coop MP HUD, and use the small emeralds so there's space for them.
* Fix the mapping between skincolours and name colours in new chat, specifically to take into account every possible text colour (as opposed to the port previously done, which only used the 2.1 text colours and looked like ass as a result).
2019-06-20 22:57:47 +01:00
Monster Iestyn f7a32835d5 Fix warnings/errors found during compiling, mostly of the mixed-declaration-and-code or shadowed variables variety 2019-06-20 20:05:07 +01:00
Monster Iestyn bc2804d383 Fix the clearly accidental duplication of lumpinfo's memory allocation in ResGetLumpsStandalone 2019-06-20 13:24:54 +01:00
toaster eac36e73a3 Correct some oversights where drawangle was incorrectly ignored. 2019-06-20 00:43:55 +01:00
toaster 460632ad3b Some preliminary work to make multiple bosses in the same map work nicely together, by allowing parameter to alter the linedef executor tag to call in increments of 100.
Also: Making sure every single reserved tag is recorded as an LE_ constant.
2019-06-20 00:24:13 +01:00
toaster f9e09ec31f Tweak Boss5MakeItRain's bomb launch angles to properly smash the ceiling in the new arena. 2019-06-19 23:35:18 +01:00
toaster 84ff2a57a1 As I wanted MI to do but he was too exhausted at the time from hardcoding, make the Fang bullet knockback less hardcoded and instead give it MF2_SUPERFIRE. 2019-06-19 23:29:39 +01:00
toaster 2e6898f29e PITY IN PINK!
* Smoothen Pity Shield animation to go with sphere's updates to Nev3r's sprites.
* Added LHRT object, designed to be summoned with CA2_MELEE.
    * Gives a pink Pity Shield (SH_PINK) on same-team player contact.
    * Deals damage to non-player enemies.
    * Harmlessly fades into nothing when touching an enemy player, players with SH_PINK already, and players capable of applying SH_PINK to others (through non-Lua methods).
* Basically, you-know-who is the Healer of the party whenever they're around. Fun consequences for the Co-op and CTF metas.
2019-06-19 23:20:24 +01:00
toaster 6a58ae34d1 In order to make P_PlayerCanDamage more flexible, I ended up bundling the invincibility/super checks into there.
Also, the start of my improvements to CA2_MELEE. Users of that abiliy can only damage enemies/monitors if they touch the front of the player object, but to make up for it, the player is no longer forced away from the direction of the screen at bigger movement speeds.
2019-06-19 13:20:34 +01:00
toaster 3eb9b85fd4 "PlayerCanDamage" hook!
* Takes function(player, mo) input.
* Return TRUE for stating that yes, the player is in a state that can cause contact damage, do with that what you will.
* Return FALSE for stating that no, the player is weak and vulnerable and cannot cause contact damage, do with that what you will.
* Return NIL for allowing the function to continue regular operation.

Fills a different ideological niche than ShouldDamage - that's for determining whether damage dished between two objects should happen, this is for determining which way around damage should be dished when considering a player-object interaction.

Or, in other words, think of it as "ShouldDamage is whether damage that has been requested should be granted, for object-object interaction, while PlayerCanDamage is for whether global player properties should cause damage to enemies and monitors in the first place, like spinning, hammering or stomping."
2019-06-19 12:55:05 +01:00
toaster 28dfeb344b Instead of only performing a hook if the Lua Hook loop determines its type to be the one we want, actively continue through the loop if it's NOT. This optimisation was performed while preparing the following commit; I have generously split them out for less shitty commit-by-commit review. 2019-06-19 12:28:57 +01:00
toaster ef6e00e8a2 P_PlayerCanDamage(player_t*, mobj_t*), ported from the abandoned project_birthday because GOD the code looks awful with those huge monolith conditions in it. Available to Lua.
(Also, minor fixes to lib_pSpawnLockOn, and removing the SH_OP fuckery.)
2019-06-19 12:09:02 +01:00
MascaraSnake d388547021 Some more minecart fixes 2019-06-19 00:10:28 +02:00
toaster b0326b6dec Do some minor HUD fixes.
* Move HUD text's anchoring to underneath STR instead of above Lives.
* Adjust chat position slightly, to take advantage of SRB2's HUD layout having less content towards the bottom (unlike Kart, where it has roughly equal).
* Fix Match emeralds not displaying while in tab rankings with all-seven invuln/shoes bonus active.
2019-06-18 18:51:24 +01:00
MascaraSnake c11a3010d9 Fixed the Canarivore gas slowdown being much too weak 2019-06-18 19:29:53 +02:00
MascaraSnake 3634321f43 ... 2019-06-18 19:06:05 +02:00
toaster 1d65caa250 With permission from Kart Krew (Sal and Sryder specifically - they don't know WHY vanilla's using it):
* Port across the additional colour translation maps, including mobj-level support for "colorized" objects.
* Make Fangboss and both Metal Sonic objects greyscale if, on spawn, there is a player in the game who is not a spectator whose skin is that character.
* Allow bosses with MF_GRENADEBOUNCE to opt out of the MF2_FRET colour-flashing tomfoolery, and give this flag to Fang.
2019-06-18 17:55:57 +01:00