Commit graph

4851 commits

Author SHA1 Message Date
mazmazz
2c72c6e660 Split NiGHTS LE trigger logic into P_CheckNightsTriggerLine
This makes P_RunTriggerLinedef more readable because the logic is too different from the other triggers.

Also replace BOOL with boolean
2018-04-02 08:11:28 -04:00
toasterbabe
0102da824e Make the h-chain repairing safer. 2018-04-02 01:20:32 +01:00
toasterbabe
5ac70bbb7e * Fix multispoke mace/chainbars having problems.
* Completely rework how mace/chainbars are spawned to reduce the number of matrix multiplications required EVEN FURTHER!
* Reimplement the maceretry solidity stuff (effect 4).
* Flip the mminlength stuff so that existing dev maps don't break badly.
* Fix hacky chainbar grabbing.
* Tweak height of tinychain a smidge.
2018-04-02 01:08:31 +01:00
toasterbabe
97ddb8881d * Remove ability to change speed of chains.
* Fix ability to turn chains (still disabled by default, just at least want the option...)
* Replace max speed setting with a "minimum chainlink distance" setting - if greater than zero, that many chains will not be spawned from the center outwards. Doesn't affect the head of the chain at all, since otherwise what's the point? :V
2018-04-01 22:05:59 +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
mazmazz
9dc90f2df8 Implement logic branching for NiGHTS LE triggers and add Bonus Time trigger 2018-04-01 08:23:59 -04:00
mazmazz
3d72c105df Initial checkpoint for NiGHTS LE triggers 2018-03-31 10:11:27 -04:00
mazmazz
cd7573550b Remove fader thinkers by stored pointers in fadingdata 2018-03-31 01:15:24 -04:00
mazmazz
3e8d264a2d Add fadingdata to sector_t 2018-03-31 00:41:20 -04:00
mazmazz
c1c6b4746f Better fading comments 2018-03-31 00:10:46 -04:00
mazmazz
c13f561b50 Fix fade_t handleflags to UINT32 2018-03-31 00:02:37 -04:00
mazmazz
bf0f24b16e Bring back FF_TRANSLUCENT processing for fade FOF
The rules for accompanying flags are:
* If FF_TRANSLUCENT, deflag FF_CUTLEVEL and flag FF_EXTRA | FF_CUTEXTRA.
* If not FF_TRANSLUCENT, flag FF_CUTLEVEL and deflag FF_EXTRA | FF_CUTEXTRA
* If FF_SOLID, deflag FF_CUTSPRITES
* If not FF_SOLID, flag FF_CUTSPRITES

This reverts commit 73c7df6f5b.
2018-03-30 23:42:14 -04:00
mazmazz
0ac96b5a93 Merge branch 'le-fadefof' into le-fadefof-fflags
# Conflicts:
#	src/p_spec.c
2018-03-30 23:03:06 -04:00
mazmazz
047fffb6da Remove log comments for Fade FOF 2018-03-30 22:59:33 -04:00
mazmazz
73c7df6f5b Maybe let's not handle FF_TRANSLUCENT for fade FOF.
Why: FF_TRANSLUCENT is often packaged with flags FF_EXTRA, FF_CUTEXTRA; for intangibles, FF_CUTSPIRTES; in some cases (?), FF_CUTLEVEL. I *think* the rules are consistent amongst predefined FOFs, but maybe there are exceptions?

