Commit graph

755 commits

Author SHA1 Message Date
Jaime Passos
78a0048ee4 Support animations 2019-11-09 13:23:38 -03:00
Jaime Passos
773f2efdd9 minor fixes 2019-11-09 01:45:00 -03:00
Jaime Passos
c7d0d7b1c2 Flats as walls textures support, WIP, doesn't support animations yet 2019-11-09 01:36:53 -03:00
Jaime Passos
249cf5c8ad fix invisible planes, fix flat animation 2019-11-08 23:42:15 -03:00
Jaime Passos
ae838d4879 Merge remote-tracking branch 'origin/master' into texture-flats-optimization 2019-11-08 23:01:29 -03:00
lachwright
3734eab7b6 Add signpost camera (and fix a typo whoops) 2019-11-09 00:47:51 +08:00
toaster
d8ad0b4eaa STOP THE CLOCK linedef exectutor!
* When activated, stops the timer in SP/MP.
* Applies to the mapheader countdowntimer as well.
* If you're playing Record Attack, also exits the level immediately.
* It has no special modes, no linedef flags, no parameters, nothing.
* Only not an innate property of A_BossDeath because people may want it to NOT happen sometimes, or make it happen with non-boss events too.

Also, skip over calling P_DoPlayerExit if the player isn't in game.
2019-11-08 15:47:12 +00:00
lachwright
bd9878eb48 Merge branch 'master' into spinny-sign 2019-11-08 19:59:08 +08:00
James R
b157c21a35 There's some whitespace... 2019-11-07 14:56:42 -08:00
lachwright
cf39e181bb Display Eggman more frequently during skin roulette 2019-11-05 01:33:09 +08:00
lachwright
5e03d40b33 New end-of-level signpost logic 2019-11-04 16:28:44 +08:00
MascaraSnake
1c1fefe25f Merge branch 'linedef-153' into 'master'
Dynamic Sinking Platform (for Red Volcano Zone)

See merge request STJr/SRB2Internal!401
2019-10-25 16:56:19 -04:00
MascaraSnake
46d105dd53 Some basic code hygiene: Remove references to the air bob code being "old" or "outdated" 2019-10-25 22:55:10 +02:00
MascaraSnake
0ef50557c2 Merge branch 'spinbust' into 'master'
Make spinbust behavior consistent with other bustable blocks

Closes #254

See merge request STJr/SRB2Internal!398
2019-10-23 02:51:47 -04:00
Nev3r
dbd8e563b4 Merge branch 'soundex_tweak' into 'master'
Tweak Line Special 414's behavior

See merge request STJr/SRB2Internal!382
2019-10-22 05:31:22 -04:00
James R
e15ffd2bc8 Optimize texture/patch/png/flat flat caching
SIGSEGV in the case where you have a TEXTURES entry, but no texture or flat,
has been fixed.

Missing flats for now yield a HOM instead of REDFLR as well.

OpenGL also doesn't work yet. And I'm too tired for now to bother with it.
2019-10-20 20:24:03 -07:00
lachwright
a2f0f61d75 Merge branch 'master' into linedef-153 2019-10-20 20:20:41 +08:00
MascaraSnake
1604e4d439 Make spinbust behavior consistent with other bustable blocks and rename FF_ONLYKNUX to FF_STRONGBUST 2019-10-19 22:20:48 +02:00
MascaraSnake
2f9a13d5e0 Make shatter blocks intangible to the player, but solid to everything else 2019-10-14 20:15:03 +02:00
Nev3r
c935797a34 Encapsulate the second behavior branch into an else.
When a tag is provided, the tagged sector-related branch is run exclusively now. This prevents playing the same sound again from the caller object's origin and other unwanted behaviors.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-10-14 16:30:20 +02:00
MascaraSnake
ad4033ec9e Make shatter blocks solid 2019-10-13 23:08:54 +02:00
lachwright
2daeb81f36 Create new linedef special type 153: Dynamically Sinking Platform 2019-10-12 04:23:11 +08:00
toaster
a5704238c7 Resolve #242 by adding SF_TRIGGERSPECIAL_HEADBUMP, enabled by ML_EFFECT2.
Also, readd SF_INVERTPRECIP, which was done in a random branch last year and then lost because it was never merged. Enabled by ML_EFFECT1.
2019-10-06 14:34:25 +01:00
Jaime Passos
6553d816ea Merge remote-tracking branch 'origin/master' into flats-png_port 2019-09-09 14:12:28 -03:00
toaster
0392cfc158 Merge branch 'spawnobject-linedef' into 'master'
Linedef type 461 (Spawn Object)

See merge request STJr/SRB2Internal!304
2019-09-08 18:58:50 -04:00
Steel Titanium
1bf78a2423
Move mobj_t declaration to top of the block 2019-09-08 17:14:47 -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
Jaime Passos
0cc553be5f Merge remote-tracking branch 'jimita/flats-png' into flats-png_port 2019-09-06 19:20:45 -03:00
Steel Titanium
10ea0f21ae
Fix spawning within random range 2019-08-29 23:56:15 -04:00
Steel Titanium
8655b8f1f1
Add spawn object linedef special.
Note that spawning a object within a random range does not fully work yet and crashes the game
2019-08-29 01:57:58 -04:00
Monster Iestyn
eacc589ae1 Added quick validity checks for three linedef executor specials that require a player mobj to be the triggerer (432, 434 and 437) 2019-08-20 20:31:28 +01:00
Alam Ed Arias
cebc1d46f0 All C files should a newline at the end 2019-08-07 12:39:51 -04:00
toaster
8a0f1e7ed4 Merge branch 'ending' into 'master'
ENDINGS

See merge request STJr/SRB2Internal!264
2019-08-03 16:23:51 -04:00
toaster
9f34a7aa82 Merge branch 'bossenable' into 'master'
Boss enable linedef (type 449)

See merge request STJr/SRB2Internal!272
2019-08-03 16:23:22 -04:00
toaster
8f729c33d3 Merge branch 'linedef-award-rings' into 'master'
New award rings linedef executor

See merge request STJr/SRB2Internal!263
2019-08-03 16:21:58 -04:00
toaster
f3baac8577 Fix the minor issues since steel's busy 2019-08-03 08:04:02 -04:00
toaster
105df2395d MI made a good argument for bossdisabled not being conditional on fromnetsave. 2019-08-03 12:09:18 +01:00
toaster
8d56133425 Fix old Special Stage failure sounds not always playing. 2019-08-02 20:02:55 +01:00
toaster
7cb02985f4 * Added boss enable linedef (type 449).
- Frontside x offset = boss ID (determined via parameter for all bosses)
	- Noclimb flag = disable mode
	- Bosses don't do a fuckin' THING - no state updates, no player searches, no sounds, no lua, no nothin' - and it's all totally netsynced.
	- The only thing they WILL do is flash infinitely if you hurt them, but this is designed for stuff where you're not meant to be in the same room as the boss til it's activated.
	- All bosses of all IDs are automatically enabled on mapload, then if an enable mode version of this linedef is present in the map for a specific boss id, that boss id is automatically disabled.
* Add multi-boss support via parameter for:
	- All bosses' MT_BOSSFLYPOINT search
	- Boss 5's waypoint search
	- Oldbrak's waypoint search (this one's for you, jood)
