Commit graph

4594 commits

Author SHA1 Message Date
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
mazmazz
b80277b7f1 Merge branch 'nightsplus-stillvisangle' into nights-nightserizeangle 2018-04-02 15:26:41 -04:00
mazmazz
49682f58bf Make NiGHTS face forward or backward upon Nightserizing 2018-04-02 15:21:19 -04:00
mazmazz
294d583166 Dumb stupid hack where NiGHTS faces you upon Nightserizing
Because I can't figure out how to tell which player angle is "forward" in an axis track.
2018-04-02 14:41:29 -04:00
mazmazz
37eeb5d25c Merge branch 'nightsplus-laplogic' into nightsplus-le
# Conflicts:
#	src/p_map.c
2018-04-02 09:21:55 -04:00
mazmazz
0c6f722ff2 For NiGHTS OP Hoop, make mt->options XOR cv_opflags more SRB2-like 2018-04-02 08:36:33 -04:00
mazmazz
53503cd01f Slight fixes for NiGHTS LE Trigger logic 2018-04-02 08:13:53 -04:00
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