Commit graph

685 commits

Author SHA1 Message Date
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