Commit graph

246 commits

Author SHA1 Message Date
toaster
ae84246721 Fix camera not being flipped when camera is stopped due to game design hack reasons (resolves #383). 2019-11-27 13:37:03 +00:00
Louis-Antoine
29501a992b Merge branch 'master' into exit-move-lj 2019-11-15 19:35:47 +01:00
Louis-Antoine
ff62a0732a Let players move after completing the level
This only takes effect in co-op,
and can be disabled with "exitmove off"
2019-11-15 15:35:28 +01:00
toaster
a3de6d21c4 * Add a "moveforward" param to P_InternalFlickySpawn, which controls whether to spawn the flicky a little in front or behind of the object making it.
* Expose this via additional upper-16-bits flags of A_FlickySpawn.
* Use this to make Snailers not spawn their flicky inside the wall they're attached to.
* Make the behaviour of Egg Capsules more consistent mechanically regarding the flicky spawning, using the above as one relevant element.
2019-11-13 20:14:08 +00:00
toaster
1155a7c3a0 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into rvz-hardcode
# Conflicts:
#	src/p_mobj.c
2019-10-08 19:43:43 +01:00
MascaraSnake
5c1fabfaae Lava is now either completely solid or completely intangible. No more half-assing 2019-10-01 21:58:18 +02:00
toaster
7da89e3bc9 Merge branch 'camerafix' into 'master'
Camera fixes

Closes #105

See merge request STJr/SRB2Internal!303
2019-09-20 11:51:30 -04:00
James
4be108fa76 Lach has blessed us with a remade cam_adjust. 2019-09-10 10:11:03 -04:00
toaster
d26ff197dc * 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
James
577a8fd387 Merge branch 'camorbit-sev' into camerafix 2019-08-31 14:53:43 -04:00
toaster
384dc0674e Revert "Revert "Merge branch 'musicplus-aug2019-b' into 'master'""
This reverts commit 603d5805f7.
2019-08-04 12:03:57 +01:00
toaster
603d5805f7 Revert "Merge branch 'musicplus-aug2019-b' into 'master'"
This reverts commit 56bfdb7113, reversing
changes made to c29cfbef9b.
2019-08-04 11:32:55 +01:00
mazmazz
dd9efebab5 Merge remote-tracking branch 'origin/master' into internal-musicplus-jingle 2019-08-03 23:38:49 -04: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
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
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
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
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
e9978b2955 Merge branch 'master' into thinkerlists
# Conflicts:
#	src/f_finale.c
#	src/p_enemy.c
2019-07-02 23:08:37 +02:00
mazmazz
923dc34215 Merge branch 'public-notpublic-musicplus-jingle' into internal-musicplus-jingle 2019-06-29 18:33:45 -04: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
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
Nev3r
0e162f8f61 Add Sryder's orbital camera thing as an option. 2019-06-20 13:33:31 +02: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
018fb9b461 "Finished" minecart hardcoding (still untested and buggy) 2019-06-14 21:19:52 +02:00
Nev3r
62875d6728 Send the slope thinkers list after the mobj list
Keeping the sector list before the mobj list stops the objects from "entering" or "floating" on slopes. However this induces a new slope adhesion problem in fast-moving slopes, so it is more desirable to leave the "indent/float-on" behavior for now since fixing this one seems like a big can of worms and falls off this branch's scope.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 17:16:35 +02:00
Nev3r
a3174fb56f Add a temporary limbo list for thinkers that need to be freed, in order to keep other lists clean, especially the mobj list.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 16:17:47 +02:00
Nev3r
fc9e141460 Give precip. its own thinker list
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 14:58:18 +02:00
Nev3r
aad78d4985 Give slope thinkers their own list right before mobjs'.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 12:00:10 +02:00
Nev3r
134679c287 Fix some of the polyobject thinkers being removed via P_RemoveThinkerDelayed() directly
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:08:24 +02:00
Nev3r
b60c66325c Added a mobj-only list entry for mobj thinkers
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 23:29:20 +02:00
Nev3r
39ba20be6b Basic multiple thinker list implementation
Set up a main thinker list and a polyobject mover list to test things up. Works so far, networking as well.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 22:39:22 +02:00
mazmazz
8317155c40 Merge branch 'public-gl-next' into public-musicplus-jingle 2019-03-15 18:42:19 -04:00
mazmazz
075f28b7c8 WIP 20190101 merge
d_netcmd.c
filesrch.c
m_menu.c
p_setup.c
p_spec.c
r_data.c
r_main.c
r_things.c
w_wad.c
w_wad.h
2019-01-02 01:09:15 -05:00
MPC
6b22dc183b Fix the automap 2018-12-12 18:01:52 -03:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Monster Iestyn
49c5a6f7e4 Remove unused "runcount" variable from p_local.h 2018-10-11 20:00:23 +01:00
mazmazz
c60d61a493 musicplus-jingle 2.2 -> 2.1 backport 2018-09-18 15:10:00 -04:00
mazmazz
a6f959ba21 Set mobj->floorrover and ceilingrover in appropriate places 2018-09-10 00:38:07 -04:00
mazmazz
956d48b5e0 Compiler errors 2018-09-06 13:16:50 -04:00
mazmazz
5eafebe4d4 A_FlickyCenter implementation - now Flickies can be attracted to players!
* Changed default movement to attraction, vs. aimless
* Flickies spawned from this will always have the FLICKY_CENTER mobj as its target
    * Use P_IsFlickyCenter to identify FLICKY_CENTER mobjs versus players
* FLICKY_CENTER mobj tracer points to the spawned Flicky
* Thanks toaster for the original code~~
2018-08-09 17:28:37 -04: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
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
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
6d59551afd Mace optimisation!
* Handle all chain objects as a hnext/hprev chain.
* When removing mobjs with hnext/hprev, "repair the chain" (make the h links meet).
* Fix hidden slings, which I accidentially broke when I revamped maces the first time.
* Kill MF2_MACEROTATE. Not needed for anything anymore.
* P_MaceRotate now available to Lua to make up for it.
* Related: Made modifying hnext/hprev using Lua safer, so it keeps the reference counts in play.
2018-04-01 20:54:19 +01:00
toaster
49a1266ccc Merge branch 'sal-misc-stuff' into 'master'
Sal misc stuff (state overwriting, gamepad tweaks)

See merge request STJr/SRB2Internal!116
2017-11-02 16:35:12 -04:00
TehRealSalt
8a676d8aa4 Added movebob removed viewheight
"movebob" lets you determine the strength of movement bobbing (does not
affect landing delta, that's technically not movement bobbing :p),
values range from 0.0 to 4.0. viewheight is now relative to
player->height.
2017-10-14 16:11:08 -04:00
toasterbabe
d38b627b85 woops 2017-09-28 22:20:16 +01:00
toasterbabe
9446fe6cd6 Tweak some HUD stuff, including a more consistent application of MAXSCORE. 2017-09-28 20:24:40 +01:00
toaster
3cc14e3985 Merge branch 'directionchar' into 'master'
Autobrake & decoupling player sprite angle from camera angle

See merge request !69
2017-09-19 07:56:22 -04:00
toasterbabe
f90d595332 * cv_directionchar and cv_autobrake, and their secondplayer versions (both on by default) now exist.
* cv_useranalog is now hidden from the menu.
* Directionchar now attempts to face the camera direction when you're standing still, and handles a few other states with more decorum.
* Tailsbot is now slightly more capable of keeping up with Sonic.
* pflags rearranged/adjusted, combining a few non-simulstaneous ones and turning PF_NIGHTSFALL into CR_NIGHTSFALL.
* [unrelated to branch] all ground-impact based abilities now happen more consistently with quicksand.
2017-09-16 20:25:14 +01:00
Monster Iestyn
030c437186 Merge branch 'master' into mi-misc-whatever 2017-08-18 17:00:05 +01:00
Monster Iestyn
a0204c6722 Made P_SpecialStageDamage for the lose 10 rings damaging code shared by spikeballs and SS damage sector special 2017-08-06 22:10:29 +01:00
toasterbabe
634c560e99 * Who wore it better? https://cdn.discordapp.com/attachments/293238104096112641/338696939774279680/srb20037.png
* Now that Cyan is back, swap out the substitute Teal in the emblems for it.
* P_GetMobjSprite2 is now P_GetSkinSprite2.
* Correct "Siler".
2017-07-23 17:49:19 +01:00
toasterbabe
3857b720cd * Make music reset when game over is dealt with more consistent.
* Make setting steallives to true respawn every game overed spectator.
* Make a minimum on the number of lives GetLives can get you.
* Add "You'll steal a life on respawn" to spectator screen.
2017-06-01 18:44:19 +01:00
toasterbabe
2f3e4c3c65 * Per Mystic's request, made lives for 100 rings individual.
* P_GiveCoopLives bundles the coop lives reward for everyone versus reward for one person in other gametypes thing into one function. Available in Lua.
2017-05-29 22:18:02 +01:00
toasterbabe
726cd9757b Spectators in new Coop instead of staring at a dead screen all the time!
Needs a bunch of changes to HUD rendering, especially in splitscreen, which doesn't try to show spectator stuff whatsoever. Also, if you're the player whose respawn determines when the map reloads, you'll see the spectator text during the front half of the fade. Unless, of course, it's 2-player mode.
2017-05-29 21:23:00 +01:00
toasterbabe
4239036cec Life theft! No menu item, but anything is possible with zombocom.
cv_steallives, defaults to "On"
2017-05-28 21:55:41 +01:00
Monster Iestyn
93efb3084e Merge branch 'mi-a-bit-of-cleanup' into 'master'
MI's unimportant code cleanup

Just removing a bunch of unused variables/function prototypes from the source code and similarly minor stuff, nothing here should change gameplay much (if at all).

See merge request !71
2017-04-17 14:43:50 -04:00
toasterbabe
1e64b096fd Bugfixes and code cleanup.
* Getting hit whilst on a swinging mace doesn't send you off in roll/jump state.
* P_GetJumpFlags replaces a bunch of copypasted code.
* Homing attacking a spring sends you directly on its path, rather than rocketing off in the direction you were preiously hurtling in.
2017-04-03 18:28:02 +01:00
toasterbabe
ddf8db12af Big commit, sorry. I broke several things trying to get other things to work and it's only now that all the code that worked yesterday works today!
*P_LookForEnemies is now side-effect-less and only provides a pointer to the found mobj
*player-jumping is dead, long live PF_STARTJUMP
*per Mystic's request, CA2_GUNSLINGER has a targeting icon. It also has a more restricted vertical aiming range.
*mobj for this is in the game as requested
*fast teetering animation flag
*general code cleanup
2017-03-22 18:51:30 +00:00
toasterbabe
7ac0373dbf After usability complaints:
* CA2_MELEE/CA_TWINSPIN combination abilities (ground hit, somersalt) disabled.
* Enabled movement controls whilst using CA2_MELEE in the air.
* CA2_GUNSLINGER no longer requires charging. In exchange, it involves a cooldown in which you can't move.
* CA2_GUNSLINGER lock-on distance improved, and aiming allowance reduced to compensate.
* Lots of cleanup/gravflip allowances for homing/targeting code.

* Unrelated: Flickies now properly face the direction they're supposed to when getting knocked out of the egg capsule.
* Unrelated: Thok trail fades like spindash trail now.
* Unrelated: Using CA_HOMINGATTACK when nowhere near an enemy uncurls you.
2017-03-21 16:04:49 +00:00
toasterbabe
59bc0da022 Introducing CA2_GUNSLINGER.
* Mildly hacky proof of concept! Will de-hack later.
* Charge up your ability!
* You can only damage others if it's at full power.
* Fires directly at enemies/bosses when at full power. Does NOT aim at players.
2017-03-21 00:54:47 +00:00
toasterbabe
a4c1c3195f Cleanup.
* Fixed a major hack from when I SPR2ised NiGHTS by spawning in a null object.
* Made P_LookForEnemies better in preperation for the future.
* Changed some defaulting characteristics of P_GetMobjSprite2.
* Fixed CA_DOUBLEJUMP potentially counting as a float.
* Killed some extremely small boolean functions and replaced them with #defines.
2017-03-20 16:57:24 +00:00
Monster Iestyn
8f1deb9128 Remove unused "runcount" variable from p_local.h 2017-02-11 23:28:42 +00:00
toasterbabe
38c7436565 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/d_clisrv.c
2017-01-09 11:10:47 +00:00
toasterbabe
d3a70eb1db * All Flicky A_ functions ported.
* Corrected MT_EGGSHIELD spawning a flicky.
* New compared to the Lua implementation: Flickies turn around when they hit walls!
2016-12-30 19:16:20 +00:00
toasterbabe
bf8bff82ba * MT_EGGTRAP (egg capsule center mobj) converted over to flickylist system.
* MT_EXPLODE's anims partially FF_ANIMATE'd.
* A_FlickySpawn turned into a wrapper for internal function that does what A_FlickySpawn did but returns a pointer to the spawned flicky.
2016-12-30 14:04:04 +00:00
toasterbabe
942065ba9f * CA_BOUNCE users now play animation/sound when bouncing on enemies, monitors.
* CA_BOUNCE users harmlessly bounce off Sharps.
2016-12-24 13:17:53 +00:00
toasterbabe
85fb02aaf6 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions
# Conflicts:
#	src/p_inter.c
#	src/p_user.c
#	src/st_stuff.c
2016-11-20 16:44:38 +00:00
Inuyasha
908907d668 Merge branch 'spr2stuff' into 'master'
Sprite2 changes

Some stuff!

* Lua access to sprite2.
    * Introducing new Lua-exclusive function, P_IsValidSprite2(mo, spr2). Basically just a wrapper for (((skin_t *)mobj->skin)->sprites[spr2].numframes > 0), useful for creating custom sprite2 defaulting functions since hooking into P_GetMobjSprite2 wouldn't be worth it.
* FF_ANIMATE support for sprite2s. The var2 of the state works identically to normal FF_ANIMATE, but var1 is completely disregarded - it just runs all of the frames available to that one sprite2 animation set.
    * As a result, a bunch of states which were either not previously animatable or had animated at constant speed now get animation without state changes.
* P_SetMobjState now supports sprite2 defaulting like P_SetPlayerMobjState does.

See merge request !51
2016-11-13 16:59:26 -05:00
toasterbabe
20677c7a66 * Introducing new Lua-exclusive function, P_IsValidSprite2(mo, spr2). Basically just a wrapper for (((skin_t *)mobj->skin)->sprites[spr2].numframes > 0), useful for creating custom sprite2 defaulting functions since hooking into P_GetMobjSprite2 wouldn't be worth it.
* All Lua-originated sprite2 settings are now forced through P_GetMobjSprite2. Makes sense because of SPR2_JUMP, which none of the main characters have sprites for yet all use.
* Cleaned up P_GetMobjSprite2 to not set irrelevant, otherwise-unused variable.
2016-11-11 23:23:41 +00:00
toasterbabe
162c04c370 Bubblewrap shield now bounces on enemies and monitors instead of piercing through them. 2016-10-24 13:33:10 +01:00
toasterbabe
3ce411b62a Mario mode is boring again. (I'm going to revert this commit as soon as possible, but shield_actions needs to be clean of Mario stuff for now.) 2016-10-24 12:35:40 +01:00
toasterbabe
80300ac476 Fireflower is now on same level as all other shields, as opposed to being an additional stack layer. (MID LECTURE COMMIT STRATS YO) 2016-10-13 15:14:13 +01:00
toasterbabe
4997564d30 I like this timing more. 2016-10-12 23:55:16 +01:00
toasterbabe
a36912baef In Mario mode...
* shields give you 1000 points
* redundant shields don't make you puase
* checkpoints give you 2000 points
* falling down a deathpit is just falling, not bouncing
2016-10-12 23:47:18 +01:00
toasterbabe
71b7db4e0d Refinements to flashing. 2016-10-12 22:06:12 +01:00
toasterbabe
d4f0afa0d1 A Heckloada Mario Stuff
https://gfycat.com/MasculineSatisfiedAfricanwilddog and https://gfycat.com/PastCompetentGypsymoth describe this all in varying states of completion
2016-10-12 17:55:07 +01:00
toasterbabe
64a1fa5421 Players are half height in Mario mode when they don't have any shields, the Mario mode pity shield is invisible, and Mario mode players immediately get a pity shield when they lose any other type of shield. So basically that's a Red Mushroom, right?
https://gfycat.com/ThoughtfulAcademicChrysalis
2016-10-11 23:35:48 +01:00
Monster Iestyn
0fb89c620d Merge branch 'master' into damage-control 2016-09-30 21:05:44 +01:00
toasterbabe
f1fb276e5a Fixed a bug where using your shield ability just before your shield changed got you stuck in whatever state it left you.
To do that, P_SwitchShield was born! Don't use with Force.
2016-09-30 13:48:33 +01:00
toasterbabe
e05528e4a3 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-09-30 12:44:08 +01:00
Inuyasha
f1b8bfcfe7 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors
# Conflicts:
#	src/info.c
#	src/p_map.c
2016-09-29 18:08:50 -07:00
toasterbabe
a8be1e6b7d Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions
# Conflicts:
#	src/d_player.h
#	src/p_inter.c
#	src/p_mobj.c
#	src/p_user.c
2016-09-27 18:24:53 +01:00
toasterbabe
be0e898bae * Skin-controlled radius is no longer set each tic, only on skin change and player spawn.
* Camerascale, shieldscale, height and spinheight are now player attributes which are set to the skin attribute on skin change, not read directly from the skin.
* P_GetPlayerHeight and P_GetPlayerSpinHeight are now macros instead of functions.
* Extra protection against switching to a locked skin.
2016-09-25 18:21:52 +01:00
Inuyasha
1a4b894589 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors
# Conflicts:
#	src/info.c
2016-09-24 23:05:01 -07:00
toasterbabe
d8065fa525 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements
# Conflicts:
#	src/d_player.h
#	src/dehacked.c
#	src/info.c
#	src/p_user.c
2016-07-16 17:23:25 +01:00
toasterbabe
c2aba46298 New S_SKIN attributes.
* radius - sets the player's radius for that skin.
* height - sets the player's normal height for that skin.
* spinheight - sets the player's spinheight for that skin.
* shieldscale - see http://i.imgur.com/BQ5DhKC.png for justification
2016-07-13 15:15:45 +01:00
Alam Ed Arias
8f0994b38b Merge branch 'public_next' into master 2016-07-11 16:22:05 -04:00
Alam Ed Arias
765d68899f Merge branch 'master' into next 2016-07-11 16:10:40 -04:00
Alam Ed Arias
b347ed2ca6 Merge branch 'public_next' into master 2016-07-11 15:52:27 -04:00
Alam Ed Arias
0c8fcb5e4d Merge branch 'master' into repeat-monitors 2016-07-11 15:29:06 -04:00
toasterbabe
0fefd86d1e More generic name for P_ElementalFireTrail upon MI's request 2016-07-08 22:56:17 +01:00
toasterbabe
f8dd9b64ab Elemental shield ability now coded. REQUIRES NEW PATCH.DTA FROM THE FTP.
- Press spin in midair to stomp directly downwards (losing horizontal momentum), creating a flickering fireball around you.
- No bouncing on enemies, item boxes, etc - just go straight through.
- Hurts other players on touch whilst you're stomping.
- Spawns a bunch of flames around you when you hit the ground.

Also:

- Electric shield's ability now uses different sounds, because I'm picky.
2016-07-08 21:55:17 +01:00
toasterbabe
95ac0fa9a0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-07-08 13:20:24 +01:00
Alam Ed Arias
4d6a3e3398 FUNCMATH fun 2016-06-12 16:08:48 -04:00
toasterbabe
661da15146 Reinforcing encapsulation I originally broke down to allow for P_GetMobjGravity.
When I first wrote this, I thought the .h file that contained a function declaration needed to have the same name as the .c file the function was in. Now I know that's not the case, off to p_local.h with you.
2016-06-09 18:16:13 +01:00
Monster Iestyn
9007904a72 Merge branch 'master' into damage-control
# Conflicts:
#	src/p_inter.c
#	src/p_mobj.c
2016-05-25 15:33:09 +01:00
Alam Ed Arias
032313260a Merge branch 'public_next' into master 2016-05-20 17:58:57 -04:00
Inuyasha
f07585191b copyright dates/statements updated and such
(no actual SLOC changes)
2016-05-17 17:42:11 -07:00
Alam Ed Arias
398dbed4ed Merge branch 'public_next' into master 2016-05-07 11:35:05 -04:00
Monster Iestyn
d31fd95d75 Armageddon & Sparkles confusion is no more, DMG_NUKE exists to sort that out now 2016-04-07 22:02:52 +01:00
Monster Iestyn
e8a4d7b7b8 Fix replay camera not being turnable when climbing, sliding ...and several other things.
If in analog mode, this does not apply (also analog mode replay camera no longer borks)
2016-04-05 20:56:48 +01:00
Monster Iestyn
f9c4b877ca Merge branch 'master' of git@git.magicalgirl.moe:STJr/SRB2Internal.git into damage-control 2016-03-13 20:37:43 +00:00
Inuyasha
e7ff405c52 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/hardware/hw_md2.c
#	src/p_mobj.c
#	src/p_mobj.h
2016-02-29 00:14:16 -08:00
Inuyasha
1bdd4cf641 backport state-animations from internal master to public next
most other code in the branch did not come along for the ride.
2016-02-09 02:39:16 -08:00
Monster Iestyn
69550e98fe Since cv_pointlimit is handled in P_CheckPointLimit, I've just created P_CheckTimeLimit for cv_timelimit.
It helps make P_UpdateSpecials less messy-looking anyway.
2016-01-14 16:32:30 +00:00
Inuyasha
c81571f0af Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors 2016-01-13 19:27:59 -08:00
Inuyasha
265a607b58 rewrite of monitors to accomodate repeat use monitors.
It's a lot nicer in general, honestly. I think a couple bugs with custom monitors respawning got fixed in the process.
Note that a monitorgfx.wad is needed if you want to see things besides <!>s for monitors, due to graphic changes.
2015-12-31 08:38:23 -08:00
Monster Iestyn
08c0c7676c Since cv_pointlimit is handled in P_CheckPointLimit, I've just created P_CheckTimeLimit for cv_timelimit.
It helps make P_UpdateSpecials less messy-looking anyway.
2015-10-11 21:01:04 +01:00
Monster Iestyn
7dcf0d3d09 Fix an error from match-balancing being merged in. Apparently match-balancing also doesn't have a prototype for P_StealPlayerScore for whatever reason. 2015-10-01 20:02:44 +01:00
Yukita Mayako
ba77b235d1 Merge branch 'match-rebalancing' into damage-control
Conflicts:
	src/p_inter.c
	src/p_user.c
	src/st_stuff.c
2015-09-30 20:40:27 -04:00
Alam Ed Arias
6ad1086128 Merge branch 'public_next' into master 2015-09-03 15:58:16 -04:00
Yukita Mayako
2fb03a7cff Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into angles
Conflicts:
	src/p_map.c - Automatically resolved by mergetool
2015-08-22 09:52:11 -04:00
Alam Ed Arias
c0ae3fa895 Merge remote-tracking branch 'private/public_next' into private_master 2015-08-14 18:26:33 -04:00
Monster Iestyn
fa935be129 Fixed the issue where diagonal springs couldn't teleport you to their centers anymore (guess whose fault that was! =D ). Basically I just made P_DoSpring boolean, which probably could be useful to Lua peeps as well. (it returns true if you were sprung, false if not) 2015-07-28 19:28:51 +01:00
Alam Ed Arias
fb5cba78d3 Merge branch 'public_next' into private
Conflicts:
	src/p_mobj.c
2015-06-18 10:54:53 -04:00
Monster Iestyn
b88600dac6 tmfloorthing and tmhitthing are set to NULL at the start of P_MobjThinker, preventing any weird cases of carrying over the previous mobj's floor object or such.
This fixes the issue with upside-down springs shooting downwards if you touch another of its kind. Also fixes one of the issues with monitors in Icicle Falls (after you phase inside the East-most float-bob FOF's monitor via the other bug and jump up to break it while there, the NEXT monitor moves upwards too)
2015-05-31 13:57:27 +01:00
Yukita Mayako
4a1f0ce91c New attract shield active
Homing attack when activating the attract shield while jumping.
2015-05-27 05:24:50 -04:00
Yukita Mayako
c6c4ab7c53 New emerald behavior in Match.
No longer turns you super, instead emeralds steal points
from enemy players and give you (and relevant teammates)
an invincibility + super sneakers monitor.
2015-05-27 02:39:46 -04:00
Yukita Mayako
b6a8df557e New Match weapon/ammo dropping method.
P_PlayerWeaponPanelOrAmmoBurst will go through all of the
player's weapon rings and either drop the weapon panel itself
(with no ammo attached, and no ammo taken away!) OR if the
player has ammo but no weapon, it drops the ammo instead
(and you lose it).
2015-05-27 02:39:37 -04:00
RedEnchilada
a9dba0ffd1 Condense GetFloor/CeilingZ into fewer functions, and use macros for the rest 2015-05-24 11:27:52 -05:00
RedEnchilada
3f8e7b1739 Revert/remove unused/broken junk from original slopes port
m_vector removal to come later. The little thing commented out in it
is so I could revert the weird tables.c change.
2015-05-22 20:57:58 -05:00
RedEnchilada
3d2b71b24c Make cameras properly collide with slopes 2015-05-21 09:36:20 -05:00
RedEnchilada
d138f7e14f Collision with FOF slopes (might be unfinished, idk) 2015-05-17 11:53:28 -05:00
RedEnchilada
1f0f6b64c1 Store the slope an object is resting on (if applicable) 2015-04-29 00:33:04 -05:00
RedEnchilada
776b5254e6 Slope collision fixes 2015-04-29 00:29:51 -05:00
RedEnchilada
58dd6d42af Add P_GetFloorZ and P_GetCeilingZ as boilerplate to facilitate better slope collision
I have not used this anywhere in the code yet.
2015-04-27 13:18:12 -05:00
RedEnchilada
923fae476e Merge branch 'fury-gh/slopes' into angles
Conflicts:
	src/p_maputl.c
2015-04-19 15:56:55 -05:00
Ronald Kinard
91934d5aec Merge branch 'next' into internal-master
Synchronize the following MRs to internal:

 * STJr/SRB2!6
 * STJr/SRB2!8
 * STJr/SRB2!9
 * STJr/SRB2!10

Conflicts:
	src/doomdef.h
	src/p_map.c
2015-04-14 19:33:38 -05:00
RedEnchilada
d2c74e1b13 Fix the west/south blockmap issue without fucking up huge maps 2015-04-08 21:32:07 -05:00
MonsterIestyn
34c396825f tmsprung is dead, long live MFE_SPRUNG a bunch of other painful tweaks to springs to fix this long-standing "AAA IM STUCK FOREVER UNDER A SPRING" thing when you touch a vertical spring from below (or above for reverse)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9037 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
e83fa3dc43 Partial damage system overhaul: P_DamageMobj, P_KillMobj, P_HitDeathMessages and P_RingDamage now all take a "damagetype" variable that determines what type of damage was dealt. Does not replace the "damage" variable, we'll have to see if that is worth keeping another time?
Currently the main benefit of these changes is that a number of non-Object-related hazards/deaths no long rely on dummy MT_NULL objects or other hacks to tell the game how you were hurt/killed, yay

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9039 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:18 -06:00
MonsterIestyn
55c1ad4368 tmsprung is dead, long live MFE_SPRUNG a bunch of other painful tweaks to springs to fix this long-standing "AAA IM STUCK FOREVER UNDER A SPRING" thing when you touch a vertical spring from below (or above for reverse)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9037 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:17 -06:00
Alam Ed Arias
73b3287b19 SRB2 2.1.14 release 2015-01-01 14:50:31 -05:00
Ronald Kinard
54f0d0c110 IN PROGRESS: porting eternity slopes from srb2cb 2014-11-18 18:45:57 -06:00
Alam Ed Arias
404b5f666c SRB2 2.1.12 release 2014-11-11 19:55:07 -05:00
Alam Ed Arias
c028c83235 SRB2 2.1.9 release 2014-08-03 23:49:33 -04:00
wolfy852
a8f5406233 Add P_Telekinesis and P_IsFlagAtBase to Lua. 2014-05-25 21:41:05 -05:00
Wolfy
f509c56e3c Unstatic P_DoSpring. 2014-05-24 12:49:15 -04:00
Wolfy
3f1038dcbe Unstatic P_SpawnSpinMobj. 2014-05-24 12:46:10 -04:00
Wolfy
ed82755b6d Unstatic P_SpawnThokMobj. 2014-05-24 12:30:33 -04:00
Alam Ed Arias
b93cb1b65a SRB2 2.1 release 2014-03-15 13:11:35 -04:00