If you don't, the reaction was "WHAT?? Why is he here? This is GREAT but, what??" And while the reaction is on the positive end of things, it's stll clearly not advisable for our defining Big Reveal of the already huge update.
To this end: Here is a mini cutscene! https://cdn.discordapp.com/attachments/428262628893261828/626207624043429898/srb20005.gif
* He's digging through Eggman's trash.
* Clearly doesn't expect to see you!
* Ready for a fight all the same.
* You can attack him during the mini cutscene if you're impatient.
* Skipped if you give him MTF_AMBUSH.
* Requires new assets (including map) to test, but I'm not ready to make a MR yet because I have other thoughts first.
Also, since I was poking around in p_enemy.c, I fixed A_Boss1Laser's issues (not working with direct 2.1 port states and having the weird secondary attack).
Glide speed now starts at whatever speed you were traveling at prior.
If glide speed is below actionspd, the glide accelerates towards it.
When landing from a glide, player now enters a landing animation (SPR2_LAND); they cannot move in this state, but they can jump or start a spindash.
Ground-sliding after a glide can now be cancelled into the landing animation by releasing jump, where the same rules apply.
Climb speed increased x1.33.
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.
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.
* 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.
* 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.
* 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.
This cannot be compiled as-is right now for the following reasons:
* Numerous actions still need to be hardcoded.
* MT_FBOMB uses the TNT barrel explosion (and by extention A_TNTExplode) for its death state. This is a pickle, I'll deal with it when I get to it.
Also missing:
* Fang waypoint object type+states.
* Fang's good looks (to be put in the resource files obviously).
* Fang's brain.
* Default hitbox height is 80
* Drone Thing parameter sets height to multiples of 32
* Player aligns by default to bottom+24 of hitbox (offsetted)
* `MTF_OBJECTSPECIAL` aligns player to hitbox top
* `MTF_EXTRA` aligns to hitbox center
* `MTF_OBJECTSPECIAL|MTF_EXTRA` aligns to real bottom of hitbox
* Goalpost and sparkle Z alignment is changed to reflect configurableness
* New entries: NIGHTSDRONE_MAN, NIGHTSDRONE_SPARKLING
* NIGHTSGOAL renamed to NIGHTSDRONE_GOAL
* MT_NIGHTSDRONE repurposed as an invisble, no-gravity hitbox
* Flames fall with flameholders.
* New modification to teleport cheat: -sp <val> <val> allows instantaneous jump to any starpost in the map, including spawnpoints as starpost index 0!
* Also, -ang <val> and -aim <val>, which can be combined with -nop to pivot on the spot.
* Bomb sphere! Paraloopable hazard. Replaces MT_SPECIALSPIKEBALL.
* Blueberry bushes, both normal and Xmas, from patch.dta.
* BSZ tulips, also from patch.dta!
* Frozen Hillside badniks - Penguinator and Pophat.
* Frozen Hillside ice decoration!
* Fixed some big bugs with the DSZ light beams.
* Made multi-mare special stages work, in a troll way - the Chaos Emerald disappears in a puff of smoke, and the Spinbobert laughter sound plays... >:3c
* Reverted the mobjtype number changes from the source SOC/Lua, which we can do later when doing a final pass of the levels.
* State optimisation.
* Serious cruft-removal of the NiGHTS drone thinker.
* Fix the issues where the player wouldn't curl into jump in waterslides or dropping off rope-hangs.
* Tweak NiGHTS player flashing.
* Add text colour support to the titlecard font.
* Use that to make the PRESS SPIN\nMID-JUMP thing when you get all Chaos Emeralds use the titlecard font for readability.
* Fix the GOT ALL EMERALDS page not lasting the correct, extended amount of time.
* Fix that thing where flying mid-spin didn't enact autobrake.
* Modify graymap a little on Sryder's suggestion.
* [COMPLETELY UNRELATED] fix that thing where the addons menu will fail on files/paths with spaces in [/COMPLETELY UNRELATED]
OLD SPECIAL STAGES:
* Spheres in old special stages instead of rings!
* Individual timers in old special stages instead of a global one!
* Old special stages use a variant of the NiGHTS HUD now!
* Special stage damage in old special stages loses 5 seconds of time instead of 10 rings/spheres!
* All damage gained through old special stages is converted to special stage damage! As a consequence, the special spikeball has no need to be special anymore.
* Made emerald gaining function be based on special stage number rather than gained emeralds!
* Consistency with...
NiGHTS SPECIAL STAGES:
* Spheres now flash in bonus time. https://cdn.discordapp.com/attachments/400761370800422922/452590553100713984/srb20032.gif
* Sphere and ring mapthingnums are now less fucked up in 'em. (Rings are 300, same as usual, while Spheres are now 1706 replacing NiGHTS Wings.)
SPECIAL STAGES IN GENERAL:
* useNightsSS is now dead. Each individual special stage is now assessed for NiGHTS-mode behaviour based on maptol & TOL_NIGHTS.
* CRAWLA HONCHO\n CAN NOW BE\n SUPER CRAWLA HONCHO end tally modification now also includes a mini-tutorial on turning super. https://cdn.discordapp.com/attachments/400761370800422922/452844894113759233/srb20036.gif
* SONIC GOT A CHAOS EMERALD? https://cdn.discordapp.com/attachments/400761370800422922/452623869497573386/srb20034.gif
NiGHTS NON-SPECIAL STAGES:
* Colour Chips and Star Chips! Replaces Spheres and Rings of NiGHTS Special Stages.
* Colour Chips turn yellow in bonus time.
* Ideya!
* Its own "drowning" music!
* All of the object types for Dream Hill.
* GIF: https://cdn.discordapp.com/attachments/400761370800422922/452844894113759233/srb20036.gif
RANDOM BS:
* Turn super with the spin button instead of the jump button!
* Followmobj now correctly set with P_SetTarget instead of pointer assignment.
* Emerald hunt uses new sprites!
* Made unlock noise different from emblem gain noise! (It's the CRAWLA HONCHO CAN NOW TURN yadda yadda sound from S3K now.)
* Better Robo Hood arrows.
* Shield break animation for Egg Guard. (Temporary state slot so I don't have to compile from scratch until I do something more complicated later.)
* Suspicious Facestabber Statue animates a little before bursting open.
* Fix Facestabber radius.
* Fix some stuff in Flicky functions that could be overwritten in Lua call actions by mistake.