Commit graph

1091 commits

Author SHA1 Message Date
MascaraSnake
24de2968a3 Some fixes for the linedef alpha field 2020-02-10 20:26:29 +01:00
James R
57492347ed Don't I_Error on startup files only if a file was added twice 2020-02-01 19:32:08 -08:00
Louis-Antoine
d02c4c0cc7 Add "resendgamestate" command 2020-01-31 15:57:04 +01:00
Jaime Passos
cf7b4d826a Remove redundancy 2020-01-26 23:46:07 -03:00
Monster Iestyn
ef53672deb Merge branch 'master' into next
# Conflicts:
#	src/g_game.c
2020-01-26 19:23:05 +00:00
MascaraSnake
cedfc02f19 Implement linedef alpha field (replaces specials 900-908) 2020-01-26 12:24:52 +01:00
MascaraSnake
d947558576 Use tag instead of angle for skyboxes 2020-01-25 10:26:38 +01:00
MascaraSnake
5656d77c82 Use tag instead of angle for polyobject spawn points and anchors 2020-01-25 10:15:20 +01:00
MascaraSnake
37375972e2 Use tag field to setup vertex slopes 2020-01-25 10:01:01 +01:00
MascaraSnake
261f049f6c Add mapthing tag field (not used yet) 2020-01-25 09:52:13 +01:00
MascaraSnake
60cde39042 Rename some UDMF fields whose names have different meanings in other UDMF implementations 2020-01-24 23:02:42 +01:00
MascaraSnake
97c58957ee Merge branch 'next' into udmf-next 2020-01-24 22:38:26 +01:00
Louis-Antoine
b0b22b53d6 Ignore disconnected players in tag gametypes
Disconnected players do not become IT at round start.

If all non-ITs are disconnected, the round ends.

If all ITs are disconnected, one of the non-ITs
becomes IT, or the round ends if in Hide & Seek.
2020-01-23 19:58:13 +01:00
Louis-Antoine
f209721ded Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into keep-body
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2020-01-22 03:57:22 +01:00
Louis-Antoine
412ba38a81 Refactor player spawning code a little 2020-01-22 03:19:15 +01:00
James R
2373a0aa83 Actually actually match the old behavior and check existing levelflats in P_AddLevelFlatRuntime BRUH 2020-01-21 16:47:47 -08:00
James R
d90c0b8fbd Don't check "Too many flats in level" with P_AddLevelFlatRuntime
Also moved the debug down in case anyone uses that.
2020-01-21 15:35:07 -08:00
James R
9cd101c68d Revert "Fix Ploadflat closing the game with "Too many flats in level" error message"
This reverts commit ea129f701c.
2020-01-21 15:35:07 -08:00
Jaime Passos
f4a976f3be Merge remote-tracking branch 'origin/next' into pictureformats 2020-01-20 16:53:41 -03:00
James R
f93ddc3f37 Merge branch 'keywords-back-again' into 'next'
Level header keywords

See merge request STJr/SRB2!656
2020-01-16 20:05:24 -05:00
Alam Ed Arias
a2b1b6289c use a byte, not a ptr2int with memset 2020-01-12 18:59:35 -05:00
Tatsuru
5d33ca42cf Expose colorization to mappers and SOC 2020-01-11 20:40:57 -03:00
MascaraSnake
b163316cbf Merge branch 'udmf-next' into stringargs 2020-01-11 16:17:53 +01:00
MascaraSnake
4745264a42 Merge branch 'next' into udmf-next
# Conflicts:
#	src/p_slopes.c
2020-01-11 16:16:57 +01:00
MascaraSnake
bac379a7a3 Merge branch 'udmf-next' into stringargs 2020-01-11 16:03:38 +01:00
MascaraSnake
661c44b260 Merge branch 'udmf-vslopes' into 'next'
Add textmap vertex slope support

See merge request STJr/SRB2!633
2020-01-11 10:02:51 -05:00
MascaraSnake
63adb235e7 Merge branch 'linedef-args' into 'udmf-next'
Add UDMF linedef arguments and make slope specials use them

See merge request STJr/SRB2!643
2020-01-11 10:00:07 -05:00
MascaraSnake
f0d663ea90 Adapt setup of linedef type 443 (Call Lua function) to UDMF 2020-01-11 15:38:50 +01:00
MascaraSnake
2046f524c7 Fix incorrect cast 2020-01-10 23:32:31 +01:00
MascaraSnake
ba7a1c0375 Some minor cleanup 2020-01-10 19:56:29 +01:00
Jaime Passos
c1acdfe52e Merge remote-tracking branch 'origin/next' into pictureformats 2020-01-10 04:11:26 -03:00
MascaraSnake
682e683a71 Merge branch 'fakeplanes-colormap' into 'next'
Don't create colormap data out of sidedef text for fake planes linedef

See merge request STJr/SRB2!648
2020-01-09 15:04:33 -05:00
James R
735289502c Call it KEYWORDS 2020-01-08 14:41:38 -08:00
James R
74364b84f9 Revert "Oh right, the keywords..."
This reverts commit a00dfcf420.
2020-01-08 14:26:47 -08:00
MascaraSnake
c49232c1f1 Merge branch 'fakeplanes-colormap' into stringargs 2020-01-08 20:10:43 +01:00
MascaraSnake
faac4ea545 Don't create colormap data out of sidedef text for fake planes linedef (the colormap data isn't even used anymore) 2020-01-08 09:28:37 +01:00
MascaraSnake
2d7b43c244 Implement linedef string arguments 2020-01-08 08:42:35 +01:00
fickleheart
c133e645f7 Merge remote-tracking branch 'upstream/next' into next-newcontrols 2020-01-07 23:43:43 -06:00
Jaime Passos
5a2ad5c2f3 Merge remote-tracking branch 'origin/next' into pictureformats 2020-01-07 16:10:25 -03:00
Jaime Passos
1358507785 Fix OpenGL 2020-01-07 14:07:14 -03:00
Jaime Passos
5b5f371b0c R_GetTextureFlat -> R_GetLevelFlat 2020-01-07 13:27:59 -03:00
Jaime Passos
f85476c723 Move texture stuff to its own file 2020-01-07 12:35:10 -03:00
Jaime Passos
edb0bbcd6d Cleanup, NOW 2020-01-06 20:16:48 -03:00
Jaime Passos
a1af6b9134 Picture formats test 2020-01-06 18:22:23 -03:00
MascaraSnake
fff0b3e66c Adapt setup of copy slope linedef to UDMF 2020-01-06 17:39:39 +01:00
MascaraSnake
ddb1a19490 Adapt setup of vertex-based slopes to UDMF 2020-01-06 15:34:28 +01:00
MascaraSnake
031e3d93b2 Merge branch 'next' into linedef-args 2020-01-06 14:46:47 +01:00
MascaraSnake
1cbf7aba0d Merge branch 'move-map-copying' into 'next'
Reorder map loading

See merge request STJr/SRB2!635
2020-01-06 04:24:39 -05:00
MascaraSnake
98c4221a24 Adapt setup of line-based slopes to UDMF 2020-01-05 14:31:56 +01:00
Alam Ed Arias
641ac72b3f Copy and Paste error 2020-01-04 18:34:16 -05:00
MascaraSnake
41a74bede1 Merge branch 'move-map-copying' into linedef-args 2020-01-04 23:32:29 +01:00
MascaraSnake
062bd7eef8 Merge branch 'next' into linedef-args 2020-01-04 23:10:39 +01:00
Nev3r
72f23a1075 Add missing initialization on vertex heights for binary maps. 2020-01-04 23:01:01 +01:00
Nev3r
a161bfa619 Merge branch 'remove-vertex-z-mk2' into udmf-vslopes
# Conflicts:
#	src/lua_maplib.c
#	src/p_setup.c
#	src/r_defs.h
2020-01-04 22:59:42 +01:00
Nev3r
9999be2d6e Remove vertex_t's z variable. 2020-01-04 18:29:02 +01:00
fickleheart
f8a3e3b898 Merge remote-tracking branch 'origin/next' into next-newcontrols 2020-01-04 09:57:09 -06:00
MascaraSnake
1e42dc7ee5 Move P_ProcessLinedefsAfterSidedefs into P_LoadMapData, but move map data copying after everything else 2020-01-04 11:08:05 +01:00
Nev3r
faf127ff88 Add vertex slope spawning function.
Rename P_ResetDynamicSlopes() to P_SpawnSlopes().
2020-01-04 10:39:45 +01:00
Nev3r
0b21a34ddd Add vertex height vars into the vertex struct, and their textmap parsing. 2020-01-04 10:24:42 +01:00
MascaraSnake
26bb0b3c67 Compressing sidedefs can break both special effects and netgame syncing, so let's get rid of it 2020-01-03 21:50:27 +01:00
MascaraSnake
7b5f2f09c0 Merge branch 'textmap-parser' into 'next'
Textmap parser

