Commit graph

682 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
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
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
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
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