Commit Graph

518 Commits

Author SHA1 Message Date
mazmazz 1bc5976534 Correct hitboxradius value; proper sparkle->z when moving x/y 2018-08-13 04:49:32 -04:00
mazmazz ce0b23a576 Set Drone hitbox radius by upmost 4 bits of Angle 2018-08-12 13:34:27 -04:00
mazmazz 8f50fbeb4f For safety, clear MF_SLIDEME and MF_GRENADEBOUNCE flags before using 2018-08-12 09:28:04 -04:00
mazmazz 43b790c26f A_OrbitNights make actor scale to target
* Added `donotrescale` input to disable this behavior
* Reverted previous commit changes for scaling Ideya because unneeded
2018-08-12 01:07:26 -04:00
mazmazz aecabb246d Scale Ideyas when moving to/from NIGHTSDRONE and scaling changes to NIGHTSDRONE 2018-08-11 23:53:07 -04:00
mazmazz 9bc9f96e09 NIGHTSDRONE sync visual elements when changing mobj flags 2018-08-11 23:32:12 -04:00
mazmazz 0c8e1aa10a When NIGHTSDRONE z changes, change DRONEMAN z as well 2018-08-11 23:15:28 -04:00
mazmazz 79c042ca09 NIGHTSDRONE visual element positioning now works with scaling 2018-08-11 22:41:58 -04:00
mazmazz a4e3f8cbcf NIGHTSDRONE visual element position syncing: XYZ and OBJECTFLIP 2018-08-11 21:38:44 -04:00
mazmazz 72b592888f Line fixes for visual element positioning
# Conflicts:
#	src/p_mobj.c
2018-08-11 20:50:53 -04:00
mazmazz 2c4f9d4776 Don't need this line 2018-08-11 15:54:39 -04:00
mazmazz c99258b2e2 Make Drone hitbox height and player Z alignment configurable
* 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
2018-08-11 15:52:42 -04:00
mazmazz d0f0f475ce * Bounce Droneman within hitbox instead of floorz
* Correct Droneman hiding so he always stays within hitbox even when invisible
2018-08-11 02:03:44 -04:00
mazmazz 7c0186bc97 Drone de-coupling implementation
* Visual elements and hitbox work as expected with scaling and OBJECTFLIP
2018-08-10 22:11:48 -04:00
mazmazz e0e77d873b Nights Drone mobj and state entries
* New entries: NIGHTSDRONE_MAN, NIGHTSDRONE_SPARKLING
* NIGHTSGOAL renamed to NIGHTSDRONE_GOAL
* MT_NIGHTSDRONE repurposed as an invisble, no-gravity hitbox
2018-08-10 18:24:31 -04:00
mazmazz e0f6dee8be MT_FLINGBLUESPHERE and MT_FLINGNIGHTSCHIP implementation 2018-08-10 02:18:24 -04:00
toaster 1ffa45f875 Rework software coronas a bit, apply them to the flame and flame holder too, and spawn them only if MTF_EXTRA is given. 2018-06-19 23:16:49 +01:00
toaster c5ab2ffa11 At FF and Sphere's suggestion, make the ring hoops work natively in normal stages and require more replacing for special stage conversion purposes. 2018-06-09 21:42:37 +01:00
toaster adc0e3d6c3 Kart Krew discovered a crash, and I was already fiddling around with this, so... 2018-06-08 22:30:38 +01:00
toaster a7c6977b6e * Make bomb spheres respawn with new laps
* Make the mapthing detection for stuff to be spawned by P_SpawnHoopsAndRings more consistent.
* Make NiGHTS stuff prevent perfect bonus.
2018-06-08 17:16:20 +01:00
toaster 35a5f7447e * Remove flashing from spheres in bonus time through #ifdef.
* Fix inconsistency in counting nummaprings.
* Prevent perfect bonus in non-special stage NiGHTS maps.
2018-06-07 15:10:43 +01:00
toaster adf8f0e391 * Some minor info.c tweaks I discovered I needed to make while transferring material across from patch.dta to srb2.pk3.
* Making the particle generator dynamic, as requested by Nev3r.
* i....... think this is done? i'll double check in the morning.
2018-06-06 00:40:23 +01:00
toaster 9c2d30ce35 * Almost everything except players and badniks get removed on deathpit collision, as requested by Nev (very useful for the Bridge). May need serious checking for mobjtypes this is safe to do for.
* 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.
2018-06-05 20:47:30 +01:00
toaster 3725203bcd Bit of a random one today, but the branch approaches completion...
* 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]
2018-06-05 17:22:28 +01:00
toaster 6e07631cc9 MONSTER COMMIT.
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.)
2018-06-03 22:41:54 +01:00
toaster 8d00192fee New CEZ hardcoding done!!
* 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.
2018-05-31 21:00:12 +01:00
toaster 2ec1c3cd9d First commit on new tablet-laptop!
* Robo Hood.
* Hi MI, I know you're looking at this just because it features Robo hood. :V
2018-05-30 23:16:57 +01:00
toasterbabe cea4562c74 Realised I forgot to commit these, didn't want to move to a new laptop-tablet and just have them disappear on me.
* Facestabber statues now have fun breaking effects.
* Fake coronas for candles and prickets.
* hnext and hprev are properly dealt with in MobjThinker if P_MobjIsRemoved.
2018-05-29 18:48:57 +01:00
toasterbabe 364984ac12 Fix bugs (uninitialised memory the compiler didn't pick up, and not setting scale) I sleepily caused last night. 2018-05-24 13:19:42 +01:00
toasterbabe cb86ed7721 * Castlebot Facestabbers.
* Facestabber statues, of both the suspicious and non-suspicious kind.
* New object type for the end of grabbable chains.
* I moved my compilation .bat file to my Releases folder, so it should .gitignore .bat's.
* Random extra stuff.
2018-05-24 01:40:57 +01:00
toasterbabe dbcd259bd6 * New Egg Guard behaviour!
* Fix the thing I mistakenly messed up with all of the things I moved out of P_SpawnMapThing without good reason to.
2018-05-22 23:02:54 +01:00
toasterbabe 847f8b4ef0 * CEZ decorations!
* Moved a bunch of stuff that had no business being in mapthing spawns into mobj spawns.
2018-05-22 11:04:28 +01:00
toasterbabe ee42132ed1 * Bumpers and Balloons in a more final state.
* Blue diagonal springs, because that gap is very, very odd.
* Improved A_SpawnFreshCopy.
* Tweaked P_LookForEnemies for consistency's sake. (Previously, it was impossible to make a spring that could neither be homing-attacked or attraction-shotted.)
2018-05-20 00:04:39 +01:00
toasterbabe 3c50acd1bf * Minor changes to make A_CrushclawAim more useful.
* Some fun with the chain. https://cdn.discordapp.com/attachments/402861856219463681/445539938633515018/srb20022.gif
* More corrections to closed captions.
2018-05-14 13:20:24 +01:00
toasterbabe 26d13db548 * Crushtacean!
* Behaves a bit differently to the one in DSZres.pk3.
   * Can now punch DSZ mines!
   * Also has mapthingnum 126 instead of 610.
* Some other mapthingnum changes.
   * DSZ2 stalagmite is now 1009, formerly 999.
   * Big DSZ gargoyle is now 1011, formerly 1009.
2018-05-14 01:19:24 +01:00
toasterbabe a738ef99e3 * DrT's Spincushion hardcoded.
* Make the MF_PAIN stuff ONLY depend on mass, using the bottom 8 bits for the type and the custom sound in the upper ones.
* A bunch of cleanup of random other stuff, including an unused Deton state and an unused Jetty type's sprite.
2018-05-13 14:09:20 +01:00
toasterbabe 8a61d87961 * Add new damagetype flag (DMG_CANHURTSELF) that allows a player to hurt themselves indirectly.
* Add damagetype to P_RadiusAttack (optinteger in lua, A_Explode var1).
* Removed the prevention of MF_BOSS objects from getting P_RadiusAttacked. This was a holdover from DooM (I checked) - a way to prevent the Cyberdemon from gibbing itself when firing point blank into a wall, and also a way to make it and the Spider Mastermind harder.
* Enemies are solid to other enemies movement-wise now.
* (Fun little aside - if you remove MF_SOLID from a monitor, it now behaves like they did in Sonic Adventure (poppable by colliding with, not just attacking).
* Fixed Metal Sonic battle conflict in MF_PAIN/mass not picked up earlier.
* Miscellaneous tiny code tweaks.
2018-05-08 23:26:36 +01:00
toasterbabe d0575f7fb0 * Hive Elementals and Bumblebores, plus associated useful action functions.
* Made Facestabbers take two hits and have associated pain/death animations. No other changes, just wanted to make sure THIS was done.
* Move Bubblebuzz-related stuff to go alongside the secret badniks and etc.
* MF2_INVERTAIMABLE. Inverts whether P_LookForEnemies can get at; replaces a hardcoded thingy.
2018-05-04 21:30:15 +01:00
toasterbabe 94c7d9bc52 Forgot to do this before making the previous commit; completes support for no-points drone badniks. 2018-05-03 00:00:22 +01:00
toasterbabe 6d1ba20a1d * Add native support for multi-hit badiks to MF_ENEMY.
* MF2_FRET application and removal.
   * Flashing when flag present.
   * Bounce player back on successful damaging.
   * Add their spawnhealth to the chain.
* Reduce code duplication in P_TouchSpecialThing.
* Play with Crawla Commander a little bit as a test of its power.
2018-05-02 23:48:50 +01:00
toasterbabe cf9d53efd8 Kill MF2_STANDONME (mechanically; still occupies the slot... will change that next time I have to handle the DEHACKED lists.) 2018-05-02 20:35:20 +01:00
toasterbabe 5cc1befcad * Haunted Heights! Smashing spikeball, Cacolantern, Spinbobert and Hangster, along with the Spider and Bat flickies and general decoration/ambience stuff.
* MF_PAIN and MF_MISSILE now support setting damagetype via their Mass parameter. The two existing conflicts - the fuse setting for the grenade weapon ring and the Cybrakdemon napalm bomb - had these moved to other free parameters.
* A_ConnectToGround is EXTREMELY useful for palmtrees and stuff.
* Some other, relatively hacky A_ functions.
* (Unrelated) Remove the need for a "Mario block mode" for the token by making it natively compatible.
* Spikes and their time-offsetting via that Lua script sphere made. Also allow for wallspikes to do it via their angle/360.
2018-04-28 15:13:44 +01:00
toasterbabe 1eb84f57c5 * Billiards mines! With support for both above and below water, replacing both the below-and-above-water old mines at once.
* Explosion executors.
* Minor refactor of P_KillMobj.
2018-04-26 20:18:51 +01:00
toasterbabe 976331fb03 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into hardcoding-time-again 2018-04-08 16:23:19 +01:00
toasterbabe ff9775225e Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into delag_maces
# Conflicts:
#	src/p_mobj.c
2018-04-07 01:54:43 +01:00
Digiku e1cd6357cc Merge branch 'op-nightsbumper' into 'master'
NiGHTS Objectplace: Preserve MT_NIGHTSBUMPER vertical angle upon WRITETHINGS

See merge request STJr/SRB2Internal!137
2018-04-06 20:21:25 -04:00
toasterbabe 4f3f647f5b A minor assortment of changes. 2018-04-03 01:46:42 +01:00
toasterbabe 156cc031ea * Optimise them even further... AGAIN! Using an offset-based system rather than a multiplication-based one...
* Again, tweak the spawning code to take maximum advantage of these gains.
* Fix potential crashes with MT_NULL mace/chain types supplied.
* #ifdef out the height-clipping code. It needs more TLC than I can give it right now, and the existing behaviour is less obviously broken (sadly enough).
* Fix chainmace points, which were apparently broken without anyone realising.
2018-04-03 01:10:10 +01:00
toasterbabe 4051ae8915 * Revamp mace creation again to potentially serve as the foundation for further optimisation (and also not rely on a while (1) loop, which easily went wrong several times whilst I was making changes to it).
* Fix minor typoes and other small tweaks in the P_MaceRotate function, which I'm probably about to rewrite again anyways...
2018-04-02 21:36:12 +01:00
toasterbabe 0102da824e Make the h-chain repairing safer. 2018-04-02 01:20:32 +01:00