See merge request STJr/SRB2!604
2020-01-03 04:14:38 -05:00
MascaraSnake
cd243c06f0 Merge branch 'textmap-parser' into linedef-args 2020-01-02 22:54:51 +01:00
MascaraSnake
dc0c17dbb8 P_LoadExtendedSubsectorsAndSegs: Print size_t with %s 2020-01-02 22:28:32 +01:00
MascaraSnake
68da1856da Implement linedef args (unused and untested so far) 2020-01-02 12:23:14 +01:00
MascaraSnake
5ba179ad7c Fix two bugs in extended segs loading, and add some error checking while I'm at it 2020-01-02 09:51:07 +01:00
MascaraSnake
02acf6222b P_LoadExtendedSubsectorsAndSegs: Slightly simplify the seg vertex reading code 2020-01-02 00:32:29 +01:00
MascaraSnake
2da9c3cf81 P_LoadTextmap: Bail out if certain mandatory fields are not set 2020-01-01 23:52:30 +01:00
MascaraSnake
4f26a8e73a Move MAXFLATSIZE define to p_spec.h so p_spec.c doesn't have to redefine it 2020-01-01 16:01:07 +01:00
MascaraSnake
9cda82d896 Rework textmap parser to always read a parameter's value, even if it doesn't recognize the parameter 2020-01-01 15:52:59 +01:00
MascaraSnake
6724b11c36 Whoops 2020-01-01 15:11:39 +01:00
MascaraSnake
a41c640559 Move shared parts of sidedef initialization into P_InitializeSidedef 2020-01-01 15:10:41 +01:00
MascaraSnake
fe198b8a32 Check if certain mandatory linedef and sidedef fields are set, and use fallback values if not 2020-01-01 14:27:01 +01:00
MascaraSnake
b59532bcca Setup repeatcnt in P_LoadSidedefs instead of P_ProcessLinedefsWithSidedefs, since UDMF can set it directly 2020-01-01 14:13:24 +01:00
MascaraSnake
24d68ba07e P_LoadTextmap: Set defaults for all linedef and sidedef fields that UDMF is allowed to set 2020-01-01 13:40:17 +01:00
Jaime Passos
b41cd59e51 Revert "Merge branch 'software-clownery' into 'master'"
This reverts merge request !578
2019-12-31 23:40:17 +00:00
fickleheart
b22de48c03 Merge branch 'next' into next-newcontrols
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2019-12-31 12:58:36 -06:00
Jaime Passos
cd1cc9a222 Fix desynch 2019-12-31 14:00:25 -03:00
Jaime Passos
7b54846a02 Merge remote-tracking branch 'origin/master' into software-clownery 2019-12-30 23:21:42 -03:00
Jaime Passos
181a366d4a Merge remote-tracking branch 'origin/next' into respawndelaygametyperule 2019-12-30 18:39:31 -03:00
James R
fc8c0f8a9a Merge remote-tracking branch 'origin/master' into next 2019-12-30 13:16:53 -08:00
MascaraSnake
013f1f70d9 -Set defaults for vertex and mapthing fields in textmap
-Fix P_InitializeSector being called too early (band-aid fix for now, will reorganize this properly later)
2019-12-30 21:23:00 +01:00
fickleheart
e0f35d207f Convert analog/directionchar cvars into 2-long arrays 2019-12-30 14:01:14 -06:00
fickleheart
085c39128f Save separate camera settings for standard/simple modes 2019-12-30 12:10:38 -06:00
MascaraSnake
05a97530c1 Add support for flat offset and rotation fields in UDMF 2019-12-30 17:28:10 +01:00
MascaraSnake
72bb673209 Some minor refactoring of textmap loading code 2019-12-30 16:28:22 +01:00
Jaime Passos
7676f11112 Merge remote-tracking branch 'origin/next' into respawndelaygametyperule 2019-12-30 12:09:45 -03:00
Nev3r
99aace19f5 Merge branch 'textmap-parser' of https://git.magicalgirl.moe/STJr/SRB2/ into textmap-parser 2019-12-30 14:48:10 +01:00
Nev3r
4a5498473c Make P_LoadMapData() a return a boolean as well as P_LoadMapFromFile(); if they fail to load, they return false, and thus P_SetupLevel() will also return false.
TextmapCount() also now returns false if brackets are left open inside a textmap.
2019-12-30 14:47:48 +01:00
Nev3r
f9d6e26558 Replace INT16_MAX with LUMPERROR in lump check. 2019-12-30 14:45:39 +01:00
Nev3r
7ae2143c91 Add a disclaimer when loading textmaps/UDMF. 2019-12-30 14:42:41 +01:00
MascaraSnake
ea87af0076 Refactor TextmapParse 2019-12-30 14:33:41 +01:00
Nev3r
c6c00aa7d5 Tweak TextmapCount()'s bracket detection to account for multiple levels, if that ever happens. 2019-12-30 13:46:37 +01:00
MascaraSnake
4aee4e3684 Refactor TextmapCount 2019-12-30 13:27:05 +01:00
Nev3r
e43df2993f Move TextmapFixFlatOffsets() above P_LoadTextmap() so that it can compile. 2019-12-30 12:33:24 +01:00
Nev3r
f9aabe753e Refactor TextmapFixFlatOffsets(). 2019-12-30 12:31:55 +01:00
Nev3r
f49b8de5fd Adapt P_MakeMapMD5() for textmaps. 2019-12-30 12:07:54 +01:00
Nev3r
ed114f655b Fixed missing M_GetToken(NULL); 2019-12-30 12:07:02 +01:00
Nev3r
aaef412823 Add basic textmap support; currently crashes when trying to free the virtres, at vres_free(). 2019-12-30 11:33:22 +01:00
James R
97c5e63dc3 Initialize 'supported' array 2019-12-29 16:52:39 -08:00
MascaraSnake
136c656cc0 Properly pass nodes data along to functions that need it without breaking the original data pointer 2019-12-29 22:11:15 +01:00
MascaraSnake
81422c4e6d Revert "Pass along virtnodes to extended nodes loading functions to make sure virtnodes->data is moved correctly"
This reverts commit cfc6428569.
2019-12-29 21:57:47 +01:00
MascaraSnake
cfc6428569 Pass along virtnodes to extended nodes loading functions to make sure virtnodes->data is moved correctly 2019-12-29 21:42:16 +01:00
MascaraSnake
e88556efe1 P_GetNodetype: The virtnodes pointer is supposed to be the output parameter, so we have to pass a pointer to that pointer 2019-12-29 21:00:20 +01:00
MascaraSnake
dd02fe0d78 P_GetNodetype: Set virtnodes for traditional Doom format 2019-12-29 20:43:41 +01:00
MascaraSnake
882e8ef7b8 Separate shared parts of seg initialization into P_InitializeSeg 2019-12-29 20:24:14 +01:00
MascaraSnake
36f86077da Move loading of extended subsectors and segs into its own function 2019-12-29 19:54:04 +01:00
MascaraSnake
c287b86fab Get rid of duplicated code in the extended seg parsing 2019-12-29 19:04:50 +01:00
MascaraSnake
3839e95d63 Move reading of extra vertices into separate function 2019-12-29 18:07:44 +01:00
MascaraSnake
45ca959f97 -Move reading of actual extended nodes into separate function, cutting down on code duplication in the process
-Fix a typo in the segs reading
2019-12-29 17:52:49 +01:00
MascaraSnake
9d009edfc8 Move copying of the nodes signature out of the else case 2019-12-29 15:59:15 +01:00
MascaraSnake
0aed60f4de Separate retrieval of nodetype and nodes lump into its own function (Function. Not file. Sorry.) 2019-12-29 15:50:53 +01:00
MascaraSnake
8032054a47 Separate loading of extended nodes into its own file 2019-12-29 15:15:32 +01:00
Nev3r
389b9e35c4 Add XNOD, XGLN and XGL3 BSP formats recognition and support. 2019-12-29 14:17:51 +01:00
MascaraSnake
abdfe60aa7 Store custom FOF flags directly in back toptexture field at map load instead of re-reading the sidedefs data later on 2019-12-29 12:01:41 +01:00
MascaraSnake
cfadbb0f36 -Add linedef pointer to side_t, so sidedefs are able to tell if they're a front or back sidedef during setup
-Fix a broken condition during setup of texture fields for the change music linedef
2019-12-29 09:39:50 +01:00
Jaime Passos
e63f77ea1a Merge remote-tracking branch 'origin/next' into respawndelaygametyperule 2019-12-28 21:39:38 -03:00
James R
90e56bcdf9 Merge branch 'levelload-refactor' into 'next'
Hack P_SetupLevel into little pie- actually just clean it up a bit

See merge request STJr/SRB2!587
2019-12-28 19:37:06 -05:00
MascaraSnake
bd7765227e Rename P_GroupLines to the more apt P_LinkMapData 2019-12-28 17:40:08 +01:00
MascaraSnake
7e5b87ce42 Fix debug prints 2019-12-28 17:37:32 +01:00
MascaraSnake
d38ee51d49 Separate setting of sector field defaults into P_InitializeSector 2019-12-28 17:29:58 +01:00
MascaraSnake
54fe91b1cc Refactor P_SetupLines into P_InitializeLinedef 2019-12-28 17:21:31 +01:00
MascaraSnake
1ca25224c2 Fix P_SetupLines printing the wrong line number 2019-12-28 17:05:04 +01:00
MascaraSnake
85de3614cb Standardize P_LoadVertices and P_LoadSidedefs 2019-12-28 16:58:48 +01:00
MascaraSnake
86d1fb73f4 Split P_LoadLineDefs2 into P_ProcessLinedefsWithSidedefs and P_CompressSidedefs 2019-12-28 16:49:56 +01:00
MascaraSnake
21b7507aee Reorganize and partially rename map loading functions 2019-12-28 16:40:35 +01:00
MascaraSnake
b1854b5c96 Remove stray #endif 2019-12-28 14:50:00 +01:00
MascaraSnake
5590343043 Rename P_LoadThingsOnly to P_RespawnThings to make it clearer that it doesn't actually reload the things from the file, it just respawns them. 2019-12-28 14:13:26 +01:00
MascaraSnake
3971067cf3 Remove some old #if 0'd code 2019-12-28 14:03:48 +01:00
MascaraSnake
303e6cee4a Merge branch 'next' into mapload-refactor 2019-12-28 13:59:24 +01:00
MascaraSnake
ceca99e3c5 Fix accidental removal of sector_t's spawn_lightlevel initialization 2019-12-28 13:58:23 +01:00
MascaraSnake
e9376a8353 Cleaned up some more stuff in P_LoadLevel() 2019-12-28 12:48:32 +01:00
MascaraSnake
c059146937 Move more P_LoadLevel parts into subfunctions 2019-12-28 11:37:56 +01:00
MascaraSnake
319ed09c00 Rename P_SetupLevel to the more accurate P_LoadLevel and separate out some of its content into subfunctions 2019-12-28 11:30:39 +01:00
Jaime Passos
3b341245f1 Same deal, but for starposts. 2019-12-27 17:14:56 -03:00
Jaime Passos
f8eed7171a add G_CompetitionGametype(void) 2019-12-27 12:28:00 -03:00
Jaime Passos
9613bdeca6 use GTR_DEATHMATCHSTARTS 2019-12-27 12:14:33 -03:00
Jaime Passos
56e94182d5 P_SetupCamera funny 2019-12-27 02:07:13 -03:00
Alam Ed Arias
61a0197339 Merge branch 'next' into gametype-clownery 2019-12-26 14:48:04 -05:00
Jaime Passos
649455c2d0 R_CalculateSegDistance stuff... 2019-12-26 01:58:38 -03:00
Nev3r
a932b54b26 Merge branch 'mapdataload_refactor' into 'next'
Mapdataload refactor

See merge request STJr/SRB2!568
2019-12-25 06:21:49 -05:00
Nev3r
c4a017ddf0 Move flat caching code to the map data load function. 2019-12-25 12:05:40 +01:00
Jaime Passos
7e5ec552ee Merge remote-tracking branch 'origin/next' into gametype-clownery 2019-12-25 06:09:00 -03:00
MascaraSnake
f11caefed7 Merge branch 'spawnhoopsandrings_refactor' into 'next'
Hack P_SpawnHoopsAndRings into little pieces

See merge request STJr/SRB2!572
2019-12-25 03:00:07 -05:00
Jaime Passos
3622829504 Merge remote-tracking branch 'aaaaaaaa/next' into gametype-clownery 2019-12-24 17:55:46 -03:00
James R
0780e48f86 Merge branch 'titlecard2' into 'next'
More customisable title card