There's too much that can go wrong with assuming too many flags for an FOF. Just make it the modder's responsibility to tag this special to the proper translucent FOF.
2018-03-30 22:56:43 -04:00
mazmazz
d449aae76d Add predefined behaviors for fading FOF flags
* ML_BLOCKMONSTERS: Handle FF_EXISTS
* ML_NOCLIMB: Handle FF_SOLID
* ML_EFFECT1: Don't handle FF_TRANSLUCENT
2018-03-30 22:43:13 -04:00
mazmazz
3fbffb0b4d Add player_t marelap and marebonuslap, with logic 2018-03-30 20:28:27 -04:00
Sryder
6f2de824fb Uncomment HWR_CorrectSWTricks but set gr_correcttricks to be off by default
I wasn't aware of the cvar, this should do for now since I don't believe any maps use these software tricks, probably an old leftover from DOOM.
2018-03-30 23:12:44 +01:00
Marco Z
e617753d00 Initial logic attempt
* Front X offset: ffloor alpha target (1-256)
* Front Y offset: Speed, alpha per tic (1+)
* MF_BLOCKMONSTERS: Do not handle FF_EXISTS
2018-03-30 17:45:48 -04:00
toasterbabe
0fbebcaa08 Make special stage tallies do the token noise if you cash in a token! 2018-03-30 22:03:14 +01:00
toasterbabe
d9b5155e6e * Make Tokens appear in competition.
* Tweak thrown ring colours.
* Make Armageddon shield loop properly.
* Tweak drowning numbers to be consistent between third and first person.
2018-03-30 21:49:15 +01:00
Marco Z
44b25be69a fade_t fields 2018-03-30 16:19:19 -04:00
Marco Z
0fedd2e566 Define fader thinker names 2018-03-30 15:33:03 -04:00
mazmazz
c09991d3d4 Merge branch 'nightsplus-laplogic' into nightsplus-le
# Conflicts:
#	src/p_map.c
2018-03-30 14:39:00 -04:00
mazmazz
637a4a8446 Add player_t marelap and marebonuslap, with logic 2018-03-30 14:38:28 -04:00
mazmazz
56d7f9ed38 Nights LE checkpoint 2018-03-30 14:22:59 -04:00
Sryder
0aaae501d3 Warnings must die 2018-03-30 18:53:23 +01:00
Sryder
f3aa02e26d Start with lightnum on sector lightlevel 2018-03-30 18:13:52 +01:00
Sryder
66f220d6ad Merge branch 'master' into openglquickfixes 2018-03-30 18:09:41 +01:00
toasterbabe
de8f1fa407 * Incorporate (almost) all of Mystic's feedback.
* Prevent ANY input when blindfolded.
* Make CECHOs always perplayer'd. (A little hacky; quads will need work here.)
* Make NiGHTS link timer bounces not a mess, and only when the colour changes.
2018-03-30 16:39:59 +01:00
Sryder
65c893da86 static tempsec for R_FakeFlat
I don't fully understand this, but it's what software does and it fixes the issue of the lighting in DSZ3. Also don't need the extra call to R_Prep3DFloors.
2018-03-29 23:28:54 +01:00
Nevur
fc3e863fd3 asdf
Signed-off-by: Nevur <apophycens@gmail.com>
2018-03-29 20:12:19 +02:00
toasterbabe
98601dc757 A lot!
* cv_powerupdisplay. Never, First-person only (default), Always.
* New monitor stuff.
* Fixed hitmessages.
* Some CTF stuff.
* Aaaaugh it's a lot I hate myself I need to work on my coursework.
* I'll figure out what I did here in the merge request when that's done.
2018-03-26 23:53:09 +01:00
mazmazz
ac8be33752 Reset player->another/flyangle on any Nightserize or DeNightserize 2018-03-26 01:54:38 -04:00
mazmazz
4281c9ca10 Nightserize: Reset player another/flyangle on new mare 2018-03-26 01:40:15 -04:00
mazmazz
ce215195f8 NiGHTS drone loop: Change flyangle comparison to fix detection from vertical angles
Use > 90 && < 270 instead of >= 90 && <= 270. Fixes a bug where if you fly directly up (flyangle 90) or directly down (flyangle 270), that registers as a backwards direction, so you trigger the loop detection by flying BACKWARDS, not FORWARDS. This edge case (only possible via JUMPTOAXIS) should default to FORWARDS looping.
2018-03-26 01:04:02 -04:00
mazmazz
67e4381284 Fix NiGHTS drone loop detection by using pl->flyangle 2018-03-26 00:33:17 -04:00
mazmazz
d85f108997 P_SpawnMapThing: Ignore MTF_ flags if MT_NIGHTSBUMPER 2018-03-25 19:42:46 -04:00
mazmazz
dc9fd6f02e MT_NIGHTSBUMPER Spawn: Don't reset mthing->options 2018-03-25 19:07:21 -04:00
mazmazz
e87530a9c3 NiGHTS objectplace: Place new hoop 1713 instead of 1705
* Add cv_ophoopflags consvar to manage hoop flags separately from other flags
* Simplify hoop mt->options operation so we're not recalculating Z flags; just XOR cv_opflags OR cv_ophoopflags
2018-03-25 18:07:15 -04:00
toasterbabe
33afd94252 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into pretty_stuff
# Conflicts:
#	src/d_main.c
#	src/st_stuff.c
2018-03-24 17:17:01 +00:00
jameds
876d0fa58b Removed contradictory -connect check 2018-03-23 18:09:07 -07:00
Sryder
f62cb3a30a I've commented out the call to HWR_CorrectSWTricks.
I don't think it does anything for us anymore, and might even break things with slopes.
Someone let me know if I'm wrong and am breaking things horribly here.
2018-03-23 22:27:29 +00:00
jameds
a431197921 Fixed "invalid pointer" error when passing "" to Command_connect(). 2018-03-22 21:21:26 -07:00
Sryder
fab4b7f5ea Stop squashing the screen vertically in non-green resolutions 2018-03-22 01:10:53 +00:00
Sryder
839ee0ab85 OpenGL Sprite Splitting 2018-03-22 00:52:14 +00:00
Sryder
0885d27171 Transform sprites in world space rather than screen space
Transformation based on screen space would make sense if we didn't want anything in the world to effect the sprites.
This should allow sprite splitting and sorting of sprites with level geometry easier.
stransform is no longer needed.
2018-03-21 19:45:37 +00:00
toasterbabe
24c017564e Mammoth commit!
* Make TIME part of HUD count down in a bunch of circumstances where it was otherwise some other seperate thing.
* Make race countdown happen in a bunch of appropriate circumstances.
* Refactor race countdown.
* Remove a lot of useless stuff from H&S/Tag UI.
* Make co-op/competition/race end-of-act countdown use the race countdown and bigger HUD font.
* Remove useless PLAYING/SPECTATE text from lives element.
* Merge lap counter into lives element.
* Move some other text around.
2018-03-21 18:18:45 +00:00
toasterbabe
05bf3674d3 * M_Random function access to v! (so v.RandomFixed(), etc...)
* Remove deprecated P_Random() from Lua.
2018-03-20 15:00:27 +00:00
Sryder
4e95066f5a Some fixes and updates for HWR_SplitWall
Solid walls *can* be cut
Fix issues with water and fog FOFs not cutting each other out correctly
Fix Fog colourmap and lighting setting that is done here.
Remove HWR_SplitFog

There is currently a bug with FF_DOUBLESHADOW (that also exists in software) but has a larger impact here. When 2 FF_DOUBLESHADOW lights are directly stacked on each other the bottom one has its height set incorrectly. This causes all the Fog in the timed gravity flipping section of ERZ2 to be drawn and it looks really bad.
2018-03-20 14:20:08 +00:00