830 Commits

Author SHA1 Message Date
Fabian Greffrath
a36744b516 let max screenwidth correspond to 21:9 width in hires mode
Also, account for the fact that I_GetScreenDimensions() works
entirely in the lores regime and adapt SCREENWIDTH calculation
accordingly.
2021-11-22 11:58:54 +01:00
Fabian Greffrath
88c93e2fe6 add Crispy comment 2021-11-22 11:41:53 +01:00
Fabian Greffrath
dac878f0d9 only compose etxtures of patches that are in the range of known patches
Fixes a crash at startup with t-drought_RC2.wad
2021-11-22 11:38:31 +01:00
Fabian Greffrath
a23722bf4b only check for double-clicks from second click on (cosmetic change) 2021-11-21 00:13:14 +01:00
Fabian Greffrath
e04346a551 fix double-click acts as "use" for subsequent clicks
Fixes #357
2021-11-20 21:49:25 +01:00
Fabian Greffrath
d613d99b7f add -noload and -noautoload parameters which prevent autoloading of WADs and DEHs 2021-11-20 21:31:42 +01:00
Fabian Greffrath
ff6a3aed44
report current and next level when typing IDCLEV (#354) 2021-11-19 10:33:07 +01:00
Roman Fomin
1ae0dc9462
support for any map (#352)
* support for any map

* fix dprintf name

* simplify VANILLAMAP, reformating

* WRAP music indices around (from PrBoom+)

* integrate old check

* add lnames check

* more paranoid checks for accessing the lnames[] array

* do IDCLEV sanity checks only if map is unavailable

* skip episode sanitizing in G_InitNew() if map is available

* Vanilla maps must be > 0

* remove redundant check

* don't draw blood splats for map > 9

* fix E99M99

* UMAPINFO: fix next/nextsecret may cross episode

* fix gcc warning

* another attempt to fix gcc warning

* change sprintf->snprintf

* change snprintf format

* increase buffer size

Co-authored-by: Fabian Greffrath <fabian@greffrath.com>
2021-11-19 08:25:37 +01:00
Fabian Greffrath
a8bd6cc1cf release Woof! 8.0.0 woof_8.0.0 2021-11-18 10:36:38 +01:00
Fabian Greffrath
74ffa3addc get rid of strlwr() 2021-11-17 21:45:13 +01:00
Fabian Greffrath
4104209912 add range-checking for Doom 2 to G_GotoNextLevel() 2021-11-15 22:06:05 +01:00
Fabian Greffrath
03304f7a50 use dprintf() for printing the autorun on/off message 2021-11-15 21:42:16 +01:00
Fabian Greffrath
b388e5ce85
add global autoload directories to search before local ones (#345)
* add global autoload directories to search before local ones

Fixes #331

* fix WOOFDATADIR path

* remove debug puts()

* use pointer progression instead of array indexing

* replace DOOMDATADIR with WOOFDATADIR

* remove obsolete check for autoload_paths being NULL

PrepareAutoloadPaths() is now only called once before any of the
functions calling GetAutoloadDir() is called.
2021-11-06 19:56:04 +01:00
Roman Fomin
43605c15ff
restore original WI_slamBackground (#348) 2021-11-06 11:12:22 +01:00
Roman Fomin
4c4e3c2e5f
umapinfo: fix enterpic showing on exit levels (#347) 2021-11-06 09:54:10 +01:00
Roman Fomin
a2cb26dbb6
umapinfo: fix enterpic (#346) 2021-11-06 09:53:25 +01:00
Roman Fomin
2cc8f19bff
fix undefined behavior in i_video.c (#344) 2021-11-04 12:32:53 +01:00
Roman Fomin
b99e33afe6
fix mouse/joy button pops up menu on title screen (#343) 2021-11-04 11:52:10 +01:00
Roman Fomin
19d3ab0ae8
add ENDOOM support (from Chocolate Doom) (#184)
* add libtextscreen

* add doomkeys.h

* fix format string warnings

* delete all files unnecessary for ENDOOM

* add ENDOOM support

* show ENDOOM screen in the same window as the game

* add PWADs only option, add comments

* change PWADs->PWAD
2021-11-04 08:54:49 +01:00
Fabian Greffrath
040ebdc133 get rid of the video_scale config variable
We already properly save window dimensions in the window_width
and window_height variables. Still allow to set a scale factor
from the command line, though.
2021-11-04 08:29:10 +01:00
Roman Fomin
e5a79d621c win midi: don't use zone memory 2021-11-04 14:01:53 +07:00
Roman Fomin
427a347f11 win midi: fix memory leak 2021-11-04 13:49:37 +07:00
Roman Fomin
a93ed31d6c
update i_winmusic.c to match Chocolate Doom version (#341)
* update i_winmusic.c to match Chocolate Doom version

* fix playing non-MIDI music
2021-11-03 09:05:06 +01:00
Roman Fomin
54d221df23
convert pusher source thing pointers into indices (#340)
* check for pusher source thing

* convert pusher source thing pointers into indices

* fix gcc build

* fix type cast

* try to simplify type cast

* update savegame version

* remove bump of savegame version

* add pusher->source check

* add pusher type check
2021-11-03 09:03:48 +01:00
Fabian Greffrath
4a4917c7df
port exclusive fullscreen over from Choco/Crispy (#342)
* port exclusive fullscreen over from Choco/Crispy

Fixes #334

* fix disabled menu item

* if fullscreen_width or fullscreen_height are set, default to fullscreen
2021-11-02 12:54:43 +01:00
Roman Fomin
c9455a7d77
fix musinfo lumpnum reset (#338) 2021-11-01 09:10:50 +01:00
Fabian Greffrath
c211d21723
save window position across fullscreen toggles (#337)
Fixes #336
2021-10-31 11:13:34 +01:00
Roman Fomin
af25a7e65c
use height of entering, not map name (#335) 2021-10-31 06:58:12 +01:00
Roman Fomin
c677b91c28
fix episode menu for chex.wad (#333)
* fix episode menu for chex.wad

* move partime to deh, fix secret exit

* remove redundant record
2021-10-30 19:19:23 +02:00
Roman Fomin
1b0e011591
add Chex Quest support (#325)
* add Chex Quest support

* more changes for Chex Quest support

* fix misleading indentation warning

* fix HUSTR_*

* fix indentation

* add more IWADs to standard_iwads[]

* don't autoload from doom-all
2021-10-28 12:37:10 +02:00
Fabian Greffrath
c5dc874e04 print a message when toggling "always run" 2021-10-28 12:34:12 +02:00
Fabian Greffrath
9e281e7643 reset column drawing function
Fixes #301

Short analysis: Usually, the colfunc() pointer is reset to
R_DrawColumn() in R_DrawVisSprite() when the player sprites are
rendered via R_DrawPSprite() in R_DrawPlayerSprites() as the last step
in R_DrawMasked().

However, if you bob your 1px wide weapon sprite out of view,
R_DrawPSprite() returns early and the weapon sprite's vissprite is
never rendered, thus the pointer is not reset. That's why the glitch
immediately disappeared when switching to a regular weapon sprite such
as the Chainsaw. This also explains why the glitch never became
apparent in widescreen mode.

Actually, removing the TRANMAP lump or forcing to regenerate it did
*not* fix the issue. It was still there but a lot less visible, since
translucent textures were drawn on translucent textures which were
drawn on the black void - the TRANMAP just helped to make the glitch
undeniable, together with the player sprite that actually triggered
it.

Apparently, the case that I attempted to fix earlier, i.e. that the
TRANMAP lump gets marked as purgeable after being used as a
translucency table for a mid-texture, is already been taken care of
in P_LoadSideDefs2().
2021-10-28 12:04:00 +02:00
Fabian Greffrath
0b7495738e update to SDL 2.0.16 2021-10-27 13:10:05 +02:00
Fabian Greffrath
2ede2ce185 make sure to never mark main_tranmap as purgeable
Fixes #301, thanks ribbiks
2021-10-25 11:49:02 +02:00
Fabian Greffrath
d99bdb6207 add a parameter to force rebuilding of the TRANMAP lump 2021-10-25 10:46:00 +02:00
Fabian Greffrath
324d6fd271
save the setup menu's itemon value in the S_END element's x coordinate (#329) 2021-10-25 09:16:55 +02:00
Roman Fomin
f8c4863dd4
bring comp_ledgeblock implementation inline with DSDA-Doom (#328) 2021-10-25 08:39:34 +02:00
Roman Fomin
ca72f841ab
ignore MBF21 options in OPTIONS lump (#327) 2021-10-25 08:39:20 +02:00
Roman Fomin
8e875e3a6f
reorganize the key bindings menu (#324) 2021-10-25 07:40:54 +02:00
Roman Fomin
8eae8cfc34 umapinfo: fix using_FMI reset 2021-10-24 13:56:49 +07:00
Roman Fomin
1c64d27025
add comp_reservedlineflag (MBF21 v1.4 update) (#321) 2021-10-22 13:48:12 +02:00
Roman Fomin
62cfae036a
introduce cosmetic menu groups, add ghost monsters setting (#320) 2021-10-22 13:48:02 +02:00
Roman Fomin
5fa0ac9e17
introduce UMAPDEF lumps for internal UMAPINFOs (#304)
* introduce DEFAULTS lumps for internal UMAPINFOs

* use default_mapinfo if UMAPINFO is missing

* rename DEFAULTS->UMAPDEF

* fix reset map entry to default

* use memset

* fix comment

* fix U_ParseMapInfo declaration
2021-10-21 08:35:56 +02:00
Roman Fomin
a40f8eea37
show time/STS above statusbar (#319)
* show time/STS above statusbar

* change STS colors

* add extrakills

* erase time/STS widgets

* fix clang build

* set ohud_distributed

* move string building in HU_Ticker, show subseconds in timer

* cleanup

* add HU_widget_build_monsec function, show totalleveltimes

* use indentifiers for colors

* add HU_widget_build_sttime function, display extrakills inline with DSDA-Doom
2021-10-20 09:27:30 +02:00
Roman Fomin
423ac8e20d
umapinfo: fix idclev (#318)
* umapinfo: fix idclev

* set EpiCustom if episode > 4

* move EpiCustom and G_LookupMapinfo to u_mapinfo.h

* fix clang build
2021-10-19 13:39:18 +02:00
Roman Fomin
fd8781bad6
config settings for mouse acceleration (#312)
* config settings for mouse acceleration

* fix type

* use percent
2021-10-19 10:25:52 +02:00
Roman Fomin
bbb9e01293
add forgotten codepointers to deh_bexptrs (#317) 2021-10-19 10:24:21 +02:00
Roman Fomin
efe0cb8ebd Merge branch 'master' of https://github.com/fabiangreffrath/woof 2021-10-19 14:53:36 +07:00
Roman Fomin
7ed32e611a umapinfo: fix error reporting if token == TK_NoToken 2021-10-19 14:53:15 +07:00
Roman Fomin
10f9a83f27
error when detecting a PNG patch (#313)
* error when detecting a PNG patch

* import code from Crispy Doom

* fix whitespace
2021-10-19 09:39:49 +02:00