See merge request STJr/SRB2!552
2019-12-24 14:47:55 -05:00
MascaraSnake
a57f903933 Move bonus time handling into new function P_SetBonusTime() 2019-12-24 12:52:43 +01:00
MascaraSnake
dd01fce1a8 Separate P_SpawnHoopsAndRings into different functions:
-Hoops are spawned in P_SpawnHoop
-Item patterns are spawned in P_SpawnItemPattern
-Ring-like items are spawned normally via P_SpawnMapThing
-Bonus time items are spawned via P_SpawnBonusTimeItem, which is a wrapper for P_SpawnMapThing
2019-12-24 10:50:49 +01:00
Jaime Passos
89b4a558a8 Merge remote-tracking branch 'origin/next' into gametype-clownery 2019-12-23 23:08:16 -03:00
Jaime Passos
630c06b7b0 Turn GTR_CHASECAM into GTR_FIRSTPERSON. 2019-12-23 19:24:06 -03:00
Nev3r
9a9f72f598 Don't reload mapthings in P_LoadThingsOnly() as they should no longer be modified past the mapload procedure. 2019-12-23 16:37:44 +01:00
Nev3r
d6a86c37b2 P_PrepareRawThings() is now where it was supposed to be at; moved save and flat & texture caching related functions to the end of P_LoadMapData(). 2019-12-23 16:36:26 +01:00
Nev3r
bb54597552 Remove redundant netarchive-related sector vars as they're not used anymore.
Replace lump-based difference checks for sectors in P_NetArchiveWorld(), now it uses the mapload-created copy instead.
2019-12-23 12:42:38 +01:00
Nev3r
eadf953957 Store a copy of sectors, lines and sides in memory so that P_NetArchiveWorld() can soon use them instead of relying on re-opening the original lumps.
Fix print type issue.
2019-12-23 12:30:32 +01:00
MascaraSnake
579362fd3b P_LoadMapData(): Throw an error if resources are not found. 2019-12-22 23:22:15 +01:00
MascaraSnake
a4fde93fbb Merge branch 'next' into virtres
# Conflicts:
#	src/p_setup.c
2019-12-22 23:02:47 +01:00
Jaime Passos
0accadf02f Merge remote-tracking branch 'origin/next' into gametype-clownery 2019-12-19 02:15:45 -03:00
Jaime Passos
ea5e0d28ed More gametype rules yay!! 2019-12-18 01:54:45 -03:00
Jaime Passos
254d812901 More customisable title card
Add TitleCardZigZag, TitleCardZigZagText and TitleCardActDiamond fields to SOC.
Add the same fields to Lua under their internal names.
Turn map header level flags into an UINT16, so that NoTitleCard works. (NOBODY caught this, I'm actually disappointed.)
2019-12-18 00:28:58 -03:00
Jaime Passos
e359f802fd Update comments 2019-12-17 16:14:26 -03:00
Jaime Passos
cc54163210 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-17 16:12:44 -03:00
James R
4da57653eb Merge branch 'spawn_z_refactor' into 'next'
(UDMF prereq.) Spawn Z refactor

See merge request STJr/SRB2!536
2019-12-16 23:21:07 -05:00
MascaraSnake
79350992df Some more cleanup of map loading code 2019-12-16 00:17:20 +01:00
MascaraSnake
bb3440d021 Minor cleanup of virtual resources code 2019-12-16 00:04:48 +01:00
MascaraSnake
8a6e244e60 SpawnEmeraldHunt() -> P_SpawnEmeraldHunt() 2019-12-15 09:49:54 +01:00
James R
14674223e8 Merge branch 'opengl-is-a-bad-renderer' into 'master'
OpenGL fixes

See merge request STJr/SRB2!519
2019-12-14 16:48:50 -05:00
Jaime Passos
b7c7529e75 Don't reset the FOV 2019-12-12 17:06:04 -03:00
Nev3r
c64a9d7ae9 Stop things from becoming Chocapic in THZ3, ACZ2, and special stages.
Temporarily revert function call order for mapthings.
2019-12-12 11:37:48 +01:00
Nev3r
ec9f727e53 Move map data load procedure to separate functions. 2019-12-12 11:16:55 +01:00
Nev3r
43cbad200c Move loading functions around a bit and refactor the stage data allocation code. 2019-12-12 10:35:38 +01:00
Jaime Passos
ea129f701c Fix Ploadflat closing the game with "Too many flats in level" error message 2019-12-11 22:45:47 -03:00
Nev3r
a87a9e6ff6 Remove wrappers and dupes for map lump reading, as they are no longer used. 2019-12-11 14:40:31 +01:00
Nev3r
9952bae5ee P_MakeMapMD5() now uses virtres. 2019-12-11 14:20:08 +01:00
Nev3r
4d86dc11a6 'prepare' mapthings using virtres in P_LevelInitStuff(). Whether 'preparing' them or not is actually necessary is another matter. 2019-12-11 13:54:15 +01:00
Nev3r
bf5a2c68d5 P_SetupLevel() no longer makes distinction on whether the map is a WAD in a PK3 or not. 2019-12-11 13:22:07 +01:00
Nev3r
d2cbdd4fb1 Do not overwrite the mapthing Z when spawning rings and similars, as it now causes them to respawn in wrong places because it is being actually used now. 2019-12-11 11:10:31 +01:00
Jaime Passos
9248f12d55 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-10 23:01:10 -03:00
Nev3r
8466dc5813 Move mobj spawn Z calculating to a separate function. 2019-12-10 18:03:15 +01:00
Nev3r
3dfa526eea Separate Emerald Hunt emerald spawning into another function. 2019-12-10 14:21:08 +01:00
Nev3r
6fe6db8e18 Removed seemingly redundant (and incorrect) mapthing Z load code.
The proper code seems to sit inside P_SpawnMapThing() and the SpawnHoop functions. Time will tell if I've actually commited an atrocity.
2019-12-09 14:05:22 +01:00
Nev3r
8ea7dd418a Move the axis spawning code out of the mapthing read function, and read the mapthing z in the mapthing read function. 2019-12-09 13:26:31 +01:00
Alam Ed Arias
e91a689478 Merge branch 'master' into opengl-is-a-bad-renderer 2019-12-08 12:50:45 -05:00
Alam Ed Arias
1d0cd586ba P_AddWadFile: the PK3 may not have folders 2019-12-08 12:35:21 -05:00
Jaime Passos
d74f2a003b HWR_FreeMipmapCache already calls HWR_FreeMipmapCache indirectly
(done by calling HWR_LoadTextures, which in turn calls HWR_FreeTextureCache)
2019-12-08 04:40:29 -03:00
Jaime Passos
4c808cb7e2 Actually don't even call HWR_FreeMipmapCache between levels because I feel like it's futile outside of PWAD loading 2019-12-08 04:32:25 -03:00
Jaime Passos
cc12496e9c Optimize mipmaps 2019-12-08 03:23:37 -03:00
MascaraSnake
a3549cc8f2 Merge branch 'datestuff' into 'master'
Date stuff

See merge request STJr/SRB2Internal!618
2019-12-06 16:10:36 -05:00
Steel Titanium
d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
Jaime Passos
c0cc742fb8 Remove unnecessary function parameters from title card code 2019-12-05 01:58:19 -03:00
Jaime Passos
b646922967 fix Ploadflat warning 2019-12-04 15:41:29 -03:00
MascaraSnake
f9460434f8 Merge branch 'savedatareorder' into 'master'
Savedata load order of operations change

See merge request STJr/SRB2Internal!583
2019-12-03 02:18:06 -05:00
Alam Ed Arias
b5738620c1 Fixup compiling errors 2019-12-02 12:12:26 -05:00
toaster
6e278c1138 Change the order of operations such that savedata info is loaded before mapthings are spawned, so that if you have all the emeralds, the emerald objects won't spawn in BCZ2 if you use the SP savefile's level select to go to it directly. 2019-11-30 15:52:41 +00:00
lachwright
5719a93211 Fix 'Speeding off to...' placement in non-greeen resolutions 2019-11-26 00:16:46 +08:00
Jaime Passos
e850d42bc2 fix RA fade 2019-11-23 18:15:09 -03:00
MascaraSnake
aabddd69f1 Fixed a missing space in the "Speeding off to..." text 2019-11-23 18:51:32 +01:00
Jaime Passos
faa305a2f2 Fix crossfades
Fixes NoReload using the wrong wipestyle.
Also fixes non-titlemap title screen wipes using the wrong wipestyle.
2019-11-22 17:44:42 -03:00
toaster
3add9a9bd2 Make the SPEEDING OFF TO ZONE text that appears while loading:
* Use a mixed case "Zone" to match the mixed case level titles.
* Have V_TRANSLUCENT to not stick out too much against pure black/white backgrounds. (Can revert this aspect if necessary, but I think you'll agree it's a good balance between readable and aesthetic.)
2019-11-19 13:00:37 +00:00
Jaime Passos
8a05afa1aa Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-18 18:48:19 -03:00
Jaime Passos
6920d20a0f map header option 2019-11-18 14:08:47 -03:00
Jaime Passos
e40bf85a6f lua 2019-11-18 13:50:44 -03:00
Jaime Passos
4ea3513076 Organize 2019-11-18 12:56:41 -03:00
Jaime Passos
9d17614c55 arg 2019-11-18 11:42:45 -03:00
Jaime Passos
6c98dde736 stuff 2019-11-18 11:39:54 -03:00
Jaime Passos
c15ee65015 LEVELWIPES 2019-11-15 18:21:12 -03:00
Jaime Passos
6be45ec241 Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-14 20:24:42 -03:00
MascaraSnake
b0786f12de Merge branch 'coop-item-respawn' into 'master'
Allow item respawn in co-op again

See merge request STJr/SRB2Internal!466
2019-11-14 18:06:32 -05:00
Jaime Passos
d95a93b537 Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-14 19:57:51 -03:00
MascaraSnake
8f6890025c Merge branch 'secretstuff' into 'master'
The letter

See merge request STJr/SRB2Internal!438
2019-11-14 17:49:23 -05:00
Louis-Antoine
cccf1c8a7b Disable perfect bonus in multiplayer 2019-11-14 19:25:19 +01:00
Jaime Passos
8506d420a6 Optimise 2019-11-14 14:12:36 -03:00
Jaime Passos
10d1b63ff2 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-11-14 12:49:03 -03:00
Jaime Passos
4292c5fc0b Other things I missed. Also added SF_NONIGHTSROTATION. Do I even have to keep the old behaviour? I have no idea. 2019-11-14 12:27:22 -03:00
MascaraSnake
14477748be Merge branch 'stopclock' into 'master'
Stop the clock!

See merge request STJr/SRB2Internal!450
2019-11-13 14:39:59 -05:00
MascaraSnake
d591554a5d Merge branch 'radiomode' into 'master'
Radio mode

See merge request STJr/SRB2Internal!443
2019-11-13 04:16:38 -05:00
Jaime Passos
245881ec55 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-11-12 21:38:02 -03:00
Jaime Passos
3354169769 Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-12 20:36:06 -03:00
Jaime Passos
c6253bb6f9 Merge remote-tracking branch 'origin/master' into renderswitch 2019-11-12 20:25:40 -03:00
MascaraSnake
66123b8165 Merge branch 'internal-md3-vanilla-c' into 'master'
Internal MD3 merge 2 good riddance glBegin

See merge request STJr/SRB2Internal!362
2019-11-12 15:44:20 -05:00
Jaime Passos
b88a37949e Use REDFLR for missing flats 2019-11-09 00:08:22 -03:00
Jaime Passos
ae838d4879 Merge remote-tracking branch 'origin/master' into texture-flats-optimization 2019-11-08 23:01:29 -03: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
toaster
5f8671b100 Sound test is cool now!
https://cdn.discordapp.com/attachments/405336003239477249/641295998395613224/srb20042.gif

* Port MUSICDEFs from Kart.
    * Safe to modify without modifying game, so we can put it in music.dta eventually.
    * "Title", "AltTitle", "Authors" fields are self-evident.
    * "Soundtestpage" and "Soundtestcond" are used to determine which sound test unlockable can play them (set with Unlockable's variable, just like Level Select).
    * "Stoppingtime" and "BPM" both accept floats, and are used for presentation stuff on the sound test.
    * Ironically, we don't share a single field name with them. Such is the case of differing foci, though, and I expect they'll change their implementation to match (since this is necessary for a sound test).
* Change how S_AddSoundFx works to avoid iterating through all of them, and to allow cv_soundtest to only scroll through defined slots (instead of the infinite wall of thok sounds when scrolling to the left).
* Change V_DrawFixedPatch to allow scaling on two seperate axes.
    * Now called "V_DrawStretchyFixedPatch".
    * "V_DrawFixedPatch" is a macro to V_DrawStretchyFixedPatch now (same scale on both axes).
    * Available to Lua under v.drawStretched!
    * Even works in GL!
* Bugfix: Add SR_PLAYER to SOC's menutypes_list.

Stay tuned for the merge request, where I put the onus on the Music Team to finish this off...
2019-11-05 16:23:46 +00:00
Jaime Passos
00d76bd9ef fix fades for real 2019-11-05 12:10:42 -03:00
toaster
915e50a1e4 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into internal-md3-vanilla-c
Merge seems fine, but won't compile for some reason.
2019-11-02 18:34:12 +00:00
toaster
e3fe542f31 Prevent desync with modeattacking. 2019-11-01 16:25:28 +00:00
toaster
67f5b2245f Secret stuff. (I intend to keep candid discussion of this outside of any commits; you'll see me write up a comment describing what's going on here soon.) 2019-11-01 15:48:50 +00:00
Jaime Passos
94ab276508 Merge remote-tracking branch 'origin/master' into f_wipes 2019-10-28 23:14:00 -03:00
Jaime Passos
a22af36305 add r_patch.c 2019-10-28 15:28:42 -03:00
Jaime Passos
79e99dc471 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-10-28 14:29:10 -03:00
MascaraSnake
03c5b70fc5 Merge branch 'newmenus' into 'master'
Better looking menus, nametags and much more. (Resolves #245 and #244 and #252)

Closes #245, #244, and #252

See merge request STJr/SRB2Internal!389
2019-10-25 17:46:16 -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
Steel Titanium
3e0a9cf742
Revert my old attempt of making the level music fade out before game over jingle 2019-10-19 14:36:30 -04:00
toaster
910df54fb5 Added some examples of cvars that can use named values.
* Pandora's box now has infinite lives show up as "Infinite" instead of "-1".
* `pointlimit None`
* `timelimit None`
* Ported `basenumlaps` (with "Map default" value) from Kart to replace `usemaplaps`, for if Circuit ever gets shown any love ever again.
* `respawndelay Off`
* `resynchattempts Don't`
2019-10-15 11:49:37 +01:00
Jaime Passos
7746767735 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-10-06 17:40:41 -03:00
Steel Titanium
6b10ffb88f
Merge branch 'master' into newmenus 2019-10-01 16:52:31 -04:00
Jaime Passos
7eb5155240 sprite2info soc yummy yummy yes 2019-09-29 19:03:10 -03:00
Jaime Passos
c268743220 hehee 2019-09-29 12:13:51 -03:00
Jaime Passos
5118f8589d Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-09-28 12:14:55 -03:00
Jaime Passos
fe60902df5 Merge remote-tracking branch 'origin/master' into renderswitch 2019-09-27 22:53:57 -03:00
toaster
3285cc9a0d Properly scrub the player struct clean between level transitions. (Good chance this fixes our new bug where the player gets stuck in their standing pose when the map begins..?) 2019-09-18 16:06:13 +01:00
Nev3r
777e7f8760 Merge branch 'deathstuff' into 'master'
Lots of death stuff

Closes #207

See merge request STJr/SRB2Internal!306
2019-09-16 16:32:45 -04:00
Jaime Passos
db979845e0 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-09-15 16:24:24 -03:00
Jaime Passos
f2915817a7 Merge remote-tracking branch 'origin/master' into newmenus 2019-09-11 22:17:42 -03:00
toaster
440b63ef13 Merge branch 'musicplus-resetmusic-followup' into 'master'
Follow-up fixes for reset-upon-dying music

See merge request STJr/SRB2Internal!284
2019-09-11 14:14:09 -04:00
toaster
10a0b38ab1 Fix an issue where completing a stage normally would not correctly set startrings for the next one (as opposed to warping directly or dying inside it). 2019-09-11 14:25:22 +01:00
Jaime Passos
8057eeaaca Merge remote-tracking branch 'jimita/renderswitch' into renderswitch 2019-09-10 18:12:01 -03:00
Jaime Passos
f0788598c9 Better fades 2019-09-09 23:31:48 -03:00
Jaime Passos
0a973af5b8 Comments 2019-09-09 19:27:08 -03:00
Jaime Passos
da93e0f1f5 I am the CEO of renderers 2019-09-09 16:20:17 -03:00
Nev3r
043bb86acd Revert "Merge branch 'flats-png_port' into 'master'"
This reverts merge request !322
2019-09-09 18:40:21 +00:00
Jaime Passos
6553d816ea Merge remote-tracking branch 'origin/master' into flats-png_port 2019-09-09 14:12:28 -03:00
Jaime Passos
725d0b4c44 still making things better 2019-09-08 21:37:24 -03:00
Jaime Passos
c7e01a558e initial stuff 2019-09-08 18:44:40 -03:00
Jaime Passos
2863ede7bf initial stuff 2019-09-08 18:27:35 -03:00
Jaime Passos
0cc553be5f Merge remote-tracking branch 'jimita/flats-png' into flats-png_port 2019-09-06 19:20:45 -03:00
Jaime Passos
1dca3338fd Sprite2 support but I'm not a dumbass 2019-09-03 18:27:22 -03: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
Jaime Passos
f68652aa66 I 2019-08-18 14:16:48 -03:00
Steel Titanium
ff9766beee
Merge branch 'master' into newmenus 2019-08-14 22:51:06 -04:00
mazmazz
46993268ae * Added FORCERESETMUSIC level header
* cv_resetmusicbyheader toggle to disable said override
* Never reset music during time attack
* Change cv_resetmusic default back to off
2019-08-04 20:02:38 -04:00
toaster
b06af59907 Merge branch 'revert_revert_musicplus' into 'master'
Revert "Revert MusicPlus"

See merge request STJr/SRB2Internal!282
2019-08-04 13:58:01 -04:00
Steel Titanium
dacee0665d
More menu stuff 2019-08-04 13:26:25 -04:00
Steel Titanium
153ed82849 Last min changes 2019-08-04 11:34:55 -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
cdb7250da4 Merge branch 'musicplus-feature-postboss' into musicplus-aug2019-b 2019-08-04 03:22:36 -04:00
mazmazz
5f2a45befd Merge remote-tracking branch 'origin/master' into musicplus-feature-dying-fp 2019-08-03 22:49:20 -04:00
mazmazz
a9b66109fc Fix titlemap music bug 2019-08-03 22:49:12 -04:00
mazmazz
efc8e42083 Fix titlemap music bug 2019-08-03 22:48:40 -04:00
mazmazz
1b59b224c0 Merge branch 'master' into musicplus-feature-dying-fp 2019-08-03 22:22:39 -04:00
Steel Titanium
00c3329ba9
Ring sparkle mirroring 2019-08-03 18:28:53 -04:00
Steel Titanium
9ea7a6dfca
Work on menus 2019-08-03 17:30: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
Monster Iestyn
8520243ab6 Merge branch 'emeraldfixes' into 'master'
Special stage related fixes

See merge request STJr/SRB2Internal!269
2019-08-02 13:08:20 -04:00
Steel Titanium
e8caa8538d
Merge branch 'master' into newmenus 2019-08-01 18:36:42 -04: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
18e43a5cef * Fix "exitlevel" being counted as a special stage success despite not giving you an emerald by inverting stagefailed's default value, since there's only a limited number of ways you can WIN at a special stage.
* Correct a potential source of desync in P_GiveEmerald.
2019-07-30 16:44:40 +01:00
toaster
deaee586ed Make MANIASPHERES' #define'd away stuff also recreatable with SOC, since I want to release it publically if the team don't want it. 2019-07-29 21:06: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
toaster
063e350c63 A good and bad ending cutscene now exist.
Also:
* SPR2_XTRA - instead of defining lumpnames in S_SKIN, those kinds of assets can just be bundled into the spriteset. Required for ending cutscene stuff, I guess, but also done for HUD life icon and character select image (aside from Sonic&Tails, still SOC'd in).
* Minor oversights in SPR2 support corrected.
* Better evaluation, featuring ending assets.
* Intro has warping-in blackrock, reusing ending assets.
* Cutscene text now supports lowercase (intro and custom).
* Disable the asset-fucking "gamma correction" I put in over two years ago when implementing colour cube. (This is the only thing I could move into another branch if you MUST, but it's basically invisble in the diff so w/e.)
* Don't blank the screen if the top left pixel of a screen-covering patch is transparent. (Checked via nonzero topdelta for first column)

Bugs:
* OPENGL ONLY: The first ~20 frames of both endings are fucked. A little help here? Might be HWR_DrawFadeFill's fault, which I just created. OR it could be in f_finale, but I doubt it, since it doesn't appear in Software.
2019-07-28 00:32:57 +01:00
Monster Iestyn
fac6de9c2e The titlemap glitches turned out to be linked to deathmatchstarts, which wasn't actually properly cleared out each level load ...let's actually fix that, lol.
(Neither were the CTF starts but those didn't directly cause any problems luckily)
2019-07-14 18:10:03 +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
MascaraSnake
a5074a846b Implemented a skin-based linedef executor trigger 2019-07-03 09:19:29 +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
Monster Iestyn
9913cc39a1 Merge branch 'public_next'
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
#	src/p_user.c
#	src/r_data.c
2019-06-29 20:55:58 +01:00
Jaime Passos
28566008b4 Merge remote-tracking branch 'upstream/master' into flats-png 2019-06-25 16:02:35 -03:00
Steel Titanium
8026fe0d4b Some few changes.
The amount of rings you start with also applies when you respawn from a starpost.

Startrings counts the ring total requirement for a perfect bonus.
2019-06-24 16:21:03 -04:00
Steel Titanium
a801efa946 Forgot to do this. 2019-06-23 18:51:42 -04:00
Nev3r
264386f842 Add visplane portal creation functionality and use it to replace the skybox rendering.
The skybox rendering process has been replaced with portals instead. Those are generated after the first BSP tree pass by looking for existing sky visplanes at the time, and their windows are used to define new portals.
The skybox portals are still incomplete and cause visual glitches when masked elements are involved.
2019-06-02 00:07:55 +02:00
Jaime Passos
0bcf89679e Hardware renderer: Fix polyobjects 2019-05-26 18:16:13 -03: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
11dba34f43 Remove dynamic slope queue list due to now being unnecessary.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:52:18 +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
b3ac590e5e Add a slope thinker queue.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 13:06:06 +02:00
Nev3r
5401e9560f Dynamic slopes now use thinkers.
* Moved dynamic slope-related data into its own thinker.
* Vertex slopes no longer use the mapthings directly.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-19 14:14:43 +02:00
mazmazz
ad50fa4d9e Fix MIDI crash bug when changing music between levels
This happened when the old music was ERZ2 native midi, then warping to any other level.
2019-03-15 10:02:50 -04:00
mazmazz
7346684bd8 Fade out music upon dying or level change: 2.1 frontport 2019-03-15 04:21:17 -04:00
mazmazz
f163633591 Merge branch 'public_next' 2019-03-15 01:43:03 -04:00
mazmazz
e098d6a8b8 Merge branch 'public-musicplus-feature-interfadeout' into public-musicplus-feature-endoflevel 2019-03-15 01:09:12 -04:00
mazmazz
6cf05a4613 Implement MUSICINTERFADEOUT level header 2019-03-15 01:05:52 -04:00
mazmazz
773f9dc2ba Merge remote-tracking branch 'public-gl/next' into public-musicplus-feature-endoflevel 2019-03-15 00:39:26 -04:00
mazmazz
4377386153 Merge branch 'public_next' 2019-03-15 00:33:06 -04:00
mazmazz
9ec98c588f Merge branch 'public_next' 2019-03-14 22:15:34 -04:00
MascaraSnake
bc30bd06df In-map emblem coordinates are now set via emblem mapthings (thing type 322) instead of X/Y/Z fields in SOC 2019-02-03 14:32:07 +01:00
MascaraSnake
8c345b87ca Emblem and unlockable SOFTcoding! Emblems and unlockables are no longer predefined in the code and instead loaded from IWAD 2019-02-03 11:05:22 +01:00
Monster Iestyn
f3796dc7f6 revert to LF_SAVEGAME system code, removing all traces of saveoverride
(I believe Sal wanted us to do this anyway, so...)
2019-01-08 17:14:21 +00:00
mazmazz
b3f7b169b2 Merge errors for compile 2019-01-07 17:05:20 -05:00
Nev3r
7d09149b04 Solved conflicts related to PK3s
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-01-07 19:00:31 +01:00
mazmazz
015e7b9862 Resolve p_setup and d_netcmd conflicts (20190101 public merge) 2019-01-07 03:07:24 -05:00
mazmazz
24e37a23a5 Merge branch 'musicplus-core' into musicplus-feature-postboss 2019-01-07 01:17:07 -05:00
mazmazz
36f802eb15 Merge remote-tracking branch 'origin/master' into musicplus-core 2019-01-07 01:15:08 -05:00
mazmazz
1e702443e3 Merge remote-tracking branch 'origin/musicplus-core' into musicplus-feature-postboss 2019-01-07 01:10:54 -05:00
Steel Titanium
827461cc36 Support for per-map intermission music 2019-01-02 05:15:23 -05: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
Steel Titanium
4f18ec60bc Fix saving progress on vanilia 2018-12-26 15:47:12 -05:00
Digiku
8d56c2f486 Merge branch 'addons-backport' into '2122-version'
Addons Menu backport to vanilla

See merge request STJr/SRB2!384
2018-12-23 18:08:06 -05:00
Jimita
2b59cfa63f
Merge branch 'next' into sw_largeroomfix 2018-12-20 19:58:16 -02:00
Digiku
9525de2d83 Merge branch 'camera-backport' into 'next'
Suggestion: 2.2 camera changes backport

See merge request STJr/SRB2!393
2018-12-20 16:57:23 -05:00
MPC
9d93f54b67 bland 2018-12-20 18:52:51 -03:00
Jimita
ffd5061531
Merge branch 'next' into sw_largeroomfix 2018-12-20 16:56:05 -02:00
Monster Iestyn
dfbbab35f4 Merge branch 'master' into next 2018-12-20 16:41:21 +00:00
mazmazz
78501dcd0c Comment out stray PK3 blockmap message 2018-12-20 01:11:07 -05:00
TehRealSalt
9e596d15af Save override for level header
Kind of like 2.2's, but with backwards-compatability with 2.1
2018-12-16 20:09:59 -05:00
TehRealSalt
e763eab6cd 2.2 camera changes backport
- Very slightly less claustrophobic camera defaults
- Changed camera settings are saved
- Camera distance increases relatively with splitscreen & analog mode.

These changes are kind of debatable because them not saving was an intentional decision initially, and the camera being farther out could potentially clip more geometry where it previously didn't... still, thought I'd open this for consideration
2018-12-16 18:18:59 -05:00
mazmazz
37950341ec Merge remote-tracking branch 'public-gitlab/next' into addons-backport 2018-12-15 20:52:46 -05:00
mazmazz
b32f50648d Merge branch 'addons_menu' into 'master'
Addons menu

See merge request KartKrew/Kart!8
2018-12-15 20:46:42 -05:00
MPC
348ed1e43f Large room fix 2018-12-09 19:34:17 -03:00
mazmazz
97ea4086a5 Redundant type 1800 check for MT_COIN 2018-11-27 14:10:55 -05:00
MonsterIestyn
b53cd70201
Merge branch 'next' into PK3-BackportNext 2018-11-26 18:56:51 +00:00
mazmazz
900f7e3dc9 FORCEWIPEOFF define in place of wipegamestate = -2 2018-11-25 19:40:18 -05:00
mazmazz
ab47e83939 Merge remote-tracking branch 'origin/master' into menu-execs 2018-11-25 19:03:22 -05:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Nev3r
c548aaa347 Backported PK3 support to 2.1
Hopefully I'm not missing anything.

Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-23 16:58:16 +01:00
Digiku
c6bd1111e5 Merge branch 'nights-dronebox' into 'master'
NiGHTS: Drone hitbox improvements and player position correction on Nightserize

See merge request STJr/SRB2Internal!158
2018-11-21 20:19:39 -05:00
mazmazz
74da082c75 Merge remote-tracking branch 'origin/master' into HEAD 2018-11-20 23:19:36 -05:00
mazmazz
dcac157ccd Merge remote-tracking branch 'origin/master' into menu-execs 2018-11-20 18:31:30 -05:00
Monster Iestyn
224c0fccdb Merge branch 'public_next'
# Conflicts:
#	src/Makefile.cfg
#	src/d_clisrv.c
#	src/p_setup.c
#	src/r_segs.c
#	src/r_things.c
2018-11-20 14:33:10 +00:00
mazmazz
758647fab2 More title screen features; menu meta state implementation (active and previous menu types)
* Draw background over titlemap
* HIDEBACKGROUND to show titlemap
* Specify NOMUSIC or IGNOREMUSIC (to not change music)
* Linedef execs implemented for tree hierarchy, including bubbling (NOENTERBUBBLE/NOEXITBUBBLE)
* Specify ENTERWIPE and EXITWIPE
* Menuid hierarchy fixes (Control mapping, joystick setup)
* Time attack handling fixes
* Specify custom wipes on runtime for D_Display and P_SetupLevel (for titlemap)
* Allow for forcing and skipping a wipe
* Wipe utility functions F_GetWipeLength and F_WipeExists
2018-11-17 19:08:30 -05:00
mazmazz
8f87bf82cd Merge branch 'master' into musicplus-core 2018-11-13 13:46:30 -05:00
Monster Iestyn
e85f73117c Split camera initialisation code from P_SetupLevel, make sure the camera has an initial subsector set! 2018-11-12 20:07:45 +00: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
Monster Iestyn
90cfa5ef16 Make new pv1/pv2 seg pointers, so AdjustSeg doesn't modify the v1/v2 pointers directly anymore
Yes I know they're void * in r_defs.h's seg_t definition, it's quicker than trying to figure out if including hardware/hw_glob.h is a good idea or not
2018-10-27 19:29:31 +01:00
mazmazz
75558c40a2 Merge branch 'public-musicplus-core' into public-musicplus-feature-endoflevel 2018-09-19 18:55:01 -04:00
mazmazz
d4cef2bf9b Merge branch 'public-musicplus-core' into public-musicplus-le-changemusic 2018-09-19 18:55:00 -04:00
mazmazz
1c314833db Merge branch 'musicplus-core' into musicplus-feature-postboss 2018-09-19 18:53:46 -04:00
mazmazz
1da3b921dd Merge remote-tracking branch 'origin/master' into musicplus-core 2018-09-19 18:53:18 -04:00
mazmazz
db9528f6e4 MP Core: 2.1 dehacked typo 2018-09-18 23:29:18 -04:00
mazmazz
b057b2932d EndOfLevel: 2.1 dehacked setup fix 2018-09-18 23:28:39 -04:00
mazmazz
d542c2440d musicplus-feature-endoflevel 2.2 -> 2.1 backport 2018-09-18 15:50:12 -04:00
mazmazz
b55191f09a Merge branch 'musicplus-core' into musicplus-feature-postboss 2018-09-18 15:35:02 -04:00
mazmazz
2e0e0a3856 musicplus-le-changemusic 2.2 -> 2.1 backport 2018-09-18 15:28:57 -04:00
mazmazz
a2c5c331c0 Merge branch 'master' into musicplus-core 2018-09-18 12:20:56 -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
mazmazz
c5ea6b5efe MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -04:00
mazmazz
e7ecd84e80 p_setup: Don't fudge texture offsets if EFFECT5 and a linedef exec 2018-09-18 07:37:29 -04:00
mazmazz
c5d4ff5712 Merge branch 'musicplus-core' into musicplus-feature-postboss 2018-09-16 23:32:18 -04:00
mazmazz
e8a5735f75 Merge branch 'lightfade-ticbased' into le-fadefof 2018-09-14 08:42:02 -04:00
mazmazz
8e4569381f Merge branch 'master' into musicplus-core 2018-09-13 13:24:46 -04:00
mazmazz
dc72835679 Merge branch 'colormap-overhaul' into colormap-overhaul-fade 2018-09-12 21:06:27 -04:00
mazmazz
0b2caa948f Init side->colormap_data pointer to NULL (for paranoia) 2018-09-12 21:05:50 -04:00
mazmazz
17a78ba674 Merge branch 'colormap-overhaul-change-ldef' into colormap-overhaul-fade 2018-09-12 20:47:00 -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
fad12d6be3 Merge branch 'master' into le-fadefof 2018-09-12 18:01:42 -04:00
mazmazz
c58e9b0bae Merge remote-tracking branch 'origin/master' into colormap-overhaul 2018-09-12 17:28:22 -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
9a6a8b0b82 Outdated comment; unused var 2018-09-12 08:07:34 -04:00
mazmazz
5975f26177 Don't set sector's extra_colormap if we just made a default clone
* Allow colormap parsing to proceed in p_setup always
* Add R_CheckDefaultColormap
* Add R_GetRgbaR/G/B/A macros
2018-09-11 17:08:57 -04:00
mazmazz
f703c19502 Don't set sector's extra_colormap if we just made a default clone
* Allow colormap parsing to proceed in p_setup always
* Add R_CheckDefaultColormap
* Add R_GetRgbaR/G/B/A macros
2018-09-11 17:06:44 -04:00
mazmazz
5dad8d15b0 Merge branch 'colormap-overhaul' into colormap-overhaul-change-ldef 2018-09-11 15:03:04 -04:00
mazmazz
ba88f8ebb6 Smarter string digit parsing; allow alpha-only values
* GetDefaultColormap and CheckDefaultColormapValues methods
2018-09-11 15:01:05 -04:00
Monster Iestyn
82a26580de Merge branch 'master' into change-colormap-ldef 2018-09-11 16:43:01 +01:00
Monster Iestyn
fd783f09ea Merge branch 'public_next'
# Conflicts:
#	src/p_setup.c
#	src/r_data.c
2018-09-11 16:41:27 +01: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
53733ddf76 Type 606 renderer check allow OGL again 2018-09-10 16:32:54 -04:00
mazmazz
e0d8a6eec0 Get rid of bottommap, midmap, topmap 2018-09-10 16:16:04 -04:00
mazmazz
574a591d43 P_LoadRawSideDefs2 colormap cleanup (merge ogl and software to one block) 2018-09-10 16:08:43 -04:00
mazmazz
fef38acc59 Merge remote-tracking branch 'public-gitlab/colormap-code-cleanup' into colormap-cleanup 2018-09-10 13:24:57 -04:00
Monster Iestyn
40ff436829 Remove commented out stuff, now I've confirmed everything works fine without them 2018-09-10 15:49:21 +01:00
mazmazz
002f1bad8f Savegame netsync for sector colormaps; add spawn_midmap and co for comparison 2018-09-10 09:01:09 -04:00
Monster Iestyn
c0bf79ad8e R_CreateColormap2 and R_MakeColormaps have been made obsolete, it's just R_CreateColormap now, like it used to be!
With that, I moved R_CreateColormap2's exclusive software colormap malloc code to R_CreateColormap, and merged the two software-only blocks of code into one. I also disabled any unneeded variables and fixed a preprocessor-related goofup
2018-09-09 22:48:09 +01:00
mazmazz
baababcf0b Add spawn_lightlevel to sector_t 2018-09-09 12:44:35 -04:00
mazmazz
032f95803d Merge branch 'master' into change-colormap-ldef 2018-09-09 08:40:38 -04:00
mazmazz
bc2f48a018 Merge branch 'master' into nights-dronebox 2018-09-07 09:06:32 -04:00
mazmazz
dabd7f99e6 Add MUSICPOSTBOSSFADEIN 2018-09-01 13:10:50 -04:00
Monster Iestyn
5eddb1f455 Merge branch 'master' into hud-n-menu-tidbits 2018-08-29 21:28:11 +01:00
mazmazz
dc86fe9b5f Merge remote-tracking branch 'origin/master' into nightsplus-laplogic 2018-08-29 10:16:49 -04:00
Monster Iestyn
1af8d3ac02 Merge branch 'master' into hud-n-menu-tidbits
# Conflicts:
#	src/m_menu.c
#	src/screen.c
#	src/st_stuff.c
2018-08-28 20:51:46 +01:00
mazmazz
4dd6b733d6 MUSICPOSITION -> MUSICPOS
* Added muspos level header var to lua

# Conflicts:
#	src/dehacked.c
#	src/lua_maplib.c
#	src/p_setup.c
2018-08-25 16:23:01 -04:00
mazmazz
493bc86b08 MUSICPOSITION -> MUSICPOS
* Added muspos level header var to lua
2018-08-25 16:21:34 -04:00
mazmazz
ed8288a028 MUSICPOSTBOSSPOSITION -> MUSICPOSTBOSSPOS 2018-08-25 16:18:09 -04:00
mazmazz
21d08b39bf Merge branch 'musicplus-core' into musicplus-feature-postboss
# Conflicts:
#	src/dehacked.c
#	src/p_setup.c
2018-08-25 16:11:29 -04:00
mazmazz
610a83f60e Added MUSICPOSTBOSSTRACK and MUSICPOSTBOSSPOSITION level header/variables 2018-08-25 16:10:46 -04:00
mazmazz
a3ed60d7bd Added MUSICPOSTBOSS level header for boss post-defeat music 2018-08-25 16:02:12 -04:00
mazmazz
578e386e40 Add MUSICPOSITION level header and mapmusposition variable to instantly jump to position
* Cutscene support too!
2018-08-25 15:59:20 -04:00
mazmazz
d8c565407c MaxBonusLives level header option for # of lives in score tally 2018-08-13 14:17:38 -04:00
mazmazz
ec8d264029 totalmarescore player variable for NiGHTS scoring
# Conflicts:
#	src/p_setup.c
2018-08-12 19:59:34 -04:00
mazmazz
5938a57970 totalmarelap and totalmarebonuslap player variables 2018-08-12 19:57:33 -04:00
mazmazz
4e02171c23 Add lapbegunat and lapstartedtime player variables
There is no lapfinishedtime because [mare]finishedtime refers to when Egg Capsule is destroyed. That concept does not apply to laps.
2018-08-12 14:21:26 -04:00
mazmazz
480c4f890d player->oldscale var for pre-Nightserize scale 2018-08-11 00:49:28 -04:00
mazmazz
32c17b1454 Basic implementation for player position correction to Drone center
* player->drone mobj variable
* P_MoveNiGHTSToDrone, will change later
2018-08-10 19:25:49 -04:00
mazmazz
18b5b70822 Add lastmarelap and lastmarebonuslap player variables 2018-08-10 16:30:49 -04:00
mazmazz
1b922b8ba5 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into nightsplus-laplogic
# Conflicts:
#	src/p_map.c
#	src/p_setup.c
2018-08-10 15:10:26 -04:00
Monster Iestyn
8d0a44899a Merge branch 'master' into change-colormap-ldef 2018-08-10 20:05:04 +01:00
Digiku
a439dce584 Merge branch 'hardcoding-nights-spheredamage' into 'master'
NiGHTS: Handle sphere damage correctly upon timeout
* Spill spheres/chips, implement MT_FLINGBLUESPHERE and MT_FLINGNIGHTSCHIP
* Handle player->spheres and player->rings consistently

See merge request STJr/SRB2Internal!157
2018-08-10 13:50:57 -04:00
mazmazz
487c62fe31 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into nightsplus-laplogic
# Conflicts:
#	src/p_setup.c
2018-08-10 13:35:59 -04:00
MascaraSnake
04063ba3a2 Merge branch 'hardcoding-time-again' into 'master'
Hardcoding time again

See merge request STJr/SRB2Internal!130
2018-08-10 13:14:53 -04:00
mazmazz
bd8316f49b Track player's previous mare rings with player->finishedrings.
There may not be a point to this, other than to be consistent with how spheres are tracked. If non-special stage NiGHTS should tally a ring bonus, this may be useful.
2018-08-10 04:05:20 -04:00
mazmazz
e0f6dee8be MT_FLINGBLUESPHERE and MT_FLINGNIGHTSCHIP implementation 2018-08-10 02:18:24 -04:00
toaster
f0618d5780 Correct some minor deficiencies in the hold-for-retry system in record attack. 2018-06-15 21:42:36 +01:00
toaster
8f318871eb * Make the OpenGL loading screen work with the fades better.
* Make the closed captions not mess with fades, and improve their movement calculation.
2018-06-14 22:23:20 +01: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
255d5c6c94 * Level title movement begins before the fade in!
* https://cdn.discordapp.com/attachments/400761370800422922/456833651645349888/srb20051.gif
* Fix some wipe bugs.
	* Solved that thing where there was no fade between two back-to-back cutscenes.
	* Fixed there being no effective wipe between the end of the vanilla intro cutscene and the title screen.
	* Smoothed out the behaviour of titlemap fades to prevent conflicts.
* [COMPLETELY UNRELATED] Kill the pause graphic and replace with a blue box with text in it, like what happens when the window loses focus. Much harder to miss.
2018-06-14 20:17:31 +01:00
toaster
62927bbb76 * Hold the pause button to restart a record attack run!
* Obligatory GIF: https://cdn.discordapp.com/attachments/400761370800422922/456586705424875520/srb20047.gif
* Show powerup display in singleplayer even while holding Game Status button.
2018-06-14 00:58:28 +01:00
Monster Iestyn
75d2073307 Do the usual hack for loading a lump from a map WAD in a pk3, but this time for P_LoadThingsOnly 2018-06-11 20:23:00 +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
9a309b29c6 * Made P_LevelInitStuff's stuff clearer.
* Changed a caption I'd meant to modify earlier in the branch's lifespan.
2018-06-09 18:20:59 +01:00
toaster
16c8d17a4c * (probably) fix crash with followmobj not being properly invalidated on mapload
* clean up P_LevelInitStuff
* [unrelated] make the bot use directionchar if you are (i only realised it wasn't as a consequence of testing this)
2018-06-09 18:06:14 +01:00
toaster
a7c6977b6e * Make bomb spheres respawn with new laps
* Make the mapthing detection for stuff to be spawned by P_SpawnHoopsAndRings more consistent.
* Make NiGHTS stuff prevent perfect bonus.
2018-06-08 17:16:20 +01:00
toaster
35a5f7447e * Remove flashing from spheres in bonus time through #ifdef.
* Fix inconsistency in counting nummaprings.
* Prevent perfect bonus in non-special stage NiGHTS maps.
2018-06-07 15:10:43 +01:00
toaster
0bb5419785 CORRECTION OF MINOR ANNOYANCES
* On request of Nev3r and Sphere (combined with my own annoyances), make SOC-loading in .pk3 files use the /SOC folder rather than the /SOCS folder.
* Make the Crushstacean's claw launch sounds stop when killed.
2018-06-06 17:11:12 +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
ef174f7b43 Merge branch 'opengl-mappalette-fix' into 'master'
OpenGL: Map Specific Palette Fix

See merge request STJr/SRB2!247
2018-06-03 15:09:23 -04:00
Sryder
092e709235 OpenGL Map Specific palettes working
This makes OpenGL stop using a specific function that doesn't really do anything for it anymore. It looks like it was used for a hack that would change the colour of polygons for the flashpal equivalent in DOOM.
I made it so ST_DoPaletteStuff doesn't set the flashpal in OpenGL as it already does its own hacky overlay and doing that would cause all the textures to be flushed more mid-level, it could be enabled for more correct flashpals, but they still wouldn't effect fog or lighting.
This means the palette will be set when going to the title screen, and twice when starting a map, (causing the OpenGL cached textures to also be flushed at those times)
2018-05-17 22:17:20 +01:00
Steel Titanium
0bef99f566 Fix console typo 2018-05-17 13:57:19 -04:00
mazmazz
3fbffb0b4d Add player_t marelap and marebonuslap, with logic 2018-03-30 20:28:27 -04:00
Monster Iestyn
1fe79a0d71 Fix movies not recording the "extension" to special stage intro fades 2018-03-05 19:08:53 +00: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
db23cfc916 Same has been done for REJECT now 2018-01-09 21:33:10 +00:00
Monster Iestyn
2d98da3bcb Added support for loading BLOCKMAP lumps from MAPXX.wad maps in /Maps/ in PK3s 2018-01-09 19:43:59 +00:00
Monster Iestyn
0e8db59f4b P_AddWadFile: for both WADs and pk3s, if a sound is found to replace an existing sound, don't go on looking for more with the same name (since there shouldn't be any) 2018-01-04 21:06:26 +00:00
Monster Iestyn
b0d0738fb6 P_AddWadFile: Remove useless firstmapname param, clean up map searching code 2018-01-04 20:15:44 +00:00
Alam Ed Arias
3e3065f67c Move FindFolder 2017-11-02 23:09:52 -04:00
toaster
605e51f6f3 Merge branch 'more_about_menus' into 'master'
More about menus

Closes #72

See merge request STJr/SRB2Internal!122
2017-11-02 16:31:51 -04:00
toasterbabe
4d82a76e5b Move R_AddSpriteDefs back into place. 2017-10-30 21:07:17 +00:00
toasterbabe
d4e08551bf * Make P_LoadVertexes a wrapper for P_LoadRawVertexes.
* Remove extraenous R_ClearTextureNumCache from P_LoadSidedefs2.
* Remove regressions in comments/#includes.
2017-10-30 20:54:14 +00:00
toasterbabe
50d6208913 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-10-21 14:28:44 +01:00
toasterbabe
8372bde91b Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into more_about_menus 2017-10-18 21:02:50 +01:00
Alam Ed Arias
79879bbd7b Need to handle that FindFolder() does not fill musPos 2017-10-07 19:10:29 -04: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
Monster Iestyn
302d0425e0 Incinerated WinCE 2017-09-29 23:25:34 +01:00
Alam Ed Arias
1be137f461 cleanup 2017-09-28 11:10:24 -04:00
toasterbabe
295b100df4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into more_about_menus
# Conflicts:
#	src/m_menu.c
2017-09-27 14:43:09 +01: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
toaster
6d03c50966 Merge branch 'continue_startinglives' into 'master'
Save cards and continue startinglives-balancing

See merge request !114
2017-09-19 07:45:35 -04:00
toasterbabe
970268ec38 Redid that ridiculous lastcoop thing as an MV_MP thing, which also means it gets properly cleared when you load mods with new save data. 2017-09-17 22:05:13 +01:00
toasterbabe
b217e9eb92 * Made levels with TOL_COOP inaccessible from the multiplayer map select unless you'd visited them in singleplayer (mapvisited, saves to gamedata) or visited a Co-op level number equal to/after it (multiplayer, doesn't save to gamedata)
* Tweaked Pandora's box to add:
 - A mid-game link to the Addons menu.
 - A button to give everyone SF_SUPER (except Tails in non-devmode executables).
2017-09-17 16:49:39 +01: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
Nevur
4aed951bd8 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement
# Conflicts:
#	src/r_things.h
#	src/w_wad.h
2017-09-04 22:32:11 +02:00
yellowtd
519414b215 Merge branch 'master' into titlemap 2017-08-22 19:07:32 -04:00
toasterbabe
706eb5efeb * New, pretty save select! Requires patch.dta to really appreciate.
* Changed the save format a little more, since I had free reign over it.
* Modified the string drawing functions to not awkwardly clip at the very edges of the screen, considering the relevant patch drawing functions avoid out-of-range memory writes.
2017-08-20 23:18:47 +01:00
toasterbabe
fd63db0aaf Starting lives revamp, per the 2.2 priorities topic list!
* Each time you die, the number of game overs you've had is counted.
* Your save file updates to record this.
* The number of startinglives is determined by the number of times you'ved game-overed, with the maximum being infinity lives (thereby providing a cap on the number of game overs you can go through in a typical game).

Requires a new patch.dta, but I'm not uploading that yet because not happy with the icon we've got going for infinity lives on the save select menu.
2017-08-18 00:58:16 +01:00
Monster Iestyn
9f726bc66d Merge branch 'new_coop' into 'master'
New Co-op

See merge request !104
2017-08-16 15:01:39 -04:00
Monster Iestyn
75d363527b Merge branch 'toastfixes' into 'master'
An assortment of relatively minor bugfixes and behaviour tweaks

See merge request !110
2017-08-16 14:58:30 -04:00
toasterbabe
f6670fea76 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop
# Conflicts:
#	src/r_things.h
2017-08-16 19:29:23 +01:00
toasterbabe
06dc30ea54 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch
# Conflicts:
#	src/dehacked.c
2017-08-14 21:34:37 +01:00
Nevur
4f8d53b329 Got rid of functions I added once but turned out to be unnecessary. 2017-08-11 15:46:46 +02: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
toasterbabe
780f9b1645 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop
# Conflicts:
#	src/hardware/hw_md2.c
2017-08-07 20:36:14 +01:00
Monster Iestyn
42ed41aeb1 Merge branch 'maces_but_better' into 'master'
Maces but better

See merge request !103
2017-08-07 15:27:05 -04:00
Monster Iestyn
f3b7d2f89e Merge branch 'opengl-improvements' into 'master'
OpenGL improvements

See merge request !99
2017-08-07 15:06:16 -04:00
TehRealSalt
a813506b8f Clean whitespace 2017-08-06 23:47:39 -04:00
TehRealSalt
a5ca158622 LF_SAVEGAME flag instead of savemode
Also always save on file creation
2017-08-06 16:36:55 -04:00
TehRealSalt
e24b8b917a Merge remote-tracking branch 'refs/remotes/origin/master' into save-mode 2017-08-06 01:19:33 -04:00
toasterbabe
b51e80ef88 Make timer reset work in LF_NORELOAD as well. 2017-08-05 22:13:35 +01:00
toasterbabe
0a1e055ba1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop
# Conflicts:
#	src/m_menu.c
2017-08-05 22:13:14 +01:00
Monster Iestyn
15a1112218 Merge branch 'master' into opengl-improvements 2017-08-05 21:08:48 +01:00
Monster Iestyn
2e2b71da92 Merge branch 'addfile_menu' into 'master'
Add-ons menu

Does what it says on the tin! Very pretty. Would like help testing in filesystems that are not Windows, although I've recieved assurances from Sryder that since it's based on the same filesrch code, it should work cross-platform. Just want to confirm it works, though.

Also, M_* is whitelisted lumpname too.

root/!LatestSRB2Files/srb2win_branch_addfile.exe, requires new patch.dta.

See merge request !92
2017-08-05 16:05:12 -04:00
Monster Iestyn
102d30fe8d Merge branch 'nights_emblems' into 'master'
NiGHTS Paraloop-special emblems

Implemented the two NiGHTS Emblem types in the TUDD via var modifications to ET_GLOBAL!
* GE_NIGHTSPULL (for it to chase you once paralooped) - Sun emblem
* GE_NIGHTSITEM (for hidden until paralooped) - Moon emblem
* Combined means that you essentially have to loop it twice.

Also, revamped NIGHTSITEM to suck a little less (and have more compatibility with MT_EMBLEM).

Check out root/!LatestSRB2Files/srb2win_branch_nightsemblems.exe with the latest patch.dta, along with root/toaster/nightstest.soc for a sample in GFZS.

See merge request !94
2017-08-05 16:03:33 -04:00
toasterbabe
e2a9d47ef6 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop 2017-08-05 12:28:31 +01:00
toasterbabe
8fcb66b3fa Allow for new coop leveltime reloading 2017-08-05 12:26:05 +01:00
Monster Iestyn
157c5625d7 Welp, that space removal was my fault 2017-08-04 22:22:20 +01:00
Monster Iestyn
0270e50ce5 Split off mostly map-specific code into a "CanSaveLevel" function, just to make things a bit less cluttered 2017-08-04 20:43:00 +01:00
TehRealSalt
9d17466d99 Added lastmaploaded to replace the lastmapsaved check
This allows saving in special cases where you can go to a map that
doesn't save, and then back to the map you saved on (see: SUBARASHII
special stages), while still preventing you from killing your lives by
repeatedly retrying in said map.

Kept lastmapsaved just in case. Can be removed if deemed unnecessary.
2017-08-03 20:27:31 -04:00
TehRealSalt
0b05b10bdb Merge remote-tracking branch 'refs/remotes/origin/master' into save-mode 2017-07-30 11:13:52 -04:00
toasterbabe
a5477737d7 Whooh boy. Probably requires re-review.
* Support for MF_PAPERCOLLISION tmhitthing in P_SlideMove.
* Knockback for wallspikes is much more consistent.
* Optimised away a FixedDiv call when determining the slopetype of a line.
* Changed the position of the wallspike base slightly.
* Made it so NOTHING can step up onto the player outside of other players, essentially killing a bunch of springs-launch-with-players style bugs. (I was able to recreate that issue with the wallspikes until I added this, which is why I did it in this branch.)
2017-07-18 14:17:23 +01:00
toasterbabe
125646e521 Some minor tweaks to make countdown not COMPLETELY broken. 2017-07-04 21:33:16 +01:00
toasterbabe
370d9c3176 Hooh boy.
****
* MF2_MACEROTATE. Apply to any object. Replaces the indiscriminate spamming of A_MaceRotate each tic.
****
* Mace point mapthings have been slightly modified.
   - MTF_AMBUSH: bigger luke theory (has no effect on custom mace, different effect on spring mace)
   - MTF_OBJECTFLIP: flips the objects, but nothing else - just so it doesn't look out of place in gravflip sections
   - MTF_OBJECTSPECIAL: keeps it from attempting to play swinging sounds
   - angle: tag of controlling linedef
   - parameter: number of "spokes" minus one - for example, a parameter of 2 results in 3 equidistant maces rotating around the same point.
****
* Mace linedefs have been significantly revamped.
   - line dx: number of chain links
   - line dy: speed (in FU)
   - frontside floor height: Pitch (in degrees; how much it "tilts" over - Yaw influences the axis it's tilting on)
   - frontside ceiling height: Yaw (in degrees; rotation of entire thing on xy plane)
   - frontside x offset: Phase (in degrees; how far it is through the rotation cycle)
   - frontside y offset: Max speed (in FU; if less than speed, set to speed*2)
   - backside floor height: Pinch (in degrees; 0 if no backside; essentially makes rotation conical instead of wheel-like)
   - backside ceiling height: Roll (in degrees; 0 if no backside; rotates on the axis of the spinning - identical to Phase for spinning maces, but useful for rotating swinging maces as opposed to just offsetting them)
   - backside x offset: Number of "antispokes" (0 if no backside; makes that many spokes not exist so you can put another mace/chain type in there instead; for combo mace/chain instead turns them into chains directly)
   - backside y offset: Width (in number of extra chains per side; 0 if no backside; creates a "skiprope" arrangement)
   ----
   - ML_NOCLIMB: for chains and chain-mace combos, allow for player control of yaw through strafe keys
   - ML_EFFECT1: replacing the seperate mapthings, this makes a mace type swing instead of spin.
   - ML_EFFECT2: for all spokes of the mace wheel ending in maces, make the chains out of the mace type (inverted for firebars)
   - ML_EFFECT3: spawn a bonus mace type at the center(s) of rotation
   - ML_EFFECT4: don't clip inside ground
****
* Mapthing 1104 represents both spinning and swinging maces from prior versions of SRB2.
* Mapthing 1105 has gone from being a swinging mace variant to a combination of chains and maces in a single unit, provided the number of "spokes" is greater than one.
* Mapthing 1105 has gone from being a swinging chain variant to a vertical spring-on-a-ball-on-a-chain. Yellow by default, apply MTF_AMBUSH to turn into a red spring.
* Mapthing 1107 represents both spinning and swinging chains from prior versions of SRB2.
* Mapthing 1108 is completely untouched except to port over 2.1's functionality to the new backend.
* Mapthing 1109 is a Mario castle-level style firebar. This inverts the functionality of ML_EFFECT2 on the tagged linedef.
* Mapthing 1110 is a free slot should we want to implement another type of base-game mace.
* Mapthing 1111 is a custom mace. Use the linedef's frontside texture slots to identify a macetype mobjtype, then use the backside texture slots to identify a linktype mobjtype (defaults to MT_NULL if no backside).
****

Whooh. Requires new patch.dta for sprites.
2017-07-02 15:11:09 +01:00
Nevur
f6bd414f35 Fixed stuff which I removed accidentally when manually tweaking p_setup.c on the merge. 2017-06-25 18:30:53 +02:00
Nevur
d3a652aa15 Fix merge issue. 2017-06-25 15:39:45 +02:00
Nevur
35189dc219 Fixed PK3s.
-Colormaps, palettes and other stuff are properly loaded now. It was a bug related to the generation of the lump name with files in the root of the PK3.

Known issues:
-Map WADs' REJECT and BLOCKMAP are still not loaded.
2017-06-25 14:02:39 +02:00
toasterbabe
8d8ae2b538 Renamed again, and this time I'm happy with it.
* "playstyle" to "coopstarposts"
* "lifedistribution" to "cooplives"
2017-06-03 17:55:03 +01:00
Monster Iestyn
cefd92fc8e Merge branch 'master' into opengl-improvements 2017-05-31 15:18:42 +01:00
toasterbabe
4353fa65a2 * Spectatoring for game over supported.
* Don't lose lives when you die as a spectator.
2017-05-30 20:31:51 +01:00
Nevur
19c46f3732 More PK3 work.
-Removed code duplicity on map resource reading.
-Fixed all known PK3-related bugs so far except for the ones mentioned below.
Issues:
-Blockmap and reject matrix still aren't loaded yet when using a map WAD.
-Palettes and colormaps aren't loaded (by extension, TRANS tables might not work either).
2017-05-18 21:13:18 +02: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
toasterbabe
9445455fb1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-05-11 22:02:12 +01:00
toasterbabe
61fcbe9b36 Implemented the two NiGHTS Emblem types in the TUDD via var modifications to ET_GLOBAL!
* GE_NIGHTSPULL (for it to chase you once paralooped) - Sun emblem
* GE_NIGHTSITEM (for hidden until paralooped) - Moon emblem

Combined means that you essentially have to loop it twice.

Also, revamped NIGHTSITEM to suck a little less (and have more compatibility with MT_EMBLEM).
2017-05-09 16:20:26 +01:00
toasterbabe
7f83e0d134 * Prevent crash if you go to a map and it doesn't exist.
* Handle music fix in smarter way.
* Enums!
2017-05-09 11:09:58 +01:00
toasterbabe
3a4e091ba6 * Fix titlemap music change bug reported by Larztard
* Clean up titlemapinaction so that it isn't true when you're playing
* Don't print "SPEEDING OFF TO [ZONE] [ACT 1]..." on screen if it's a titlemap - keep a nice and pretty black screen
2017-05-09 00:48:07 +01:00
toasterbabe
72baa4e2d0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into addfile_menu 2017-05-08 23:43:21 +01: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
toasterbabe
1fc835e4a3 Made the refreshdirmenu stuff SLIGHTLY less hacky. 2017-05-08 17:28:48 +01:00
Nevur
ea2846394e More PK3 work. Now we're getting somewhere.
-DEFLATE-compressed lumps work properly now.
-All "big" lumps are supported now with the exception of WAD maps.

Notes:
-Compiler spits out a shitload of warnings still.
-Individual lump reading clashes with folders of the same name (see TEXTURES lump, and the Textures/ folder).

Signed-off-by: Nevur <apophycens@gmail.com>
2017-05-07 12:30:06 +02:00
Nevur
8ef6d6fd9e A bit more work on PK3.
-Expanded folder recognition for PK3s. Some resources are still not loaded from them yet.
-Took a glimpse at how maps are loaded, since the flat recognition is rooted somewhere there; did nothing yet about it though.
-Working towards "generalizing" how new resources are handled. Some var and functionality redundancy is still present.
2017-05-06 16:52:53 +02:00
Nevur
2c614f8f2c More work on PK3 handling.
-Moved the MD5 check for added files up so it avoids unnecessary work when you mess up and re-add a file.
-Using compression enum for compressed lumps now.
-Vastly improved central directory seeking algorithm, big files are read fine now. Thanks a lot JTE!
-Improved remaining central directory navigation algorithm, we know and expect what data is coming from now on, after all.
-TX_ textures and sounds are replaced, but textures crash the game on mapload, and sounds are simply mute when replaced. Might have to do something with caching, I don't know yet.
2017-05-01 16:37:32 +02:00
Nevur
448ceefe84 Little progress made. The code from everywhere still looks for the basic WAD structure of the lumps.
-Removed a redundant boolean related to texture loading in P_AddWadFile.
-Started working on handling PK3s differently, except that I'm not sure about what I'm doing.

I don't know what to do from now on for today, so I'll leave it here for now.
2017-04-30 20:05:26 +02:00
Nevur
afba4b2abd Started to work towards PK3 support.
-Tweaked compression conditional to a switch-case format, looking towards adding several comrpession algorithms; haven't removed the previous "compressed" boolean yet.
-Added dynamically allocated name strings for lumps; haven't removed the previous name field.
-Added rudimentary PK3 central directory recognition; nothing is actually loaded in the end.
2017-04-30 14:49:33 +02:00
Monster Iestyn
21950687ed Make sure noreload levels don't do anything weird with the skybox mobj pointers, especially if Lua was involved
We can assume skyboxviewpnts/skyboxcenterpnts sort themselves out from reloading all the Things at least I guess?
2017-04-26 21:34:22 +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
d4c330678a level header's "forcecharacter" parameter doesn't take skin numbers anymore, so this isn't needed! 2017-04-25 20:39:32 +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
3ff899858c Merge branch 'master' into opengl-improvements
# Conflicts:
#	src/doomdef.h
2017-04-19 14:53:50 +01:00
toasterbabe
8f9ee2da30 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch
# Conflicts:
#	src/dehacked.c
#	src/p_setup.c
#	src/r_things.c
2017-04-07 15:37:22 +01:00
toasterbabe
3efa66d537 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/m_menu.c
2017-04-04 21:03:35 +01:00
Rob
8fdbc5669c Merge branch 'level_select' into 'master'
Revamped Level Select (platter view)

Seriously revamped every level select instance in the game to use a more attractive and easier to navigate platter view, including:

* Game CLEAR! save (Title/Pause menus)
* Secrets Menu (including custom ones)
* Record Attack/NiGHTS Mode
* Server creation (Online/2P)
* MP Pause level select (Online/2P)

As a result, the layout of the last three above menus has been changed to varying degrees of difference.

Also, bonus feature: using level select (or MAP MAPxx without -force) in Co-op multiplayer won't reset your score, will keep any lives you have above the startinglives variable, and will not take away all your emeralds. The -force thing prevents both warping directly to special stages to rack up the emeralds AND ensures there IS a way to start a new game.

Check out <root>/!LatestSRB2Files/srb2win_branch_levelselect.exe with the latest patch.dta to see more.

Also, LF2_WIDEICON lets you do this. https://gfycat.com/MenacingClearAngora

See merge request !68
2017-04-04 12:23:18 -04:00
toasterbabe
76b56a0285 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/p_user.c
2017-04-04 16:55:20 +01:00
TehRealSalt
a84eed162d Save mode
Lets modders set how the game should be saved. Likely useless for
vanilla, but helpful for other mods. This was spawned out of selfishness
for SUGOI to make it only save at the hub, but mods like Boss Mayhem,
which has a hidden map and an act 3 (without any other acts) in the
normal SP campaign, and other mods where the default is detrimental
would benefit as well.

0 for default, 1 for always, 2 for never (no constants because bonustype
doesn't have them either). Won't save if the game is modified, if using
a no-save slot, if playing ultimate mode, or if in a special stage, even
if savemode is set to always.
2017-03-29 18:25:09 -04:00
toasterbabe
b73b38c326 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-03-27 15:57:50 +01:00
TehRealSalt
e5245c508d Reimplemented analog mode cam_dist increase, slight comment updates
Analog mode's camera is now x1.2 of your actual cam_dist setting,
instead of being strictly 192. "analog on" seems to reset this modifier
every once in a while, but "useranalog on" prevents this. The wiki
itself says that you should only change useranalog though, so it
shouldn't be too big of a deal.
2017-03-26 17:11:04 -04:00
TehRealSalt
dbcbcf5da3 Changed defaults, camera settings save
Camera settings: distance from 128 to 160, height from 20 to 32, speed
from 0.25 to 0.3
Mouse sensitivity from 35 to 12
Default control setup is Mystic's proposed scheme from the New Player
Experiences topic (https://mb.srb2.org/showthread.php?t=42095)

Also, camera settings now save to config, and they no longer try to
reset back to the default at every chance it gets (you can die, start a
new game, or exit, all while still keeping your preferred setting)
2017-03-25 03:13:02 -04: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
4a68f191c8 Mostly-complete structural work, very much incomplete rendering work. 2017-01-26 19:14:52 +00:00
Monster Iestyn
18d018b8ff Merge branch 'master' into opengl-improvements 2017-01-25 19:37:35 +00:00
toasterbabe
299ba49161 Introducing skin patching! (Also, DELFILE is super dead.)
* Create a normal skin, but replace the S_SKIN lump with an almost empty one named P_SKIN.
* Provide "name = existing skin name as one of the first line (comments allowed)
* Reset individual spritenames back to zero sprite2s (or one for SPR2_STND to prevent complete removal) via "reset = SPR2_****" statements.
* No support for changing skin properties that are non-visual at the moment, but I don't really feel like it's wise to have those changable with patch alone. (Hello, tons of "modern Sonic" wadfiles which just change vanilla Sonic's ability to CA_HOMINGTHOK!)
* Sprites patch over.

To see an example in action, look at <root>/toaster/smilespatch.wad.
2017-01-17 00:16:23 +00: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
Monster Iestyn
93a40eb87a Merge branch 'master' into opengl-improvements 2017-01-09 22:13:34 +00:00
Monster Iestyn
3d07915be2 Merge branch 'vada_flickies' into 'master'
Hardcoded VAda Flickies

Many thanks to MI for his help, even if he has sinful opinions on what the collection of creatures should be called. ;P

* Flickies are now handled via A_FlickySpawn instead of hardcoded in P_KillMobj, so there can be mobjtypes with MF_ENEMY which don't create flickies, or other mechanisms which can much easier.
* Added map header "FlickyList" (aka "AnimalList") parameter, which can either be set to:
    * A species (eg: "Rabbit" or "Bluebird", amongst 17 currently supported types in dehacked.c table FLICKYTYPES - including the seed from Sonic CD, which isn't limited to 'soniccd on' in the console now)
    * Any valid mobjtype that isn't MT_NULL (eg: "MT_FLICKY_GHOST")
    * A comma-seperated list of either of the above, up to 64 entries long (eg: "Cow,MT_FLICKY_SPIDER,Chicken")
    * "All" - sets behind-the-scenes stuff to use every 'normal' type of flicky in FLICKYTYPES (a distinction which can be utilised to hide secret level flickies where they wouldn't be appropriate for the main game)
    * "Demo" - sets behind-the-scenes stuff to use the five flickies closest to the species used in the game's long history.
    * "None" - prevents any flickies from spawning.

"Demo" is functionally the default value if you don't include a FlickyList parameter in the header at all.

Of note, a bunch of functions are now created:
* A_FlickySpawn - spawns flicky.
* A_FlickyAim - aims for area near target, but not directly on them - turns around when hitting wall
* A_FlickyFly -  flies/swims around target (calls A_FlickyAim)
* A_FlickySoar - hacky alternate fly (calls A_FlickyAim)
* A_FlickyCoast - slowing down before going off again
* A_FlickyHop - fracunit-scale precision for A_BunnyHop
* A_FlickyFlounder - A_FlickyHop with randomisation
* A_FlickyCheck - State-setter for falling, or being on-ground
* A_FlickyHeightCheck - State-setter for falling, or being below a certain height relative to target
* A_FlickyFlutter - A_FlickyCheck, but with a slow fall/movement (calls A_FlickyCheck and A_FlickyAim)

I don't need to enumerate the object types and states that have been added, do I?

Oh yeah, I also made it so get_mobjtype's failure value was MT_NULL and prohibited SOC from editing the properties of it to compensate.

IN ADDITION: Killed "soniccd" console command, since it made things more complicated and honestly being able to specify Sonic CD seeds in the level header is a better option.

See merge request !60
2017-01-08 17:36:25 -05: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
12ae6bb22a Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/r_things.c
2017-01-07 15:03:59 +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
toasterbabe
6ed8d99b48 * Added "Flickylist = DEMO" option, creating the five species of flicky similar enough in appearance to the Freed Animals from the days of yore.
* Set the default flicky group to be equivalent to Flickylist = Demo.
* Refactored a little. (This also removed a crash-causing typo in a Z_Free in P_ClearSingleMapHeaderInfo.)
2017-01-01 16:57:07 +00:00
toasterbabe
d9177f778f * Made what MI had compile.
* Added the ability to read in mobjtypes as well as from a short list of flicky constants.
* Added a new state, S_XPLD_FLICKY, which is the new deathstate of all badniks.
* Put the disabled animal-spawn-on-P_KillMobj behind a #define.
* Renamed the branch and associated properties to something not rife with sin.
2016-12-29 17:02:05 +00:00
Monster Iestyn
cecc1912fe Starting work on adding new system for spawning animals; added A_FlickySpawn and level header "animallist"/"flickylist" parameter
No idea if this compiles yet (let alone if what is there works at all), just getting this out the way so I can work on certain other things *cough plane displacement cough*
2016-12-27 21:01:20 +00:00
Monster Iestyn
106e1aa8d5 Merge branch 'master' into opengl-improvements 2016-12-21 19:49:02 +00:00
Monster Iestyn
d294c9d15c P_NetUnArchiveWorld now uses P_AddLevelFlatRuntime instead of P_AddLevelFlat.
Also created P_CheckLevelFlat to just return the flat # from a name, since that's all P_NetArchiveWorld really needed from P_AddLevelFlat anyway
2016-12-08 21:45:25 +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
Inuyasha
e62b0f219f Merge branch 'damage-control' into 'master'
Damage control + Match rebalancing

This is two branches in one since while I was working on damage-control's changes months back, I felt it was best Match rebalancing was merged in here too (thanks JTE for helping me do so).

Changes from damage-control:
* `player->health` (formerly the "HUD copy" of `player->mo->health`) is now `player->rings`, and is also now the player's actual ring count.
* `player->mo->health` (formerly rings + 1) is now always 1 when alive, regardless of ring count; if player with rings is damaged, this is untouched.
* P_RingDamage now includes ring spilling code.
* P_ShieldDamage now has a damagetype argument, allowing me to remove the last MT_NULL hack left in from the pre-damagetype days that I forgot about.
* The old "switch-to-seestate" enemy damaging behavior in P_DamageMobj has been removed. This was a Doom left-over and doesn't really affect SRB2's enemies anyway - see, Doom enemies had a random chance of using seestate or painstate, SRB2 enemies always use painstate.
* Other minor efforts to reorganise damaging code and have it make more sense, but otherwise nothing that should affect gameplay in general.

Changes from match-rebalancing:
* New weapon/ammo dropping behavior: if you have the weapon panel + ammo, you drop the panel (but not the ammo); if you don't, you just drop the ammo.
* New Match ammo consumption: Weapon rings can now be fired with no rings at double the ammo cost.
* New emerald behaviour: collecting all 7 emeralds no longer turns you super (read: Match super is dead now) but instead steal points from enemies and gives you and teammates invincibility + sneakers
* Tails ringslinger buff: Any character with CA_FLY will now throw rings 1.5x as fast.

See merge request !28
2016-11-13 16:47:05 -05:00
Monster Iestyn
fea97b4880 Merge branch 'master' into next 2016-11-10 16:45:49 +00:00
Monster Iestyn
5be8e4f1b0 Make new pv1/pv2 seg pointers, so AdjustSeg doesn't modify the v1/v2 pointers directly anymore
Yes I know they're void * in r_defs.h's seg_t definition, it's quicker than trying to figure out if including hardware/hw_glob.h is a good idea or not
2016-11-07 21:55:56 +00:00
Inuyasha
8107765677 make console back color use just one section of memory
let's be honest, it's pretty dumb to have every single possible back colormap in memory when only one is being used at a time
2016-11-02 14:26:35 -07:00
Monster Iestyn
82d29b59c1 Merge branch 'master' into damage-control 2016-10-29 17:05:59 +01:00