2019-07-31 23:17:17 +01:00
toaster
47554b57e4 * Made the evaluation screen even more attractive.
* Fixed an unused variable warning in lua_skinlib.c.
- fixed post-level cutscenes playing when you get game over in MP (still kinda on-topic)
Also with apologies to MI:
- golden egg statue mode for tutorial, since the grey doesn't contrast enough with the blue and lime green
- fixed closed captions for replaced player sounds being incorrect
- fixed closed captions overlapping tutorial text
2019-07-29 14:55:36 +01:00
Steel Titanium
60ffef9830 More simplified code
Also delay is in tics, per MS' request.
2019-07-24 21:18:07 -04:00
Steel Titanium
6c2ef839c1 New award rings linedef executor 2019-07-18 22:42:46 -04: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
dc71e297bb Fixed mixed-code-and-declaration, shadowed variables, etc ...and the compiler doesn't like P_AddEachTimeThinker being inline anymore for some reason, oh well 2019-07-09 21:15:12 +01:00
Monster Iestyn
c1bea02f03 Merge branch 'rainfixesmkII' into 'master'
Accidentially broke rain in the rainfixes branch (oh, the irony!)

See merge request STJr/SRB2Internal!249
2019-07-09 14:24:14 -04:00
MascaraSnake
d3d24bc0bd Removed the "disable" linedef effect, since it's useless now that the character flags are gone 2019-07-08 22:58:31 +02:00
MascaraSnake
5b741d8232 Simplified checks for ML_NETONLY and ML_NONET 2019-07-08 22:56:00 +02:00
toaster
a65925aeca Realised I accidentially broke rain in the rainfixes branch (oh, the irony!), realised it needed a few additional P_RecalcPrecipInSector calls to properly work with the new arena, and increased its speed.
If you must, I can cherrypick this into another branch - but it's required for this one, at least.
2019-07-08 13:39:21 +01:00
MascaraSnake
a5074a846b Implemented a skin-based linedef executor trigger 2019-07-03 09:19:29 +02:00
MascaraSnake
5cec737985 Remove character-specific flags, replace them with net-only/no-net flags 2019-07-03 00:10:22 +02: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
Jaime Passos
28566008b4 Merge remote-tracking branch 'upstream/master' into flats-png 2019-06-25 16:02:35 -03:00
toaster
28a61f2f3c Correct some oversights where drawangle was incorrectly ignored. 2019-06-22 17:07:18 +01:00
Monster Iestyn
149a8bb760 Merge branch 'public_next' 2019-06-21 22:13:39 +01:00
Monster Iestyn
50e8f13c03 Fix FOF slopes briefly glitching on level load in software mode, by ensuring the FOFs' target sectors have hasslope set on creation 2019-06-17 18:46:51 +01:00
Monster Iestyn
0fd3668111 Revert "Merge branch '144-scrolltweaks' into 'master'"
This reverts merge request !213
2019-06-04 17:34:59 +00:00
Jaime Passos
dbb1575a6d Animations, better flat management. 2019-05-21 15:24:26 -03:00
Jaime Passos
714c997aac Support for patches and textures to be used in place of sector flats
Still a work in progress.
2019-05-21 00:28:52 -03:00
mazmazz
89ab777c40 Merge remote-tracking branch 'origin/master' into menu-execs 2019-05-02 18:47:43 -04:00
Nev3r
a9110c0645 Fixed more mobj thinker iterator oversights and removed all mobj thinker function checks
Mobjs got their own thinker list after all, and disappearing thinkers are automatically purged from their lists and sent to the limbo list.
So it's safe to assume all thinkers inside the mobj list must be mobjs.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 16:39:57 +02:00
Nev3r
d264d06879 Merge branch 'slopethinkers' into thinkerlists
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:47:34 +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
Nev3r
7c17ed0aa6 Things spawning over copied slopes now properly align on the new plane
While I believe the opposite behavior was intentional at first, it has proven to be problematic and makes alignment a tedious task for copied planes.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 19:03:50 +02:00
Nev3r
f7d1515888 Perform dynamic slope thinking before other thinkers.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-18 14:43:34 +02:00
Nev3r
1d401d8481 Merge branch '144-scrolltweaks' into 'master'
Resolve "Let scrollers and wind/current affect front sector if untagged, and use texture offsets as parameters if different from 0"

Closes #144

See merge request STJr/SRB2Internal!213
2019-04-05 06:41:11 -04:00
Nev3r
fec991dedb Implement displacement-based polyobject rotation.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-05 11:50:59 +02:00
Nev3r
aa43f8b3bf Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into 144-scrolltweaks 2019-03-16 08:14:29 +01:00
mazmazz
9ec98c588f Merge branch 'public_next' 2019-03-14 22:15:34 -04:00
mazmazz
2c75d4da69 Fix custom fade source bug for Change Music linedef 2019-03-13 19:53:16 -04:00
Nev3r
ae9f8856ac Override vectorial magnitude with front X offset, if provided; takes the line's lengths into account otherwise, as usual.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-03-13 12:24:47 +01:00
Nev3r
cd3ea897c3 Dealt with no-tag business:
* Wind/current pushers affect front sector if left untagged.
* Plane scrollers affect front sector if left untagged.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-03-13 11:13:54 +01:00
Monster Iestyn
9effa134d2 resolve the conflict in p_spec.c 2019-01-07 17:02:05 +00:00
mazmazz
1aacfee80c Merge branch 'public-musicplus-le-changemusic' into public-musicplus-core 2019-01-02 03:47:51 -05: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
mazmazz
b7bb570f97 Merge remote-tracking branch 'public-gl/master' into public-musicplus-core 2019-01-01 10:41:40 -05:00
Monster Iestyn
cb53bc8afe remove redundant wadfile loop within wadfile loop for ANIMDEFS code 2018-11-27 23:05:33 +00:00
MonsterIestyn
b53cd70201
Merge branch 'next' into PK3-BackportNext 2018-11-26 18:56:51 +00:00
Monster Iestyn
1b2aea81dc Merge branch 'master' into next 2018-11-25 20:39:17 +00:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Nev3r
6f5e3d42ff Merge branch 'PK3-Backport' into 'PK3-BackportNext'
Pk3 backport

