Commit graph

1297 commits

Author SHA1 Message Date
TehRealSalt
b39482d721 Lua port of the capsule visual
No item collision or gameplay at all yet
2019-09-15 04:51:45 -04:00
toaster
41727318ff Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into deathstuff 2019-09-09 15:25:48 +01:00
toaster
1e11fe650f Merge branch 'flippost' into 'master'
Flippost

Closes #206 and #191

See merge request STJr/SRB2Internal!320
2019-09-08 16:24:58 -04:00
toaster
17a2038489 Change flipped starpostz to define the top of the player object, for cases where scale on contact with starpost is different to spawn scale. 2019-09-08 21:21:36 +01:00
toaster
5eb6b408a1 Fade time before Game Over track.
Notably, can no longer use P_PlayJingle because of pre-fade.
2019-09-08 18:00:01 +01:00
toaster
09f7dc1350 * Store gravflip (resolves #206) and destscale in starposts. (Using the same field, taking advantage of the fact that object scale will always be positive!)
* Update the function signature of P_MixUp to accomodate both it and drawangle instead of doing it outside of the function.
* If the player is spawning from the start of the stage and it's from the ceiling, be in fall frames as requested (resolves #191).
2019-09-07 22:12:47 +01:00
toaster
5040f4d7f7 * Allow CA2_GUNSLINGER users to pop monitors with their ability (as long as their weapon type isn't a pre-existing weapon ring).
* Correct the position of a carried player relative to Tails.
2019-09-07 11:33:26 +01:00
toaster
1311542c7f Clean up an ungodly amount of shit relating to abilities.
* Put everything in P_DoJumpStuff, instead of half in that function and half spread across the player thinker.
* Have a proper if else cascade that first tries shield abilities, then super transformation, then random abilities like CA_TELEKINESIS.
* Use this new arrangement to allow CA_TWINSPIN users to use their ability on spin if their secondary ability is CA2_MELEE (resolves #195).
* Random bugfixing. Didn't keep track of what I'd caused while working on this and what was already there, but there was a lot of it.

The only two abilities which have spin-button properties outside of the else block is CA_AIRDRILL and CA_FLY/CA_SWIM (which now also prevents you from swimming down in goowater).
2019-09-06 19:01:46 +01:00
toaster
0700ad229f Lots of death stuff.
* Genesis-style love and attention to the death event.
	* Only visibly decrement lives/rings when you're respawning (or game over, see below).
	* Faster no-button-press respawn.
* Game Over specific love.
	* Animation of Level Title font coming in from the sides.
	* https://cdn.discordapp.com/attachments/428262628893261828/617692325438554132/srb20067.gif
	* Change gameovertics to 10 seconds instead of 15.
	* Make the minimum time before you can force going to the Continue screen longer.
* Accomodate death in MP special stages as a form of exit.
	* Don't have your rings or spheres reset when you die in a special stage, so that the stage isn't softlocked with the new harder limits.
* Fix a bug with CoopLives_OnChange where changing to infinite lives didn't force a game-overed player to respawn.

Also, two not-quite death things which nonetheless were relevant to change:

* Fix quitting a special stage having some of the shared spheres/rings disappear into the aether.
* Fix a warning during compilation for the Ring Penalty print.
2019-09-01 15:55:23 +01:00
toaster
b2d57e6045 Motor's new Eggman sprites, along with some other sweet bits of boss polish. What else can I say? Just play it. 2019-08-30 19:19:54 +01:00
toaster
9aaee61dce Tweak the ACZ3 fight a little, animationwise, since every other non-Brak boss got an upgrade to its death anim in this branch.
Also make its bomb throw anim use all the new sprites.
2019-08-13 19:41:04 +01:00
toaster
534b98251b Revert "Revert "Merge branch 'musicplus-aug2019-b' into 'master'""
This reverts commit a76668f55a.
2019-08-04 12:03:57 +01:00
toaster
a76668f55a Revert "Merge branch 'musicplus-aug2019-b' into 'master'"
This reverts commit 0f89fb123f, reversing
changes made to 8fb211d8cf.
2019-08-04 11:32:55 +01:00
mazmazz
ae05d8c0dd Merge remote-tracking branch 'origin/master' into internal-musicplus-jingle 2019-08-03 23:38:49 -04:00
Monster Iestyn
6456bda2d5 Merge branch 'anglestuff' into 'master'
Spring angles and ring angles

See merge request STJr/SRB2Internal!266
2019-08-02 13:10:23 -04:00
toaster
28e7269cc6 * 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
toaster
cbf73014a5 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
TehRealSalt
a6ef3c12b0 Seperate MF2_DONTDRAW and MF2_SHADOW into it's own varied set of flags -- drawflags.
- Split MF2_DONTDRAW into MFD_DONTDRAWP[1-4], also replaces MFE_DRAWONLYFORP[1-4].
- Split MF2_SHADOW into MFD_FULLBRIGHT and MFD_TRANS80. I also added an entire spectrum of options for transparency & brightness overrides, since I've found myself wishing for stuff like that before.
- Tethering was updated for it's client-sided drawing to apply to splitscreens too.
- Removed cv_transparency.

The transparency overrides don't seem to work yet (obvious on things using MFD_SHADOW), just running out of time to look into it so I'm pushing what I have.
2019-07-17 23:55:39 -04:00
Jonas Sauer
b7c783223a 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
8151360ca7 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
7a8843a295 Merge branch 'seaegg_tweaks' into 'master'
Sea Egg

See merge request STJr/SRB2Internal!244
2019-07-09 16:25:07 -04:00
toaster
3c5cbd5980 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
toaster
e5cdfe998b 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
823ea62e7c 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
0124e248ee 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
MascaraSnake
9f666e125e Merge branch 'master' into thinkerlists
# Conflicts:
#	src/f_finale.c
#	src/p_enemy.c
2019-07-02 23:08:37 +02:00
toaster
6036b67f3d 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
mazmazz
7bbd05e85d Merge branch 'public-notpublic-musicplus-jingle' into internal-musicplus-jingle 2019-06-29 18:33:45 -04:00
mazmazz
53fe455a8f Merge branch 'public-musicplus-jingle' into public-notpublic-musicplus-jingle 2019-06-29 18:10:44 -04:00
Sryder
20f8037351 Respawn at waypoints once first crossing the finish line. 2019-06-29 11:05:35 +01:00
MascaraSnake
851b32bf34 Fixed Canarivore gas going through the floor 2019-06-29 00:19:46 +02:00
toaster
c9c69d805a 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
e5918d629b 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
toaster
7d3e659f1f 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
597119bd8a 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
a8a2a1ed4b Correct some more oversights of switching to revitem for CA2_MELEE's particles. 2019-06-21 12:51:55 +01:00
toaster
9de0c56cdc Don't give SH_PINK in Race/Competition. They're your opponents! 2019-06-21 12:35:37 +01:00
toaster
0647230253 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
514d596055 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
6bcad784a9 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
7eb80f3a66 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
a6fd2275dd 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
3fcf2a19d2 Some more minecart fixes 2019-06-19 00:10:28 +02:00
MascaraSnake
0329b57e43 Fixed the Canarivore gas slowdown being much too weak 2019-06-18 19:29:53 +02:00
Sryder
d96c90acc8 Actually revert the checkpoints properly 2019-06-16 22:43:20 +01:00
Sryder
6bcc283d3b Reimplement system for specials that activate when crossing a linedef from DOOM
Used for the finish line, crossing it the correct way increments the lap count, the wrong way decrements it
Remove usability of the sector special for the finish line
Undo another check of numstarposts to force all of them to need passing to complete the stage
player laps start from 0 now, it goes to lap 1 when you initially cross the start line.
2019-06-16 22:03:57 +01:00
MascaraSnake
f272a29a8d Fixed a bug involving players being thrown out of minecarts 2019-06-16 16:39:06 +02:00
MascaraSnake
f1eebf270d Do death animation even when MF2_DONTDRAW is set 2019-06-15 22:29:30 +02:00
MascaraSnake
70882dc9d8 Don't jump repeatedly when holding jump 2019-06-15 21:58:58 +02:00
MascaraSnake
bfe3deb5d6 Streamlined the minecart death handling 2019-06-15 21:43:36 +02:00