Commit Graph

261 Commits

Author SHA1 Message Date
Jaime Passos 03a3b02301 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-25 05:43:46 -03:00
James R 02779cb6ef Merge remote-tracking branch 'origin/master' into next 2019-12-24 11:53:49 -08:00
James R be063c454a Fix NOPNG compiling 2019-12-24 11:37:37 -08:00
MascaraSnake a4fde93fbb Merge branch 'next' into virtres
# Conflicts:
#	src/p_setup.c
2019-12-22 23:02:47 +01:00
Jaime Passos 53885e5ac0 Free PU_HWRMODELTEXTURE tag 2019-12-17 16:28:32 -03:00
Jaime Passos cc54163210 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-17 16:12:44 -03:00
MascaraSnake bb3440d021 Minor cleanup of virtual resources code 2019-12-16 00:04:48 +01:00
James R c1d54007e4 Fix C90 error from NOHW 2019-12-14 13:30:10 -08:00
Nev3r edfe053cc3 Treat warnings as errors; comment out unused function. 2019-12-11 16:37:41 +01:00
Nev3r 854d50f479 Added 'virtual resource' mechanism for temporary memory loaded lump lists. If you can come up with a better name then I'm all ears. 2019-12-11 11:44:46 +01:00
Jaime Passos 9248f12d55 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-10 23:01:10 -03:00
MascaraSnake bf477c6ed4 Merge branch 'master' into nondevelop 2019-12-06 23:23:01 +01:00
Steel Titanium d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
toaster 9e38af7421 * Fix unintentional order-of-operations crash with non-DEVELOP executables (resolves #461).
* Update md5s.
* Update modversion.

TODO: Should we change MODID, given 2.0 apparently had a different MODID to 2.1?
2019-12-06 17:14:51 +00:00
Jaime Passos 839251633c fix ErrorIfPNG errors 2019-12-04 15:26:51 -03:00
Steel Titanium efac76f833
Merge branch 'public_next' into 'master' 2019-11-18 15:39:41 -05:00
MascaraSnake 8f6890025c Merge branch 'secretstuff' into 'master'
The letter

See merge request STJr/SRB2Internal!438
2019-11-14 17:49:23 -05:00
Jaime Passos 10d1b63ff2 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-11-14 12:49:03 -03: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 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 91a01be891 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-11-11 14:41:55 -03:00
James R d2a7a87c7f Fix nonpacked to packed cast for OpenGL 2019-11-07 16:30:29 -08: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
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 0a49340ae1 Fix warnings when NOPNG=1 2019-10-28 23:46:33 -03:00
Jaime Passos a22af36305 add r_patch.c 2019-10-28 15:28:42 -03:00
Jaime Passos 7746767735 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-10-06 17:40:41 -03:00
Jaime Passos fe60902df5 Merge remote-tracking branch 'origin/master' into renderswitch 2019-09-27 22:53:57 -03:00
toaster 361be5c659 Merge branch 'nmus-pk3' into 'master'
Support W_VerifyFile on PK3

See merge request STJr/SRB2Internal!328
2019-09-20 11:35:22 -04:00
Jaime Passos db979845e0 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-09-15 16:24:24 -03:00
James R 86f9609623 Support W_VerifyFile on PK3 2019-09-12 17:06:57 -07:00
Jaime Passos aa91627ba2 Allow PNG graphics to be used as patches
Also allows them to be used as sprites.
2019-09-11 16:59:28 -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
Alam Ed Arias f67f9405bc Merge remote-tracking branch 'origin/master' into flats-png 2019-07-24 19:07:36 -04:00
mazmazz dc0a92ea62 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla 2019-06-29 17:51:30 -04:00
mazmazz 22629cccbe Merge branch 'public_next' into internal-md3-vanilla 2019-06-29 16:23:19 -04: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
mazmazz 521d8fd8c1 Merge remote-tracking branch 'public-gl/master' into md3-vanilla 2019-06-29 15:02:07 -04:00
Monster Iestyn 3a9ce483f5 Merge branch 'master' into next
# Conflicts:
#	src/r_data.c
2019-06-28 23:24:36 +01:00
Jaime Passos 28566008b4 Merge remote-tracking branch 'upstream/master' into flats-png 2019-06-25 16:02:35 -03:00
Monster Iestyn 826e8e1aaf Fixed goofups I missed back 3 months ago 2019-06-23 17:51:58 +01:00
Monster Iestyn d9ca8b45d3 Saving work so far, UNTESTED
# Conflicts:
#	src/r_data.c
2019-06-23 17:51:36 +01:00
Sryder 5f339fc2a9 Don't overlap strncpy in WAD file load 2019-06-23 14:52:49 +01:00
Monster Iestyn ce6db1cc9c Merge branch 'public_next' 2019-06-22 22:44:42 +01:00
Sryder13 8444379d53 Free the zentries 2019-06-22 00:52:28 +01:00
Sryder13 83da71f809 Merge branch 'master' into pk3_leak 2019-06-22 00:28:14 +01:00
Sryder13 dcd4995eb3 Remember to end inflating 2019-06-22 00:19:34 +01:00
Monster Iestyn 149a8bb760 Merge branch 'public_next' 2019-06-21 22:13:39 +01:00
Monster Iestyn bc2804d383 Fix the clearly accidental duplication of lumpinfo's memory allocation in ResGetLumpsStandalone 2019-06-20 13:24:54 +01:00
Jaime Passos 39857a846a PNG support 2019-05-26 23:37:23 -03:00
mazmazz 3d90488d17 Merge remote-tracking branch 'public-gl/master' into md3-vanilla 2019-05-02 17:43:40 -04:00
Monster Iestyn 7ae6d5ee8c Merge branch 'public_next'
# Conflicts:
#	src/doomstat.h
#	src/g_game.c
2019-03-28 14:19:02 +00:00
Monster Iestyn 7441dd7d9b Merge branch 'master' into next 2019-03-25 18:08:36 +00:00
Steel Titanium 6d751ff302 Remove the define. 2019-03-15 18:46:25 -04:00
Steel Titanium 5a170b9e4e Merge branch 'master' into errorifpng 2019-03-15 16:40:47 -04:00
Steel Titanium 15323328c5 Check using memcmp() 2019-03-03 22:43:21 -05:00
Steel Titanium 3d5d02fc15 Error if the lump is a PNG lump 2019-03-03 19:58:01 -05:00
Monster Iestyn a93e96c75b Merge branch 'public_next'
# Conflicts:
#	src/sdl12/Srb2SDL-vc10.vcxproj
#	src/sdl12/Srb2SDL-vc9.vcproj
#	src/sdl12/macosx/Srb2mac.pbproj/project.pbxproj
#	src/sdl12/macosx/Srb2mac.xcodeproj/project.pbxproj
2019-03-02 20:51:15 +00:00
Alam Ed Arias c2618fd987 Merge branch 'master' into next 2019-03-01 17:32:17 -05:00
Alam Ed Arias f823768699 Fix building without BLUA support 2019-03-01 17:31:32 -05: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
Nev3r 7d09149b04 Solved conflicts related to PK3s
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-01-07 19:00:31 +01:00
mazmazz a3fd5e7247 Revert "Un-dummy md5 checks"
This reverts commit 908a6d321d.
2019-01-04 11:31:20 -05:00
mazmazz 908a6d321d Un-dummy md5 checks 2019-01-02 23:31:29 -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
Digiku 393c64b8bc Merge branch 'expanded-nmuslist' into 'next'
Expand NMUSList to include HUD changes

See merge request STJr/SRB2!388
2019-01-01 15:06:04 -05:00
Arthur 587ffa9ada Removed gr_voodoocompatibility as even low-power mobile devices do not have this limitation
No longer using byte2float in DrawPolygon -- use the surface color data directly
Vertex Buffer Objects for non-interpolated model frames
Removed some old unused paletted texture stuff
2018-12-27 00:35:29 -05:00
mazmazz 1b7a9aaa01 2.1 Score/Time/Rings lump name 2018-12-16 16:53:13 -05:00
mazmazz 899120e475 Revert NMUSlist to original 2.1 2018-12-16 16:42:57 -05:00
mazmazz d7321fd8c4 Pull expanded NMUSlist from 2.2 2018-12-16 16:40:40 -05:00
mazmazz 046d36a657 Remove Kart entries from NMUSlist 2018-12-16 16:08:31 -05:00
mazmazz f0967520ed Compile fixes; enable PK3 support in addons menu
* Add missing vars highlightflags, recommendedflags, warningflags from Kart
* V_GetStringColormap() use vanilla behavior because Kart behavior glitches for us
* V_GetStringColormap() made non-static
2018-12-15 21:44:39 -05:00
mazmazz 37950341ec Merge remote-tracking branch 'public-gitlab/next' into addons-backport 2018-12-15 20:52:46 -05:00
mazmazz 0a3b3736bf Handle Kart-specific changes; add PK3 to exttable 2018-12-15 20:50:33 -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
Monster Iestyn e0a1c43813 Free lump names *before* either lumpinfo or the WAD itself! 2018-11-30 14:19:47 +00:00
Monster Iestyn 305ad4f73e backport some cleanup that I clearly missed wasn't there already to do with ZWAD lump loading 2018-11-29 14:16:02 +00:00
Monster Iestyn 3e6388c183 use UINT8 * instead of void or Bytef * 2018-11-27 15:49:41 +00:00
Monster Iestyn 1889c36dea add HAVE_ZLIB around the rest of the zlib stuff in w_wad.c/h, move zlib.h inclusion down below doomdef.h etc includes in case that does anything for compiling (?) 2018-11-27 13:57:32 +00:00
Alam Ed Arias b7f7c2ecf7 PK3: fixup support for newer version of zlib 2018-11-26 20:08:26 -05:00
Alam Ed Arias 4e332b3848 Fix MSVC build 2018-11-26 18:27:07 -05:00
MonsterIestyn b53cd70201
Merge branch 'next' into PK3-BackportNext 2018-11-26 18:56:51 +00:00
mazmazz ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Nev3r d7b3cf9314 Forgot the alignment for compact structs.
Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-25 11:35:19 +01:00
Nev3r 32a9e40baa Progress?
Get all IO outputs used for possible errors.
Attempt to fix errors from travis-ci.

Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-25 11:11:50 +01:00
Nev3r 7c44054aa3 Take out the ifdef?
Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-25 09:48:52 +01:00
Nev3r ec67c4cbd6 Fix uninitialized pointer.
Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-24 23:39:31 +01:00
Nev3r a1fb333e9b Revamped the lumpinfo_t array generation code.
-The resource type is 'adequately*' detected first.
-The type-specific behaviors are now contained in their own functions, which are called accordingly for each.
-The PKZip lumpinfo_t generation has been almost entirely rewritten.
-If the functions return null pointer, the resource addition is considered invalid and pops an error.
2018-11-24 22:58:35 +01:00
Nev3r cb0c31fa9a Final touches
-Backported multiple per-wad/pk3 ANIMDEFS supported now, just like TEXTURES.
-Removed now-unused function.

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

Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-23 17:58:45 +01:00
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
mazmazz 74da082c75 Merge remote-tracking branch 'origin/master' into HEAD 2018-11-20 23:19:36 -05:00
Monster Iestyn 268bde3fdf Merge branch 'public_next'
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/dehacked.c
#	src/g_game.h
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/lua_baselib.c
#	src/lua_hook.h
#	src/lua_hooklib.c
#	src/lua_hudlib.c
#	src/lua_libs.h
#	src/lua_maplib.c
#	src/lua_script.c
#	src/m_misc.h
#	src/p_mobj.c
#	src/s_sound.c
#	src/sdl12/mixer_sound.c
#	src/w_wad.c
2018-11-10 15:41:57 +00:00
Monster Iestyn 0f37411e2b Make sure handles of files opened by W_LoadWadFile are closed if we abort loading the files for whatever reason.
ESPECIALLY if the file is already loaded in SRB2, that's just silly.
2018-11-02 20:48:12 +00:00
Monster Iestyn 291ebf302c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/lua_script.c
#	src/p_user.c
#	src/sdl/i_system.c
#	src/v_video.c
#	src/w_wad.c
2018-10-10 14:51:34 +01:00
toaster 1324e0bfcd * Fix a memory leak regarding implementation of SOC_ (improperly copypasted code from LUA_LoadLump!!)
* Optimise the repeated strlen usage into a single call, which is stored for later.
2018-10-08 18:50:17 +01: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
toaster bd3e9cc067 Major refinement of Add-ons menu!
* Kill addonsresponselimit, which was a hacky solution to a stupid problem. Instead...
* Allocate and consistently handle memory to store the name of an added file so we can reference it directly.
* Replace the choice between ./ and a custom folder with the full, standard assortment of Default (usehome ? SRB2HOME : SRB2PATH), HOME (SRB2HOME), SRB2 (SRB2PATH) or Custom (cv_addons_folder.string).
* Make these render as the name plus folder, since you can't go UP... from the top level.
* Make the path seperators consistently system-based re PATHSEP. (Quite frankly, I'm surprised it even worked in the first place...)
2018-06-18 16:55:34 +01:00
toaster 00d75840b6 Not necessary on-topic devwork, but using global variables I developed in internal to make there less code repetition/iteration in the WAD limit checks. 2018-06-18 12:49:06 +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
Monster Iestyn 49b8fd6d67 Don't attempt to load the "Lua/" or "SOCs/" folder lumps themselves as Lua/SOC lumps 2018-02-13 21:12:42 +00:00
Monster Iestyn 8556a05668 Fix SOC/Lua loading messages to display full names or even display at all (for PK3s at least), and otherwise some cleanup of existing code for the messages.
Also, I moved lua_lumploading on/offing to LUA_LoadFile.
2018-02-09 22:43:08 +00:00
Monster Iestyn ddf82949bf W_IsLumpWad: check if the file is a PK3, so it can bail out if it isn't 2018-01-10 19:13:29 +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 29d605a104 clarify this comment a little better 2018-01-04 15:17:32 +00:00
Monster Iestyn 6590d97338 clean up CM_LZF code in W_ReadLumpHeaderPwad 2018-01-04 15:14:53 +00:00
Monster Iestyn 8d07e2f8be Merge branch 'master' into file-loading-cleanup 2018-01-02 18:46:02 +00:00
Alam Ed Arias 75abd428fc MSVC2015: fixup 2018-01-02 13:22:10 -05:00
Monster Iestyn 91097fb48e added RET_SOC and RET_LUA, so we can load SOC/LUA files differently to WADs
this also means we can remove a few ancient hacks relating to using the same code used to load SOC/Lua in WADs for loading standalone Lua/SOC files, though I haven't fully done this yet
2017-11-10 22:36:37 +00:00
Alam Ed Arias 7f4424b4a0 whitespace cleanup 2017-11-02 23:13:34 -04:00
toasterbabe 3a96c507a2 * Made PK3s fail the music lump check, because... that method of checking doesn't really work with it.
* Improve the output of listwad to identify unimportant, non-networked files. https://cdn.discordapp.com/attachments/237467298590490625/371314970002063370/srb20044.png
* Fixed mainwads being one too high due to the removal of rings.dta.
2017-10-21 16:18:28 +01:00
toasterbabe 50d6208913 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-10-21 14:28:44 +01:00
Alam Ed Arias 021417500e Do not use Win32's TRUE/FALSE is OS independent code 2017-10-07 19:08: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
wolfy852 a3cfa8dd5c Fixes from toaster, plus some other stuff 2017-10-07 14:52:27 -05:00
Monster Iestyn 302d0425e0 Incinerated WinCE 2017-09-29 23:25:34 +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
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 8b64a6eef3 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-08-08 10:41:33 +02:00
Nevur 677c1045a1 The sprites stuff is changed now.
-PK3 loadtime drastically reduced, even for very big files.
-Looks for srb2.pk3 now instead.
-"flipped the switch" for sprites.
2017-06-25 23:04:51 +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
Nevur 16336dbe22 I'm pushing this because I'm having issues. Changes so far:
-Folders aren't loaded as lumps anymore
-Can now load an arbitrary number of TEXTURES lumps in PK3s. Name them textures.gfz, textures.thz, ..., for example.
2017-05-28 21:47:15 +02:00
toasterbabe d685060aef Store importance (nmuslumps check) to prevent having to do it again when doing d_netfil stuff. 2017-05-27 14:01:26 +01:00
toasterbabe c2705b4662 * Make wads that don't modify the game not count towards the internal packet size tally in w_wad.c, like they wouldn't in d_netfil.c.
* Now that it's consistent, removed the redundant packet size tally check in d_netfil.c.
2017-05-24 21:45:03 +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
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
toasterbabe bf740f60cc Whitelist menu stuff so VAda can have his XP themed icon set without setting ismodified. ;P 2017-05-06 20:22:47 +01: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
toasterbabe 66f56bbba3 * Menu always updates for file load... by doing the refresh in the drawing function, eep. Oh well.
* M_StartMessages when file loading goes wrong! (Determined by CONS_Alerts of warning level CONS_WARNING and CONS_ERROR happening after W_LoadWadFile has been called.)
* Now actively tries to keep your place on the menu if files are deleted between calls to preparefilemenu().
* More enums! DIR_ (for if you want to try embed more metadata in the dirmenu strings) and REFRESHDIR_ (for refreshing the menu and handling warnings).
* Handle changing size menu between calls to opendir() better.
* Don't crash on draw/enter attempt if one of the dirmenu's is null.
* Moved the addons menu to OP_MainMenu instead of MainMenu for now so it can be tested in MP without needing to mess with several menus.
* Display the amount of space used for serverinfo_pak's fileneeded on the addons menu, both visually and with a percentage.
2017-05-03 22:36:08 +01:00
Nevur b60010f0f1 Tweaked so that it spits out an error for unsupported compression formats. 2017-05-02 19:20:29 +02:00
Nevur 0c73dae57d Submitted changes so far. Deflate doesn't work yet, apparently. 2017-05-02 18:04:16 +02:00
Nevur 9246ab8429 Tweaked lump reading functionality.
-Removed functions exclusively used by W_ReadLumpHeaderPwad.
-Merged those functions into the main one, optimized the structure.
2017-05-02 15:40:31 +02:00
Nevur 1b881afb99 Remember when I said I'd stop for today? I lied.
-Lumps are loaded fine now. Essentially non-compressed PK3s are supported now.
2017-05-01 19:16:30 +02:00
Nevur e125dedbe9 sdad 2017-05-01 18:33:41 +02:00
Nevur 65b89f6c0f Oops. It should compile now. 2017-05-01 16:43:52 +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 376d2a2da3 Further work on PK3 support.
-PK3 files are now properly loaded as files.
-PK3 lumps are still being treated the same way as WAD files. It means they're dependant on markers, if that makes any sense in the context of a ZIP file (it doesn't). I haven't worked out this part yet but I obviously intend to do so.
-I don't know if the lumps' position address is correct, we'll figure out when I fix the thing from above.
2017-04-30 17:43:11 +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 5608c4b4e7 Merge branch 'public_next' 2017-04-26 16:17:29 +01: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
Inuyasha 0e9761bc57 HUD changes don't trip isgamemodified
(some HUD patches renamed because they're dumb)
2017-03-19 05:37:04 -07:00
Monster Iestyn 84727f4205 Created W_OpenWadFile for opening WAD files with the path correction code.
This is used by Command_Addfile in the MD5 calculation code, so that it can search subfolders properly and allow addfile in netgames to treat them the same way as in SP
2017-02-16 21:55:17 +00:00
toasterbabe 0ddb8b0b33 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-01-20 13:54:42 +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