See merge request Nev3r/SRB2!1
2018-11-24 06:02:19 -05:00
Nev3r
cb0c31fa9a Final touches
-Backported multiple per-wad/pk3 ANIMDEFS supported now, just like TEXTURES.
-Removed now-unused function.

Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-24 09:26:52 +01:00
Nev3r
0487558a98 Add missing tweaks
Also remove a test printf.

Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-23 17:58:45 +01:00
mazmazz
dcac157ccd Merge remote-tracking branch 'origin/master' into menu-execs 2018-11-20 18:31:30 -05:00
mazmazz
f3be97a95a Allow changing titlemap's cameraref via Line 422 Cut-Away View; change music too 2018-11-18 02:41:35 -05:00
mazmazz
cf834f3503 Line 457: Calculate input angle tolerance correctly 2018-11-14 10:13:39 -05:00
mazmazz
6c69dd1f78 Merge branch 'master' into text-prompts 2018-11-13 11:12:44 -05:00
mazmazz
75c4a96e69 NextTag implementation
* Adjust named tag implementation to be more portable
* Next page adjustments
2018-11-13 00:13:36 -05:00
mazmazz
7deeb8bac4 Stub netgame support; ignore bots on linedef special 2018-11-10 15:34:56 -05:00
mazmazz
e1e94c3af2 Added page tags and find page by tag
* Added tutorial mode defines to this branch
2018-11-10 09:32:53 -05:00
mazmazz
311cb27818 Close text prompt upon level load 2018-11-04 22:32:47 -05:00
mazmazz
722da815ea Move Line 449 to Line 459; allow post exec tag by either Back X offset or line tag 2018-11-04 22:32:47 -05:00
mazmazz
1ca8fca602 Changed Line 449 post exec tag to line tag 2018-11-04 22:32:46 -05:00
mazmazz
57d9e0aef6 TextPrompt: Implement player blocked controls and post-close run line 2018-11-04 22:32:46 -05:00
mazmazz
5f1052729c Line 449 param rearranging 2018-11-04 22:32:46 -05:00
mazmazz
7778507a70 Basic TextPrompt line action implemented 2018-11-04 22:32:45 -05:00
mazmazz
63e5cfecff Linedef Exec 449 Control Text Prompt - beginnings 2018-11-04 22:32:45 -05:00
mazmazz
4fc335a26b Line 458: Only do disable operation if MFE_TRACERANGLE is set 2018-11-04 16:48:18 -05:00
mazmazz
cf6a6991cb Trigger line exec by whether mobj is facing its tracer
* MFE_TRACERANGLE
* Thing 758 MT_ANGLEMAN
* mobj thinker behavior
* Line Exec 457/458 Enable/Disable
2018-11-04 16:28:25 -05:00
Monster Iestyn
291ebf302c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/lua_script.c
#	src/p_user.c
#	src/sdl/i_system.c
#	src/v_video.c
#	src/w_wad.c
2018-10-10 14:51:34 +01:00
Monster Iestyn
8196c59557 Merge branch 'master' into next 2018-10-09 22:55:55 +01:00
toaster
b1e02467bf Weather is already run client-side. What if we ran it render-side, for major performance gains? This commit will answer all your questions - and more! 2018-10-07 15:00:58 +01:00
mazmazz
31343be41b foundrover ffloor_t -> boolean 2018-09-19 20:11:30 -04:00
mazmazz
5e1b4272c1 Initialize foundrover to NULL (for debug checking) 2018-09-19 17:50:05 -04:00
mazmazz
24938473a5 Linedef exec FOF specials: Move logic into for (rover =...) block so procedure happens on every FOF match 2018-09-19 17:49:03 -04:00
mazmazz
81ad8f0681 Merge branch 'master' into le-fadefof 2018-09-18 17:11:33 -04:00
mazmazz
2e0e0a3856 musicplus-le-changemusic 2.2 -> 2.1 backport 2018-09-18 15:28:57 -04:00
mazmazz
c45d523e8f 420: Don't interrupt existing light fade on duration timing except EFFECT5
(cherry picked from commit 3b957c32517a8f5148940c0067af7e88a51d1fee)
2018-09-18 11:08:33 -04:00
Digiku
a036c42973 Merge branch 'colormap-overhaul-fade' into 'master'
Linedef Exec 455 Fade Colormap, 456 Stop Fading Colormap

See merge request STJr/SRB2Internal!191
2018-09-18 11:06:09 -04:00
mazmazz
3cdd904fbc Merge branch 'colormap-overhaul-fade' into le-fadefof 2018-09-18 11:05:30 -04:00
mazmazz
899e8ef2a0 Merge remote-tracking branch 'origin/master' into le-fadefof 2018-09-18 10:52:03 -04:00
Digiku
a32304c9d5 Merge branch 'colormap-overhaul-change-ldef' into 'master'
Linedef Exec 447: Change Colormap relative value calc

See merge request STJr/SRB2Internal!190
2018-09-18 10:49:54 -04:00
Digiku
843ed289a6 Merge branch 'polyobj-fade' into 'master'
Linedef Exec 492: Fade PolyObject

See merge request STJr/SRB2Internal!192
2018-09-18 10:48:46 -04:00
mazmazz
c5ea6b5efe MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -04:00
mazmazz
6567872229 492: Don't interrupt existing polyobj fader unless EFFECT5 2018-09-18 07:31:17 -04:00
mazmazz
9778cc2ad5 455: A line break 2018-09-18 07:30:37 -04:00
mazmazz
56ee711f33 455: Commented out, but allow existing fade overlap of 2 tics (or speed*2) 2018-09-18 07:30:35 -04:00
mazmazz
64b96c7192 455: Don't interrupt current color fading 2018-09-18 07:29:21 -04:00
mazmazz
27aa357053 453: A line break 2018-09-18 07:28:30 -04:00
mazmazz
f5b25c91f5 453: Commented out, but allow existing fade overlap of 2 tics (or speed*2) 2018-09-18 07:28:28 -04:00
mazmazz
5b16590ba2 453: Don't interrupt current FOF fade unless EFFECT5 2018-09-18 07:27:47 -04:00
Digiku
6f1a44432b Merge branch 'colormap-overhaul' into 'master'
Colormap code overhaul

See merge request STJr/SRB2Internal!189
2018-09-17 11:24:14 -04:00
mazmazz
1321ab9d92 453: Extra parameter for Add_ColormapFader 2018-09-15 20:40:17 -04:00
mazmazz
809646e7fe 453: Try ResetFakeFloorFader if condition again 2018-09-15 02:24:44 -04:00
mazmazz
a85953a903 453: P_ResetFakeFloorFader stray & address if condition 2018-09-15 02:16:54 -04:00
mazmazz
5585edf459 453: Mixed D+C fixes; unused param cast in P_FadeFakeFloor 2018-09-15 01:05:21 -04:00
mazmazz
ca4a94eca5 492: Mixed D+C fix 2018-09-15 00:56:46 -04:00
mazmazz
1db8aee539 455: Mixed D+C fix 2018-09-15 00:53:21 -04:00
mazmazz
e8a5735f75 Merge branch 'lightfade-ticbased' into le-fadefof 2018-09-14 08:42:02 -04:00
mazmazz
761150b12d 455: Fog flag fix for fading 2018-09-13 12:18:10 -04:00
mazmazz
3fc8ed5a9f 455: Set timing by either Back Y or Front Y, but not line length 2018-09-13 10:53:03 -04:00
mazmazz
94939f6613 455: Don't override fadergba on default/no colormap init (~BOUNCY) 2018-09-13 10:43:41 -04:00
mazmazz
5aa66f8872 455: Add speed increment timing (~EFFECT4) to FadeColormap 2018-09-13 10:43:32 -04:00
mazmazz
539092bec5 491, 492: Allow BLOCKMONSTERS raw translucency value in floorheight 2018-09-13 00:26:49 -04:00
mazmazz
4ab3a986f3 492 PolyObj Fade, 491 PolyObj Translucency, 490 PolyObj changes
* 490: Set proper render flags according to spawnflags
* 491: Add relative calc (EFFECT3) and Front X alpha param (DONTPEGTOP)
* 492:
    * Tic-based (EFFECT4) and speed timing
    * Add relative calc (EFFECT3) and Front X alpha param (DONTPEGTOP)
    * Set proper render flags according to spawnflags
    * Fix OpenGL >= NUMTRANSMAPS render bug
