* first step: static skies work (global sky, MBF, flatmapping, fire)
* stretch short skies
* some clean up
* MBF sky transfers are working
* set basemid earlier
* apply skydef skies to lines
* fix sky positioning
* fix foreground drawing, except for >1 fires
* support multiple fires
* cosmetics
* fix?
* clang-format-19 -i src/r_sky*
* introduce linked sky concept
* minor clean up
* another fix
* introduce skyindex_t type
* first attempt at fire scaling
* first stab at fire sky scrolling
* fix rendering glitch with negative scaley factors
* add some headroom for additional foreground skies
* dummy commit; there's no separate fire sky render path, just a texture replacement
* cleaner final diff
* renderring working, foreground working, fire-as-texture working
* clang-format-19 -i src/r_sky.*
* remove extraneous addition from testing
* simplified UpdateFireSky
* re-introduced fire sky ticrate
* clang warning: moved extraneous `#include`
* do not use `sky_t::linked_sky` on R_InitSkyMap
* skydef transfers are working woohoo
* no more `linked_sky`
* redundant zero-ing
* removed extraneous property; maybe come back later with fire customization
* fixed check for color skies; ugh, there should be a better way to do this
* consistent type usage
* added temporary sky color property
* now reading transfered sky offsets
* testing on `example/sky.wad`, one step forward two steps back
* define proper baseline mid value for sky transfers
* fix sky transfer horizontal scrolling
* add fix for transfered sky vertical scrolling
* fix sky transfer mid line
* YET AGAIN, MAJOR FIXES
using rate of change of base and old offsets per-tic is a bad idea, does not work on run-time scrolling
* FINALLY sky transfers + skydefs are working together
* moved SkyDefs parsing much earlier, matching R&R
* apply flatmapping before sky transfers; foreground array growth
* sky mid handling how matches DSDA/PrBoom+ behavior
* de-globalized one variable, globalized another
* moved skytran back into r_plane
* updated copyright notice
* clarifying comment
* pre-computed sky color
* clean up comments
* fixed horizontal sky transfer interpolation
* whoops
* comments 2 electric boogaloo
* simplified tall skies implementation code
* transfers now stretch, woohoo
* linking is expensive
* only one conditional
* cleaner conditional; fix meamory leak
* needless extern
* de-globalized skydefs
* clean up and got vertically offset transfers stretching
* do not colorfill on skies shorter than 128
* allow stretching fire skies
* spelling
* add fabian's changes
* fix stretching short skies logic
---------
Co-authored-by: Fabian Greffrath <fabian@greffrath.com>
* Properly check for tempdir on Unix
* Properly check for tempdir on Unix
* Use M_getenv()
* Use M_getenv()
* Revert "Use M_getenv()"
This reverts commit eedd01409749c8e8edc1b0ca79081683dc67d911.
* Revert "Use M_getenv()"
This reverts commit 31437d6097047ba32092848ce980af57c4eb1791.
* Use spaces instead of tabs
* Consistancy and correct Unix environment variable
* Consistancy
* Add rekkr-all autoload directory.
* Make the requested changes to rekkr-all autoloading.
* Remove .wad extensions in calls to strncasecmp.
* Add space after commas for calls to strncasecmp.
* Always error out using `SC_Error`.
* Introduce `TK_RawString`, remove `SC_GetNextTokenLumpName`.
* Use `TK_RawString` for sound logical name and lump names.
* Don't add blank paths to wad list
* Simplify GOG paths
Removes redundant/invalid paths. Adds paths to original IWADs which are now included with DOOM + DOOM II.
* Simplify Steam paths
Removes invalid paths. Paths to wads are generated based on registry entries, like GOG.
* Add `const`
* Separate CE and GOG
* Update Linux Steam paths
Some of these games may be installed due to the popularity of modern Proton support. So it doesn't hurt to include their paths.
* Remove extra `steampath`
* Rename `disable_endoom` to `fast_exit`
* Rename `D_AllowQuitSound` to `D_QuitSoundEnabled`
* Add separate `D_EndDoomEnabled` function
* Move all ENDOOM checks to `D_AllowEndDoom`
* Free/destroy SDL video resources on shutdown
* Simplify
* add a "prev map" key binding
Fixes#2007
* simplify
* add safety measures
* simplify again
* fix
* simplify logic
* add to key binding menu instead of player specific chat keys
* start with gamemap 99 when crossing gameepisodes
* start new episode with gamemap = cur_map to allow a full gamemap circle
* fix UMAPINFO
* reset gamemap outside the while() condition
* do not let linear and UMAPINFO maps cross
* prevent G_GotoNextLevel() from cycling across levels that end the game
* check either UMAPINFO or linear progression in G_GotoNextLevel()
* don't report the map we couldn't find, but the map that we couldn't find a previous map for