2018-09-13 00:06:11 -04:00
mazmazz
2f9e014aab 490 PolyVisible: Set proper spawn render flags instead of RENDERALL 2018-09-13 00:06:06 -04:00
mazmazz
63a3125df2 420: A parenthesis 2018-09-12 21:49:03 -04:00
mazmazz
46067f0579 Merge remote-tracking branch 'origin/lightfade-ticbased' into lightfade-ticbased 2018-09-12 21:35:46 -04:00
mazmazz
41fe080a68 420: Allow Back Y Offset for timing parameter 2018-09-12 21:32:12 -04:00
mazmazz
05c91f1f81 455: Change to side->colormap_data 2018-09-12 20:52:05 -04:00
mazmazz
17a78ba674 Merge branch 'colormap-overhaul-change-ldef' into colormap-overhaul-fade 2018-09-12 20:47:00 -04:00
mazmazz
1fcfa7fcf1 Merge branch 'colormap-overhaul' into colormap-overhaul-change-ldef 2018-09-12 20:46:02 -04:00
mazmazz
f7ff440250 Add colormap_data to side_t and store colormaps there on setup 2018-09-12 20:43:48 -04:00
mazmazz
ad9ef5d593 Merge errors 2018-09-12 17:39:30 -04:00
mazmazz
c58e9b0bae Merge remote-tracking branch 'origin/master' into colormap-overhaul 2018-09-12 17:28:22 -04:00
mazmazz
9fb9b44383 Fade FOF colormap support 2018-09-12 16:59:35 -04:00
mazmazz
42f1f0acdb P_ResetFakeFloorFader: Argument order error with dolighting 2018-09-12 12:40:56 -04:00
mazmazz
d2f636d5a2 T_FadeColormap: Fade subtraction error 2018-09-12 11:33:44 -04:00
mazmazz
51a2982226 455: TFERLINE - Set target sector's colormap first to control backsector's colormap 2018-09-12 11:21:49 -04:00
mazmazz
d85019b4e4 More NULL failsafes 2018-09-12 11:11:22 -04:00
mazmazz
8190433b71 456: Missing break 2018-09-12 09:42:51 -04:00
mazmazz
4d9925e8cf 447: ResetColormapFader when changing colormap explicitly 2018-09-12 09:09:10 -04:00
mazmazz
c4079dfca9 Merge branch 'colormap-overhaul-change-ldef' into colormap-overhaul-fade 2018-09-12 09:07:55 -04:00
mazmazz
14b71bdbc5 Fade colormap special 455! And stop fade colormap 456
* Added T_FadeColormap thinker and netsync
* Added sector_t fadecolormapdata property
2018-09-12 09:06:38 -04:00
mazmazz
cb2ac9b4d3 Formatting 2018-09-12 08:06:44 -04:00
mazmazz
4d26cf6330 447: Allow relative calc from backside colormap (ML_TFERLINE) 2018-09-12 07:55:47 -04:00
mazmazz
6f0b28c48f 447: Allow alternate alpha without relative calc 2018-09-12 07:38:51 -04:00
mazmazz
9a388af8ec 447: AddColormap no longer returns chained colormap, so chain it ourselves 2018-09-12 07:31:10 -04:00
mazmazz
6059b8edc9 447: Extra params for R_AddColormaps 2018-09-12 07:06:58 -04:00
mazmazz
54669a6cc8 Use R_AddColormaps method in 447 relative calc 2018-09-11 21:03:13 -04:00
mazmazz
a1a05c9972 Add relative color change to 447 2018-09-11 19:11:50 -04:00
mazmazz
b9e4cd40ca Use RGB/RGBA macros in 447 code 2018-09-11 17:32:43 -04:00
mazmazz
5523fc3a8d Account for NULL colormaps in alpha-only code 447 2018-09-11 17:07:50 -04:00
mazmazz
bb6cf6a807 Added alpha-only, relative calc, and offset params to 447 Change Colormap 2018-09-11 16:50:35 -04:00
mazmazz
9a52816cb4 Use percentage calc instead of interval decrement for tic-based fading 2018-09-11 10:28:24 -04:00
mazmazz
c468451a63 Merge branch 'lightfade-ticbased' into le-fadefof 2018-09-11 10:08:13 -04:00
mazmazz
75267dfa2c Merge remote-tracking branch 'origin/change-colormap-ldef' into colormap-overhaul-change-ldef 2018-09-10 21:06:28 -04:00
mazmazz
7e9297d06e Savegame netsync for sector colormaps; add spawn_midmap and co for comparison 2018-09-10 16:50:27 -04:00
mazmazz
e0d8a6eec0 Get rid of bottommap, midmap, topmap 2018-09-10 16:16:04 -04:00
mazmazz
88d9da79e6 Move tic-based to EFFECT4 2018-09-10 12:00:44 -04:00
mazmazz
acea0bfd68 Move tic-based to EFFECT4, relative calc to EFFECT3 2018-09-10 12:00:15 -04:00
mazmazz
148e3ff538 Use ML_NOCLIMB for FF_TRANSLUCENT handling in type 452 2018-09-10 10:17:39 -04:00
mazmazz
8e75fe50db Default to using back offset params if back linedef exists; else fallback to distance-based params 2018-09-10 10:11:27 -04:00
mazmazz
da5a7a013d Add type 452 Set FOF Alpha
* Fade FOF moved to type 453
* Stop Fade FOF moved to type 454
2018-09-10 10:09:02 -04:00
mazmazz
02a94dc941 Add distance-based params and make default (ML_DONTPEGBOTTOM to use back offsets) 2018-09-10 09:49:52 -04:00
mazmazz
b8da218b61 Add relative destvalue calc (ML_EFFECT4)
* rover->alpha init fixes with invisible FOFs
2018-09-10 09:49:00 -04:00
mazmazz
002f1bad8f Savegame netsync for sector colormaps; add spawn_midmap and co for comparison 2018-09-10 09:01:09 -04:00
mazmazz
5136293f62 Store sectornum/ffloornum as UINT32, not INT32 2018-09-09 23:52:36 -04:00
mazmazz
9cc186441b Fix fog visual glitch with fading 2018-09-09 22:14:24 -04:00
mazmazz
573e1d0017 Replace firsttic with timer increment 2018-09-09 21:01:00 -04:00
mazmazz
0202bbcfd3 Replace firsttic with timer increment 2018-09-09 20:45:12 -04:00
mazmazz
ea2276eb07 Fix tic-based bug returning early 2018-09-09 19:57:41 -04:00
mazmazz
43ae628adc Cap lightlevel fading at spawn_lightlevel (don't make darker) 2018-09-09 19:44:35 -04:00
mazmazz
c3c4a251f1 Added tic-based logic to FOF fade (ML_EFFECT5) 2018-09-09 19:31:32 -04:00
mazmazz
80a4a03f8e Finalize light level on fade finish (not forced stop)
* Added destlightlevel property to fade_t
* Fixed dotranslucent, dolighting, docollision order weirdness in function calls
2018-09-09 17:20:35 -04:00
mazmazz
368f96e605 Fade FOF lighting fixes; properly calculate destlightvalue 2018-09-09 15:41:30 -04:00
mazmazz
ca58fba24a Merge branch 'lightfade-ticbased' into le-fadefof 2018-09-09 13:44:30 -04:00
mazmazz
aeb45132c5 Revert "Snap light level to software values (32 levels)"
This reverts commit cc26d03c93.
2018-09-09 13:43:00 -04:00
mazmazz
675f69afea Flag re-organization
* Change alternate param flag from BLOCKMONSTERS to DONTPEGBOTTOM
* Change tic-based flag from NOCLIMB to EFFECT5
2018-09-09 09:34:36 -04:00
mazmazz
032f95803d Merge branch 'master' into change-colormap-ldef 2018-09-09 08:40:38 -04:00
mazmazz
5032f783d7 Don't add a thinker if alpha is already equal 2018-09-09 08:10:45 -04:00
mazmazz
3f4656e57e Polyobject Fade logic 2018-09-09 08:08:48 -04:00
mazmazz
0049f904c0 Add light fading to FadeFakeFloor
* Declare P_RemoveLighting in header for p_spec.c use
2018-09-08 23:44:29 -04:00
mazmazz
4ca38dc8a1 Merge branch 'lightfade-ticbased' into le-fadefof 2018-09-08 23:03:18 -04:00
mazmazz
cc26d03c93 Snap light level to software values (32 levels)
* New properties `exactlightlevel` and `lightlevel` in `lightlevel_t`
2018-09-08 23:01:35 -04:00
mazmazz
1e1b01c157 Implemented tic-based light fading
* ML_BLOCKMONSTERS specifies destvalue and speed by texture offsets
* ML_NOCLIMB toggles tic-based logic
* Added props `duration`, `interval`, and `firsttic` to `lightlevel_t`
2018-09-08 22:10:51 -04:00
mazmazz
81acf82e99 Re-render lighting when setting FF_EXISTS 2018-09-08 20:49:32 -04:00
mazmazz
069cc480c1 Add dolighting flag to FadeFakeFloor thinker 2018-09-08 20:41:45 -04:00
mazmazz
3eb7c3931e When detecting invisible FOFs, don't include light blocks 2018-09-08 20:08:48 -04:00
mazmazz
3858a93cfa Initialize invisible FOF alpha to 1 on first fade 2018-09-08 09:31:23 -04:00
mazmazz
fa0918c2f1 Handle rendering flags for invisible FOFs 2018-09-08 09:08:32 -04:00
mazmazz
fcc7180d5c Enable FF_CUTSOLIDS handling and updating by sector->moved 2018-09-08 08:59:17 -04:00
mazmazz
47c9bf2ebc Disable FadeFakeFloor for laser block 2018-09-08 01:33:12 -04:00
mazmazz
dc964738eb Never handle FF_EXISTS if FF_BUSTUP 2018-09-08 01:23:15 -04:00
mazmazz
66dc84509a Fix Mario block triggering during ghost fade 2018-09-08 01:12:34 -04:00
mazmazz
0b365d0d08 Initial polyobj fade skeleton 2018-09-07 15:27:18 -04:00
mazmazz
4147773d0c Merge branch 'master' into le-fadefof 2018-09-06 18:12:24 -04:00
Monster Iestyn
2b0ce807c7 Fix mixed d+c in NiGHTS trigger code, fix stray "INT8" in A_ConnectToGround 2018-09-04 17:04:24 +01:00
mazmazz
6d97a10273 Merge remote-tracking branch 'origin/master' into nightsplus-le 2018-08-29 11:06:00 -04:00
mazmazz
4b07246565 Add "finalize" flag to Type 453 Stop Fade 2018-08-18 06:04:11 -04:00
mazmazz
773d8bdb8d P_ResetFakeFloorFader: Unclamp rover->alpha from software levels 2018-08-18 05:31:41 -04:00
mazmazz
d94608fa10 Add alpha clamping so OpenGL conforms to Software's translucent levels 2018-08-17 17:07:07 -04:00
mazmazz
bf5efe6457 Cleanup fade fake floor code 2018-08-17 15:59:34 -04:00
mazmazz
45ae6efbad Refactor function and variable names; change defaults for fake floor fader line flags 2018-08-17 15:25:25 -04:00
mazmazz
020b18b84b Revised and re-organized P_DoFakeFloorAlpha fading procedure
* dosolid routine now refers to spawnflags
2018-08-17 14:49:33 -04:00
mazmazz
677f19ede6 Move fading thinker to ffloor_t.fadingdata 2018-08-17 02:28:52 -04:00
mazmazz
2e252cb905 Move fadingdata (fade_t thinker) to line_t 2018-08-17 01:11:04 -04:00
mazmazz
931297e2d7 Rename dofadeinonly to doghostfade
* Ghost fading: when transitioning to/from alpha=0, don't set solid/tangibility until fade is finished
2018-08-16 22:27:26 -04:00
mazmazz
61c84be704 Fix bonus time quirk where lines are run if player->marebonuslap is 0
* Bonus laps start at 1, so if a line is looking for bonus laps, they should only be run at >= 1.
2018-08-14 16:08:21 -04:00
mazmazz
c3703cfc24 Comments 2018-08-14 14:57:58 -04:00
mazmazz
3f312ce114 Make Bonus Time Start executor into a general Egg Capsule Touch executor
* Entrance/exit flags
* Enough/not-enough-rings flags (with "doesn't matter" line option)
2018-08-14 12:00:37 -04:00
mazmazz
1cb68a615e Make LE Ring triggers accept spheres for NiGHTS levels 2018-08-14 11:10:10 -04:00
mazmazz
62a6fe845d Add ML_BOUNCY flag to Bonus Time executor to execute BEFORE the capsule is destroyed and player has enough spheres 2018-08-14 10:48:50 -04:00
mazmazz
004cbe6a3d Whitespace 2018-08-13 22:10:16 -04:00
Monster Iestyn
8d0a44899a Merge branch 'master' into change-colormap-ldef 2018-08-10 20:05:04 +01:00
mazmazz
b8eb282367 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into le-fadefof-remove-storedthinker 2018-08-10 15:03:07 -04:00
mazmazz
d97c25f6dd Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into nightsplus-le
# Conflicts:
#	src/p_setup.c
#	src/p_user.c
2018-08-10 13:44:47 -04:00
Monster Iestyn
89478a7ba4 Added linedef 447 as the change colormap linedef exec special.
IMPORTANT NOTE: UNTESTED
2018-06-14 21:51:21 +01:00
toaster
1242180667 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into hardcoding-time-again 2018-06-09 19:36:48 +01:00
Monster Iestyn
14d49b8bf1 Merge branch 'public_next'
# Conflicts:
#	src/d_main.c
#	src/d_netfil.c
#	src/p_setup.c
2018-06-09 19:35:36 +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
Monster Iestyn
f061ffa00e Stop Each Time trigger linedefs and object-carrying scrollers from doing anything with FOFs without FF_EXISTS 2018-05-21 20:02:30 +01:00
MascaraSnake
2e8cb9582a Consistency: Pointer declarations next to the variable name instead of the type 2018-05-15 09:39:52 +02:00
MascaraSnake
975a318460 Change to linedef type 7 (flat alignment): If no tag is given, affect front sector. 2018-05-14 19:34:22 +02:00
mazmazz
f903d01bc1 Add ML_DONPTEGTOP flag to Nights LE
* Nightserize: Run only if player is already NiGHTS
* DeNightserize: Run only if >0 players are NiGHTS
2018-04-07 07:33:07 -04:00
mazmazz
ff6fe27748 Merge branch 'master' into nightsplus-le 2018-04-07 07:09:41 -04:00
mazmazz
bd6276a39e Allow immediate alpha setting when speed = 0; refactoring
* Separate fade logic into P_FindFakeFloorsDoAlpha, P_DoFakeFloorAlpha
* Change INT32 destvalue and speed to INT16
2018-04-07 07:09:04 -04:00
mazmazz
27ca70d069 checkpoint 2018-04-07 05:52:01 -04:00
mazmazz
afa0aae131 Refactor flag handling toggles 2018-04-06 23:14:48 -04:00
mazmazz
73e4cab1e4 Little adjustments
* Swap MF_NOCLIMB and MF_EFFECT1
* Implement if Front Y Offset < 1 (== 0), then set alpha immediately
2018-04-06 22:34:45 -04:00
mazmazz
8d3c9d91f1 Merge branch 'le-fadefof' into le-fadefof-remove-storedthinker 2018-04-06 22:22:42 -04:00
mazmazz
3427c304f4 Merge branch 'master' into le-fadefof 2018-04-06 22:22:23 -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
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
c1c6b4746f Better fading comments 2018-03-31 00:10:46 -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
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
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
56d7f9ed38 Nights LE checkpoint 2018-03-30 14:22:59 -04: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
Monster Iestyn
0c89853425 created W_IsLumpWad as a shortcut for the "is the lump a WAD" checking in the code getting map data lumps 2018-01-10 16:51:23 +00:00
Monster Iestyn
9c13cee9f0 Hack up support for pk3s in Custom FOF setup, fix stray ! preventing blockmap from loading 2018-01-09 22:22:10 +00:00
Monster Iestyn
61176ee736 Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
#	src/sdl12/macosx/Srb2mac.xcodeproj/project.pbxproj
#	src/win32/win_vid.c
2018-01-02 17:32:24 +00:00
toasterbabe
a1620b709e Fix airbob sectors fucking up when below 0 z-height. 2017-12-20 21:13:24 +00:00
Alam Ed Arias
7f4424b4a0 whitespace cleanup 2017-11-02 23:13:34 -04:00
toasterbabe
efc4d2f81d * Make multiple ANIMDEFS lumps get loaded.
* Refactor the multiple TEXTURES lump code.
2017-10-28 17:12:08 +01:00
toasterbabe
50d6208913 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-10-21 14:28:44 +01:00
wolfy852
b298c7a541 Fix p_spec.c and r_things.h, get the compiler to shut up
This compiles with no errors or warnings, but hasn't been tested yet. Please review/test when you can.
2017-10-07 17:18:25 -05:00
wolfy852
93584f6811 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into FileManagement 2017-10-07 14:52:40 -05:00
Monster Iestyn
302d0425e0 Incinerated WinCE 2017-09-29 23:25:34 +01:00
Alam Ed Arias
f1a347e55f Merge branch 'public_next' into master 2017-09-28 11:01:20 -04:00
Alam Ed Arias
ec125628ab Merge branch 'master' into next 2017-09-28 10:16:35 -04:00
Alam Ed Arias
2ccd397d11 Build: kill GCC 7's implicit-fallthrough warning 2017-09-28 09:39:47 -04:00
Nevur
77d7b1495c Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-09-24 14:52:41 +02: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
toasterbabe
8175e0836e Remove all trace of harddefs, considering we use an ANIMDEFS lump in srb2.srb now. 2017-08-09 22:09:06 +01:00
toasterbabe
a3767fedac Clean out code/update comments relating to TEXTUREn, TEXTURE (SOC), PNAMES, and ANIMATED. 2017-08-08 22:03:37 +01:00
Nevur
8b64a6eef3 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-08-08 10:41:33 +02: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
Monster Iestyn
c10c3d0441 Merge branch 'alignment_v2' into 'master'
Consistent flat alignment

Does what it says on the tin. Consistent between the three different plane drawers:

* Software flat (previously the only one working as intended)
* Software sloped (took a lot of work)
* OpenGL flat and sloped (worked reasonably well but used different signs for some reason)

Check out root/!LatestSRB2Files/srb2win_branch_flat2.exe, root/toaster/flatalignment.wad and any in-dev DSZ1 to test it all out.

See merge request !78
2017-08-05 16:04:41 -04:00
Monster Iestyn
cfbe180312 Merge branch 'public_next' 2017-07-25 17:17:22 +01:00
Monster Iestyn
821692fbf7 This was my fault, whoops 2017-07-24 17:53:18 +01:00
Monster Iestyn
0eaebb16fc Check if existing animdefs have the same type as the animdef we're parsing 2017-06-25 18:17:05 +01:00
Nevur
d5e38c087d Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement
# Conflicts:
#	src/p_setup.c
2017-06-25 14:51:37 +02:00
Monster Iestyn
e3f627120f Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
#	src/p_mobj.c
2017-06-23 17:19:06 +01:00
Monster Iestyn
44f33e6732 Merge branch 'touching_fixes' into 'next'
Fixes with respect to sector special touching and slopes

Some important stuff.

* SF_TRIGGERSPECIAL_TOUCH now actually works. Previously, it abandoned the loop early if ANY bounding sector didn't have that sector flag, which it likely didn't - only checking one extra sector's worth of FOFs. Also, the teleport handling there is more robust, and actually bails out if you teleport, instead of just awkwardly continuing through the loop.
* SF_TRIGGERSPECIAL_TOUCH now works for each time thinkers, too.
* Fixed a bug with being able to go under lava because P_CheckSolidLava doesn't take slopes into account.
* Also, P_CanRunOnWater supports slopes now too.
* Quicksand supports slopes and reverse gravity now.
* Space Countdown supports slopes now.

Also, an experiment behind a #define which currently isn't turned on:

* UNDER A #define, "SECTORSPECIALSAFTERTHINK", WHICH IS CURRENTLY TURNED OFF, BUT I WILL WANT TO TURN ON IN INTERNAL: Moved sector touch handling to P_PlayerAfterThinker (from P_PlayerThinker before movement). Allows for being able to trigger moving slope sectors that are going down, most specifically lava (didn't matter in RVZS in 2.1 because you could clip through the sides and go underneath the lava, causing damage - a sloped testwad version of that prevented going underneath.) Also fixes one-frame standing on deathpits before you die. Basically means sector triggers effectively happen one tic earlier, since it's after movement.

See merge request !131
2017-06-22 17:30:57 -04:00
Monster Iestyn
997eb58c93 Fix invalid sfx numbers supplied to linedef type 414 crashing the game
Had to make P_MobjReadyToTrigger non-inline for this fix though, because the compiler was being stupid
2017-06-07 18:24:06 +01:00
Nevur
d4c324eb30 PK3 stuff again.
-Now can load map WAD files inside Maps/ directory, but they must only contain map data explicitly!

Known problems:
-There's an issue causing a crash with palettes and colormaps in PK3s.
-SS_START and SS_END don't work now. Will check later.
-Standalone lumps for maps in the Maps/ folder don't work anymore; perhaps I should keep that functionality?

Notes:
-It's now a mashup of something dumb that I wanted to do and yet piling hacks again.
-A lot of code duplicity with map lump loading functions.
2017-05-16 21:10:02 +02:00
Monster Iestyn
9238b2d50f Merge branch 'level-specials-setup-stuff' into 'master'
Level specials setup stuff

Some changes to level setup, largely inconsequential for gameplay but maybe helpful for Lua scripting:

* gravity, weather, and some other internal variables are set to their defaults before loading things, so their values from a previous level don't affect mobj spawning potentially
* Tag lists are also initialised before loading things, so that tag-based search functions (such as P_FindSpecialLineFromTag) can be used internally for the maces and particle generator. This should probably extend to Lua as well
* the level header "forcecharacter" no longer recognises "255" as "None" anymore. This is because it no longer takes skin numbers (as of whenever that change was added... version 2.0?), and level headers are auto-cleared when edited anyway.

See merge request !88
2017-05-08 15:15:50 -04:00
Monster Iestyn
7f936d8b57 Add CONS_Alert warning as toaster suggested 2017-05-01 19:34:53 +01:00
Monster Iestyn
bdb3c2ea0e extrainfo now determines "skybox ID", a number between 0 and 16 to identify the viewpoint or centerpoint
also I made that change skybox linedef exec special I guess (linedef type 448)
2017-04-26 18:16:01 +01:00
Monster Iestyn
13cb656f0b Whoops forgot this 2017-04-24 20:43:58 +01:00
Monster Iestyn
4e96f624e7 Split off part of P_SpawnSpecials into a new function called P_InitSpecials
This allows tag lists, gravity, weather, and the "CheckFor" vars to be initialised before running P_LoadThings or P_ResetDynamicSlopes, in case they could affect mobj spawning or cause a netgame desync somehow by carrying over the previous level's values
2017-04-24 20:33:39 +01:00
Monster Iestyn
80637b336b Starting work, noclimb inverts direction (haven't tested if it actually works or not yet) 2017-04-11 22:33:04 +01:00
toasterbabe
dca98e9eb8 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into alignment_v2 2017-04-08 21:04:03 +01:00
Monster Iestyn
bfaf60ceef Merge branch 'public_next' 2017-04-05 21:05:57 +01:00
Alam Ed Arias
4fa188cf01 build: fix 64-bit builds 2017-04-01 17:22:24 -04:00
Monster Iestyn
bf29b5c6d1 Print warning message in console if line->next is NULL 2017-04-01 20:16:48 +01:00
toasterbabe
837291c013 Woops, need to ensure functional equivalence to what came before. 2017-03-31 17:08:46 +01:00
toasterbabe
d5ba29eb9b Get plane scrolling effects working the same on and off slopes in both renderers again. 2017-03-31 16:45:47 +01:00
toasterbabe
d62a628346 Consistency between software off-slope and GL on+off-slope flat alignment! (Software slopes are now MORE broken with respect to this, but that comes later.) 2017-03-30 22:48:13 +01:00
Alam Ed Arias
5feccaad2a Merge branch 'next' into touching_fixes 2017-03-29 16:55:06 -04:00
toasterbabe
99f13c88ae Made jump damage flag application less hacky. 2017-03-18 21:06:06 +00:00
toasterbabe
b2c0930807 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-03-14 18:12:47 +00:00
toasterbabe
7aeeb278fe Increased space in pflags (because we were getting VERY close to full capacity), which I will re-organise when this branch is closer to completion.
* PF_NIGHTSMODE is now CR_NIGHTSMODE as part of player->powers[pw_carry]. This is because it's mutually exclusive to every other "carry" type.
* PF_SUPERREADY is dead because it literally just checked for all 7 emeralds and 50 rings. That's it. You couldn't even appreciably alter its presence with Lua. That logic has been placed back in P_SuperReady.
2017-03-14 18:11:17 +00:00
toasterbabe
75ac351940 It's 2am, I'll upload the exe and player.dta to the ftp later.
* Super sprites are now deliniated via an additional S_SUPER lump between S_START and S_END. Above are normal sprites, below are super sprites. Handled internally via FF_SPR2SUPER.
* Sprite2 numbers are now appropriately limited for the data type that stores them.
* SPR2_SPIN is now SPR2_ROLL, SPR2_DASH is now SPR2_SPIN and SPR2_PEEL is now SPR2_DASH. Makes more sense, right?
2017-03-11 02:09:01 +00:00
Monster Iestyn
d0861a084a Merge branch 'master' into crumble-FOF 2017-01-25 19:38:07 +00:00
Monster Iestyn
fb8140312b Merge branch 'flat_alignment_revamp' into 'master'
Revamps of several dated linedef type effects

Felt like being productive so made some things I hate suck less.

Linedef type 7 (flat alignment) now works as follows.
* Linedef angle (from v1 to v2) is flat angle.
* Origin of flat is manipulated to match v1's coordinates - unless ML_NOKNUX is flagged, in which case uses frontside x and y offsets as flat offsets instead.
* ML_NOSONIC prevents changing floor.
* ML_NOTAILS prevents changing ceiling.
* Both of the above flags at once prints a warning.
* (THZ and probably a few other maps need updating.)

Linedef type 540 (friction) now works as follows.
* Controlled by x offset instead of length - offset of -100 is maximum iciness, offset of +483(!!!) is the maximum sludginess BUT things are scaled such that +100 is about the maximum sludginess any reasonable human being would want in a level, 0 is ORIG_FRICTION)
* Not reliant on a sector special to function (can be applied solely by tag to in-map sectors or solid FOF control sectors)
* Uses less memory, perform less calculations, and not bug out objects which just happen to use movefactor for something
* PHYSICS CHANGE: Low friction surfaces actively impede your acceleration (and make your animation speeds faster to give off that Looney Tunes out-of-control effect)
* (ACZ and Frozen Hillside needs updating.)

Sector types 1 and 3 in section 3 no longer do anything.

Linedef type 3 (zoom tube) now works as follows.
* Abs of frontside x offset is speed in units of FRACUNIT/8.
* Abs of frontside y offset is waypoint sequence number.
* Effect 4 flag rotates the player to match the waypoint direction (same as before).
* (ERZ needs updating.)

Linedef type 11 (rope hang) now works as follows.
* Abs of frontside x offset is speed in units of FRACUNIT/8.
* Abs of frontside y offset is waypoint sequence number.
* Effect 1 flag makes rope transfer one-way. (same as before)
* No climb flag makes rope static. (same as before)
* (ACZ and maybe ERZ need updating.)

Linedef type 258 (laser) is almost the same as before, but has altered functionality.
* Its flashing is less obnoxious. (56.25% to 68.75% instead of 100% to 0%, at half the speed)

Linedef type 14 (Bustable block parameters) is new, and works as follows.
* Tagged to the control sector of a block that is likely to be busted (via executor or collision, doesn't matter)
* Concatenation of frontside textures is MT_ object type to spawn, defaults to MT_ROCKCRUMBLE1 if not present
* Sound played when being busted is object type's activesound
* Frontside x offset is spacing (in fracunits) of spawned particles, defaults to 32<<FRACBITS
* Frontside y offset is the fuse of spawned particles in tics, defaults to 3*TICRATE, if set to -1 fuse is not set
* Effect 1 flag makes particles "fly out" horizontally and vertically from the center of the FOF

Sector types 7 through 15 in section 3 no longer do anything.

Linedef type 250 (Mario Block) is almost the same as before, but has new functionality and is slightly different in another way.
* No Climb flag turns it into a brick block (set on Custom FOF via presence of FF_SHATTERBOTTOM - busts when hit from the bottom, player hits their head/fist/whatever, no more upwards momentum)
* Effect 1 flag makes it an invisible block (set on Custom FOF via absence of (FF_SOLID|FF_RENDERALL|FF_CUTLEVEL) - intangible from every side except the bottom. Becomes visible and tangible when it's hit once)
* Only updates side textures when moving down or stationary, not whilst moving up - more fidelity to the source material, less processing on the CPU, everyone wins.
* If FOF master linedef has a backside, then: [If there's items in it the FOF's flats are set to that of the backside sector's ceiling, otherwise the floor.] Otherwise, no flat change.

Linedef type 4 (Speed Pad parameters) now works as follows.
* Frontside x offset is speed in fracunits.
* Effect 4 flag doesn't center the player. (same as before)
* Effect 5 flag sends them off in rolling frames.
* Frontside upper texture is sound to play on launch, defaults to sfx_spdpad when not given

Sector type 6 in section 3 no longer does anything.

Object type 757 is changed as follows, and no longer works on its own - see Linedef type 15 for more details.
* Tag via its angle field
* Number of objects to spawn per tic around it via its z field, if zero then just spawn at center
* Is flipped if given MTF_OBJECTFLIP.
* (ERZ and Seraphic Skylands - if we use that map - needs updating)

Linedef type 15 (Fan particle spawner parameters) is new, and works as follows.
* Tag is tag of object(s!)
* Object type set via concatenation of frontside textures, MT_PARTICLE is default
* The length of the linedef is the radius the particle is spawned out (zeroed if z field is 0)
* Frontside x offset is speed upwards
* Frontside y offset is number of degrees to turn each tic (zeroed if z field is 0)
* Frontside floor and ceiling heights are the heights in which the particle is bound through some fun mathematics

A_ParticleSpawn is changed, too.
* Object type is now changed through actor->threshold instead of var1 to support Linedef type 15.

Test executable uploaded at /toaster/srb2win_branch_flatalignment.exe on the ftp.

Test file uploaded at /toaster/flatalignment.wad on the ftp.

Breaks compatibility with 2.1 so put in internal.

See merge request !29
2017-01-24 16:49:43 -05:00
Monster Iestyn
4b97333ed7 Merge branch 'plane-displacement' into 'master'
Plane displacement

Basic support for plane displacement, no netplay support as of writing but this is what Nev3r wanted moreorless at least.

Linedef types 66-68 are the plane displacement specials; 66 = move floor only, 67 = move ceiling only, 68 = both

Front sector = control sector
Tag = tag of target sectors to be moved whenever the control sector floor moves
Linedef length = movement factor relative to control sector movement, 256 = 1:1 with control sector. 128 is half as much, 512 is twice as much, etc.

Whenever the control sector floor moves (not ceiling, never ceiling), the selected planes of the tagged sectors all move (mind, they have a tic delay due to how it all works, it's not perfect really). No support for reverse speeds yet sorry.

EDIT: oh, btw, test exe and test map are included in my folder on the FTP (srb2win-plane-displacement.exe and plane-disp-test.wad, respectively)

See merge request !61
2017-01-24 14:29:38 -05:00
toasterbabe
da42165169 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp 2017-01-16 17:14:58 +00:00
Alam Ed Arias
94025ae947 Merge branch 'master' into lua-additions 2017-01-13 16:47:57 -05:00
Monster Iestyn
edba7834ae Merge branch 'master' into plane-displacement 2017-01-10 14:52:57 +00:00
Monster Iestyn
166c6746cd Merge branch 'public_next' 2017-01-08 16:05:32 +00:00
Monster Iestyn
22020dda03 Merge branch 'savegame-hotfixes' into 'next'
Savegame hotfixes

Yes, this another netgame related fix! Named this "savegame hotfixes" rather than "ERCZ hotfix" or the like in advance of the fact we probably need a general branch for other $$$.sav fixes?

Anyway, fixes included in by this branch:
* ERCZ's lava falls now act as expected rather than being stuck in place for the map's duration, fixing all other known desynchronisation issues known in the map for the time being (yay)
* Changing sector tags in a map no longer causes joiners to netgames to have their SRB2 application stop responding etc
* Player names should no longer turn red in the console in gametypes outside of CTF/Team Match if a resynch occurs (not $$$.sav related, but it's related to netplay so I lumped it in anyway)

See merge request !150
2017-01-07 18:32:07 -05:00
Monster Iestyn
ad30c41179 Fix egg guard shields being endlessly killed by lasers. Simply make sure they have health first before killing them! 2017-01-07 18:02:55 +00:00
Monster Iestyn
5358359ddb Added the thinker creation function and the thinker itself, we now have functional plane displacement thinkers! 2017-01-05 20:29:48 +00:00
Monster Iestyn
b768c4b961 Sync sector tags and tag list variables properly
Dunno who thought it was a good idea to lump tag, nexttag and firsttag together in $$$.sav, but that meant changing sector tags caused SRB2 to stop responding since it lead to the tag lists being broken
2017-01-03 20:48:39 +00:00
Monster Iestyn
f8961d396f Initial commit of what I've done so far, DOES NOT COMPILE 2016-12-13 22:42:47 +00:00
Monster Iestyn
73b8790946 Merge branch 'master' into lua-additions 2016-11-24 19:35:06 +00:00
toasterbabe
05f58df709 Some changes and corrections.
* Cleaner A_ParticleSpawn code.
* Removed several hacks with Mario blocks, and corrected a mistaken assumption with when the FOF's thinker is being applied.
* Made the flashing of T_LaserFlash even less obnoxious.
2016-11-22 16:21:30 +00:00
toasterbabe
e34ef54166 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp
# Conflicts:
#	src/info.c
#	src/p_mobj.c
2016-11-20 19:21:10 +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
toasterbabe
a2dabd7041 Fixed a bunch of things MI pointed out. 2016-10-31 14:03:53 +00:00
toasterbabe
2d50dd1fd1 A bunch of fixes that allow for proper handling of triggerspecial_touch. Not perfect, but I don't have any more time to spend tonight. 2016-10-31 00:02:38 +00:00
Monster Iestyn
304f4625e5 Merge branch 'master' into crumble-FOF 2016-10-29 17:06:34 +01:00
Monster Iestyn
82d29b59c1 Merge branch 'master' into damage-control 2016-10-29 17:05:59 +01:00
Monster Iestyn
39f837e56f Merge branch 'master' into lua-additions 2016-10-29 17:05:31 +01:00
toasterbabe
b9e7abe7ff Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-29 15:59:45 +01:00
Monster Iestyn
f4ddaf51ab Merge branch 'public_next' 2016-10-29 15:37:53 +01:00
Monster Iestyn
98e43ac0d9 Fixed ffloor_t Lua variables not actually saving to $$$.sav
Stupid overlooked semicolons
2016-10-25 16:15:17 +01:00
toasterbabe
76ff26e6fb Revert "Thorough jumpdamage setting."
This reverts commit 8720252059.
2016-10-23 15:53:12 +01:00
toasterbabe
c18c014bef Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-23 14:47:37 +01:00
toasterbabe
8720252059 Thorough jumpdamage setting. 2016-10-23 14:42:37 +01:00
Monster Iestyn
6473953c8c Merge branch 'master' into lua-additions 2016-10-22 14:59:01 +01:00
Monster Iestyn
1d70a9d9d2 Merge branch 'master' into crumble-FOF 2016-10-22 14:58:37 +01:00
Monster Iestyn
dd5fa80839 Merge branch 'master' into damage-control 2016-10-22 14:55:06 +01:00
Monster Iestyn
326ad8a14f Merge branch 'wallscrollbylinedef-fix' into 'master'
Wallscrollbylinedef fix

See commit description.

See merge request !43
2016-10-22 09:52:07 -04:00
Monster Iestyn
3bc29919c2 Merge branch 'public_next' 2016-10-20 16:38:39 +01:00
Yukita Mayako
aa3e52f05e Fix ANIMDEFS parsing to allow overwrite.
ANIMATED and ANIMDEFS are now processed in reverse order,
and duplicate definitions in ANIMDEFS are dropped.
2016-10-19 03:24:26 -04:00
Monster Iestyn
fc44e53056 Merge branch 'slopes-even-more-fixes' into 'next'
Even more slope-related fixes

What it says on the tin pretty much:

Currently included fixes:
* Pusher specials applied to FOFs did not properly account for slopes applied to the bottom plane; this probably was just a minor slipup that appeared on adding the support in the first place, I take it? (some waterfall in the last section of SUGOI's Fudge Canyon is the only place I can think of offhand where this bug is noticable)

See merge request !114
2016-10-18 17:19:13 -04:00
toasterbabe
ace44df8b4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-16 01:32:05 +01:00
toasterbabe
aa8a454ea9 Turning some shield attributes into flags means that environmental protection and ring-pulling can be more elegantly handled. As a consequence, the S3 shields now have all their passives, and are just waiting on me to give them actives (two of which don't have the necessary sprites for...) 2016-10-16 01:23:00 +01:00
Monster Iestyn
8931a6f0fb Merge branch 'public_next' 2016-10-15 22:31:56 +01:00
Nevur
c558900c61 Deleted the Add_WallScroller function entirely from code.
Removed commented out instance using the function.
2016-10-07 18:56:10 +02:00
Monster Iestyn
0fb89c620d Merge branch 'master' into damage-control 2016-09-30 21:05:44 +01:00
Monster Iestyn
155882d2f1 Merge branch 'master' into crumble-FOF 2016-09-30 20:15:20 +01:00
Monster Iestyn
2f85704d87 Merge branch 'master' into lua-additions 2016-09-30 20:14:53 +01:00
toasterbabe
8f181abbb2 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp
# Conflicts:
#	src/p_mobj.c
#	src/p_spec.c
2016-09-29 13:34:13 +01:00
toasterbabe
5f4f6fdac8 Public remake of a merge request I shouldn't have put in Internal in the first place. 2016-09-26 18:35:13 +01:00