mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-12-27 04:41:23 +00:00
Merge remote-tracking branch 'remotes/public/next' into gamepad-tweaks
# Conflicts: # CMakeLists.txt # appveyor.yml # src/command.c # src/command.h # src/d_clisrv.c # src/d_netcmd.c # src/dehacked.c # src/doomdef.h # src/hu_stuff.c # src/m_misc.c
This commit is contained in:
commit
ad01dcc5ac
115 changed files with 3605 additions and 2240 deletions
|
@ -227,7 +227,6 @@ matrix:
|
||||||
- compiler: clang-3.9
|
- compiler: clang-3.9
|
||||||
- compiler: clang-4.0
|
- compiler: clang-4.0
|
||||||
- compiler: clang-5.0
|
- compiler: clang-5.0
|
||||||
- compiler: gcc-8
|
|
||||||
|
|
||||||
cache:
|
cache:
|
||||||
apt: true
|
apt: true
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
cmake_minimum_required(VERSION 3.0)
|
cmake_minimum_required(VERSION 3.0)
|
||||||
project(SRB2
|
project(SRB2
|
||||||
VERSION 2.1.20
|
VERSION 2.1.23
|
||||||
LANGUAGES C)
|
LANGUAGES C)
|
||||||
|
|
||||||
if(${PROJECT_SOURCE_DIR} MATCHES ${PROJECT_BINARY_DIR})
|
if(${PROJECT_SOURCE_DIR} MATCHES ${PROJECT_BINARY_DIR})
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<GenerateDebugInformation>Debug</GenerateDebugInformation>
|
<GenerateDebugInformation>Debug</GenerateDebugInformation>
|
||||||
|
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup />
|
<ItemGroup />
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
<GenerateDebugInformation>DebugFastLink</GenerateDebugInformation>
|
<GenerateDebugInformation>DebugFastLink</GenerateDebugInformation>
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup />
|
<ItemGroup />
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>advapi32.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
|
79
appveyor.yml
79
appveyor.yml
|
@ -1,11 +1,15 @@
|
||||||
version: 2.1.20.{branch}-{build}
|
version: 2.1.23.{branch}-{build}
|
||||||
os: MinGW
|
os: MinGW
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
CC: ccache
|
CC: ccache
|
||||||
CCACHE_CC: i686-w64-mingw32-gcc
|
CCACHE_CC: i686-w64-mingw32-gcc
|
||||||
|
CCACHE_CC_64: x86_64-w64-mingw32-gcc
|
||||||
WINDRES: windres
|
WINDRES: windres
|
||||||
|
# c:\mingw-w64 i686 has gcc 6.3.0, so use c:\msys64 7.3.0 instead
|
||||||
MINGW_SDK: c:\msys64\mingw32
|
MINGW_SDK: c:\msys64\mingw32
|
||||||
|
# c:\msys64 x86_64 has gcc 8.2.0, so use c:\mingw-w64 7.3.0 instead
|
||||||
|
MINGW_SDK_64: C:\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev0\mingw64
|
||||||
CFLAGS: -Wall -W -Werror -Wno-error=implicit-fallthrough -Wimplicit-fallthrough=3 -Wno-tautological-compare -Wno-error=suggest-attribute=noreturn
|
CFLAGS: -Wall -W -Werror -Wno-error=implicit-fallthrough -Wimplicit-fallthrough=3 -Wno-tautological-compare -Wno-error=suggest-attribute=noreturn
|
||||||
NASM_ZIP: nasm-2.12.01
|
NASM_ZIP: nasm-2.12.01
|
||||||
NASM_URL: http://www.nasm.us/pub/nasm/releasebuilds/2.12.01/win64/nasm-2.12.01-win64.zip
|
NASM_URL: http://www.nasm.us/pub/nasm/releasebuilds/2.12.01/win64/nasm-2.12.01-win64.zip
|
||||||
|
@ -15,65 +19,114 @@ environment:
|
||||||
CCACHE_URL: http://alam.srb2.org/ccache.exe
|
CCACHE_URL: http://alam.srb2.org/ccache.exe
|
||||||
CCACHE_COMPRESS: true
|
CCACHE_COMPRESS: true
|
||||||
CCACHE_DIR: C:\Users\appveyor\.ccache
|
CCACHE_DIR: C:\Users\appveyor\.ccache
|
||||||
|
# Disable UPX by default. The user can override this in their Appveyor project settings
|
||||||
|
NOUPX: 1
|
||||||
|
##############################
|
||||||
|
# DEPLOYER VARIABLES
|
||||||
|
# DPL_ENABLED=1 builds installers for branch names starting with `deployer`.
|
||||||
|
# DPL_TAG_ENABLED=1 will also build installers for release tags. DPL_ENABLED=1 must also be set.
|
||||||
|
# Set these in the Appveyor project settings
|
||||||
|
##############################
|
||||||
|
DPL_ENABLED: 0
|
||||||
|
DPL_TAG_ENABLED: 0
|
||||||
|
DPL_INSTALLER_NAME: SRB2-v2123
|
||||||
|
# Asset handling is barebones vs. Travis Deployer. We operate on 7z only.
|
||||||
|
# Include the README files and the OpenGL batch in the main and patch archives.
|
||||||
|
# The x86/x64 archives contain the DLL binaries.
|
||||||
|
ASSET_ARCHIVE_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-assets.7z
|
||||||
|
ASSET_ARCHIVE_PATCH_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-patch-assets.7z
|
||||||
|
ASSET_ARCHIVE_X86_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-x86-assets.7z
|
||||||
|
ASSET_ARCHIVE_X64_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-x64-assets.7z
|
||||||
|
ASSET_ARCHIVE_OPTIONAL_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-optional-assets.7z
|
||||||
|
# This is overridden to 1 for release tag builds
|
||||||
|
ASSET_FILES_OPTIONAL_GET: 0
|
||||||
|
# For patches, also include the X86/X64 DLLs.
|
||||||
|
PACKAGE_PATCH_DLL_GET: 0
|
||||||
|
# Delete all asset downloads so they can be redownloaded
|
||||||
|
ASSET_CLEAN: 0
|
||||||
|
|
||||||
cache:
|
cache:
|
||||||
- nasm-2.12.01.zip
|
- nasm-2.12.01.zip
|
||||||
- upx391w.zip
|
- upx391w.zip
|
||||||
- ccache.exe
|
- ccache.exe
|
||||||
- C:\Users\appveyor\.ccache
|
- C:\Users\appveyor\.ccache
|
||||||
|
- C:\Users\appveyor\srb2_cache
|
||||||
|
|
||||||
install:
|
install:
|
||||||
|
- if [%CONFIGURATION%] == [SDL64] ( set "X86_64=1" )
|
||||||
|
- if [%CONFIGURATION%] == [SDL64] ( set "CONFIGURATION=SDL" )
|
||||||
|
- if [%CONFIGURATION%] == [DD64] ( set "X86_64=1" )
|
||||||
|
- if [%CONFIGURATION%] == [DD64] ( set "CONFIGURATION=DD" )
|
||||||
|
- if [%X86_64%] == [1] ( set "MINGW_SDK=%MINGW_SDK_64%" )
|
||||||
|
- if [%X86_64%] == [1] ( set "CCACHE_CC=%CCACHE_CC_64%" )
|
||||||
|
|
||||||
- if not exist "%NASM_ZIP%.zip" appveyor DownloadFile "%NASM_URL%" -FileName "%NASM_ZIP%.zip"
|
- if not exist "%NASM_ZIP%.zip" appveyor DownloadFile "%NASM_URL%" -FileName "%NASM_ZIP%.zip"
|
||||||
- 7z x -y "%NASM_ZIP%.zip" -o%TMP% >null
|
- 7z x -y "%NASM_ZIP%.zip" -o%TMP% >null
|
||||||
- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs %TMP%\%NASM_ZIP% %MINGW_SDK%\bin nasm.exe || exit 0
|
- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs "%TMP%\%NASM_ZIP%" "%MINGW_SDK%\bin" nasm.exe || exit 0
|
||||||
|
|
||||||
- if not exist "%UPX_ZIP%.zip" appveyor DownloadFile "%UPX_URL%" -FileName "%UPX_ZIP%.zip"
|
- if not exist "%UPX_ZIP%.zip" appveyor DownloadFile "%UPX_URL%" -FileName "%UPX_ZIP%.zip"
|
||||||
- 7z x -y "%UPX_ZIP%.zip" -o%TMP% >null
|
- 7z x -y "%UPX_ZIP%.zip" -o%TMP% >null
|
||||||
- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs %TMP%\%UPX_ZIP% %MINGW_SDK%\bin upx.exe || exit 0
|
- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs "%TMP%\%UPX_ZIP%" "%MINGW_SDK%\bin" upx.exe || exit 0
|
||||||
|
|
||||||
- if not exist "%CCACHE_EXE%" appveyor DownloadFile "%CCACHE_URL%" -FileName "%CCACHE_EXE%"
|
- if not exist "%CCACHE_EXE%" appveyor DownloadFile "%CCACHE_URL%" -FileName "%CCACHE_EXE%"
|
||||||
- ccache -M 99M
|
- ccache -M 99M
|
||||||
- xcopy /Y /V /I ccache.exe %MINGW_SDK%\bin
|
- xcopy /Y /V /I ccache.exe "%MINGW_SDK%\bin"
|
||||||
|
|
||||||
configuration:
|
configuration:
|
||||||
- SDL
|
- SDL
|
||||||
|
- SDL64
|
||||||
- DD
|
- DD
|
||||||
|
- DD64
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
allow_failures:
|
allow_failures:
|
||||||
- configuration: DD
|
- configuration: DD
|
||||||
|
- configuration: DD64
|
||||||
|
|
||||||
before_build:
|
before_build:
|
||||||
- set Path=%MINGW_SDK%\bin;%Path%
|
- set "Path=%MINGW_SDK%\bin;%Path%"
|
||||||
- i686-w64-mingw32-gcc --version
|
- if [%X86_64%] == [1] ( x86_64-w64-mingw32-gcc --version ) else ( i686-w64-mingw32-gcc --version )
|
||||||
- mingw32-make --version
|
- mingw32-make --version
|
||||||
- nasm -v
|
- if not [%X86_64%] == [1] ( nasm -v )
|
||||||
- upx -V
|
- if not [%NOUPX%] == [1] ( upx -V )
|
||||||
- ccache -V
|
- ccache -V
|
||||||
- ccache -s
|
- ccache -s
|
||||||
- set SRB2_MFLAGS=-C src MINGW=1 WARNINGMODE=1 GCC72=1 CCACHE=1 NOOBJDUMP=1
|
- if [%NOUPX%] == [1] ( set "NOUPX=NOUPX=1" ) else ( set "NOUPX=" )
|
||||||
|
- set "SRB2_MFLAGS=-C src WARNINGMODE=1 CCACHE=1 GCC72=1 NOOBJDUMP=1 %NOUPX%"
|
||||||
|
- if [%X86_64%] == [1] ( set "MINGW_FLAGS=MINGW64=1 X86_64=1" ) else ( set "MINGW_FLAGS=MINGW=1" )
|
||||||
|
- set "SRB2_MFLAGS=%SRB2_MFLAGS% %MINGW_FLAGS% %CONFIGURATION%=1"
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmd: mingw32-make.exe %SRB2_MFLAGS% %CONFIGURATION%=1 clean
|
- cmd: mingw32-make.exe %SRB2_MFLAGS% clean
|
||||||
- cmd: mingw32-make.exe %SRB2_MFLAGS% %CONFIGURATION%=1 ERRORMODE=1 -k
|
- cmd: mingw32-make.exe %SRB2_MFLAGS% ERRORMODE=1 -k
|
||||||
|
|
||||||
after_build:
|
after_build:
|
||||||
|
- if [%X86_64%] == [1] (
|
||||||
|
set "BUILD_PATH=bin\Mingw64\Release"
|
||||||
|
) else (
|
||||||
|
set "BUILD_PATH=bin\Mingw\Release"
|
||||||
|
)
|
||||||
|
- if [%X86_64%] == [1] ( set "CONFIGURATION=%CONFIGURATION%64" )
|
||||||
- ccache -s
|
- ccache -s
|
||||||
- cmd: git rev-parse --short %APPVEYOR_REPO_COMMIT%>%TMP%/gitshort.txt
|
- cmd: git rev-parse --short %APPVEYOR_REPO_COMMIT%>%TMP%/gitshort.txt
|
||||||
- cmd: set /P GITSHORT=<%TMP%/gitshort.txt
|
- cmd: set /P GITSHORT=<%TMP%/gitshort.txt
|
||||||
- set BUILD_ARCHIVE=%APPVEYOR_REPO_BRANCH%-%GITSHORT%-%CONFIGURATION%.7z
|
- set BUILD_ARCHIVE=%APPVEYOR_REPO_BRANCH%-%GITSHORT%-%CONFIGURATION%.7z
|
||||||
- set BUILDSARCHIVE=%APPVEYOR_REPO_BRANCH%-%CONFIGURATION%.7z
|
- set BUILDSARCHIVE=%APPVEYOR_REPO_BRANCH%-%CONFIGURATION%.7z
|
||||||
- cmd: 7z a %BUILD_ARCHIVE% bin\Mingw\Release -xr!.gitignore
|
- cmd: 7z a %BUILD_ARCHIVE% %BUILD_PATH% -xr!.gitignore
|
||||||
- appveyor PushArtifact %BUILD_ARCHIVE%
|
- appveyor PushArtifact %BUILD_ARCHIVE%
|
||||||
- cmd: copy %BUILD_ARCHIVE% %BUILDSARCHIVE%
|
- cmd: copy %BUILD_ARCHIVE% %BUILDSARCHIVE%
|
||||||
- appveyor PushArtifact %BUILDSARCHIVE%
|
- appveyor PushArtifact %BUILDSARCHIVE%
|
||||||
|
##############################
|
||||||
|
# DEPLOYER SCRIPT
|
||||||
|
##############################
|
||||||
|
- if [%DPL_ENABLED%] == [1] ( call "deployer\appveyor\deployer.bat" )
|
||||||
|
|
||||||
test: off
|
test: off
|
||||||
|
|
||||||
#deploy:
|
#deploy:
|
||||||
# - provider: FTP
|
# - provider: FTP
|
||||||
# protocol: ftps
|
# protocol: ftps
|
||||||
# host:
|
# host:
|
||||||
# secure: NsLJEPIBvmwCOj8Tg8RoRQ==
|
# secure: NsLJEPIBvmwCOj8Tg8RoRQ==
|
||||||
# username:
|
# username:
|
||||||
# secure: ejxi5mvk7oLYu7QtbYojajEPigMy0mokaKhuEVuDZcA=
|
# secure: ejxi5mvk7oLYu7QtbYojajEPigMy0mokaKhuEVuDZcA=
|
||||||
|
|
4
debian/changelog
vendored
4
debian/changelog
vendored
|
@ -1,6 +1,6 @@
|
||||||
srb2 (2.1.21~9) trusty; urgency=high
|
srb2 (2.1.23~9) trusty; urgency=high
|
||||||
|
|
||||||
* SRB2 v2.1.21 release
|
* SRB2 v2.1.23 release
|
||||||
|
|
||||||
-- Marco Zafra <marco.a.zafra@gmail.com> Mon, 27 Nov 2018 16:45:00 -0500
|
-- Marco Zafra <marco.a.zafra@gmail.com> Mon, 27 Nov 2018 16:45:00 -0500
|
||||||
|
|
||||||
|
|
4
debian/control
vendored
4
debian/control
vendored
|
@ -18,7 +18,7 @@ Homepage: http://www.srb2.org
|
||||||
|
|
||||||
Package: srb2
|
Package: srb2
|
||||||
Architecture: any
|
Architecture: any
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}, srb2-data (>= 2.1.15), srb2-data (<= 2.1.21)
|
Depends: ${shlibs:Depends}, ${misc:Depends}, srb2-data (>= 2.1.15), srb2-data (<= 2.1.23)
|
||||||
Description: A cross-platform 3D Sonic fangame
|
Description: A cross-platform 3D Sonic fangame
|
||||||
Sonic Robo Blast 2 is a 3D open-source Sonic the Hedgehog
|
Sonic Robo Blast 2 is a 3D open-source Sonic the Hedgehog
|
||||||
fangame built using a modified version of the Doom Legacy
|
fangame built using a modified version of the Doom Legacy
|
||||||
|
@ -31,7 +31,7 @@ Description: A cross-platform 3D Sonic fangame
|
||||||
Package: srb2-dbg
|
Package: srb2-dbg
|
||||||
Architecture: any
|
Architecture: any
|
||||||
# FIXME: should be Depends: ${shlibs:Depends}, ${misc:Depends}, srb2-data (= 2.1.14), srb2 but dh_shlibdeps is being an asshat
|
# FIXME: should be Depends: ${shlibs:Depends}, ${misc:Depends}, srb2-data (= 2.1.14), srb2 but dh_shlibdeps is being an asshat
|
||||||
Depends: libc6, ${misc:Depends}, srb2-data (>= 2.1.15), srb2-data (<= 2.1.21), srb2
|
Depends: libc6, ${misc:Depends}, srb2-data (>= 2.1.15), srb2-data (<= 2.1.23), srb2
|
||||||
Description: A cross-platform 3D Sonic fangame
|
Description: A cross-platform 3D Sonic fangame
|
||||||
Sonic Robo Blast 2 is a 3D open-source Sonic the Hedgehog
|
Sonic Robo Blast 2 is a 3D open-source Sonic the Hedgehog
|
||||||
fangame built using a modified version of the Doom Legacy
|
fangame built using a modified version of the Doom Legacy
|
||||||
|
|
3
debian/rules
vendored
3
debian/rules
vendored
|
@ -59,6 +59,7 @@ DBGNAME = debug/$(EXENAME)
|
||||||
|
|
||||||
PKGDIR = usr/games/SRB2
|
PKGDIR = usr/games/SRB2
|
||||||
DBGDIR = usr/lib/debug/$(PKGDIR)
|
DBGDIR = usr/lib/debug/$(PKGDIR)
|
||||||
|
LINKDIR = usr/games
|
||||||
PIXMAPS_DIR = usr/share/pixmaps
|
PIXMAPS_DIR = usr/share/pixmaps
|
||||||
DESKTOP_DIR = usr/share/applications
|
DESKTOP_DIR = usr/share/applications
|
||||||
PREFIX = $(shell test "$(CROSS_COMPILE_BUILD)" != "$(CROSS_COMPILE_HOST)" && echo "PREFIX=$(CROSS_COMPILE_HOST)")
|
PREFIX = $(shell test "$(CROSS_COMPILE_BUILD)" != "$(CROSS_COMPILE_HOST)" && echo "PREFIX=$(CROSS_COMPILE_HOST)")
|
||||||
|
@ -133,7 +134,7 @@ binary-arch:
|
||||||
# dh_installcron
|
# dh_installcron
|
||||||
# dh_installinfo
|
# dh_installinfo
|
||||||
# dh_installman
|
# dh_installman
|
||||||
# dh_link
|
dh_link $(PKGDIR)/$(EXENAME) $(LINKDIR)/$(EXENAME)
|
||||||
dh_compress
|
dh_compress
|
||||||
dh_fixperms
|
dh_fixperms
|
||||||
# dh_perl
|
# dh_perl
|
||||||
|
|
195
deployer/appveyor/deployer.bat
Normal file
195
deployer/appveyor/deployer.bat
Normal file
|
@ -0,0 +1,195 @@
|
||||||
|
@setlocal enableextensions enabledelayedexpansion
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
: Appveyor Deployer
|
||||||
|
: See appveyor.yml for default variables
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
: Evaluate whether we should be deploying
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
if not [%DPL_ENABLED%] == [1] (
|
||||||
|
echo Deployer is not enabled...
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
|
||||||
|
: Don't do DD installs because fmodex DLL handling is not implemented.
|
||||||
|
if [%CONFIGURATION%] == [DD] (
|
||||||
|
echo Deployer does not support DD builds...
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
|
||||||
|
if [%CONFIGURATION%] == [DD64] (
|
||||||
|
echo Deployer does not support DD builds...
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
|
||||||
|
: Substring match from https://stackoverflow.com/questions/7005951/batch-file-find-if-substring-is-in-string-not-in-a-file
|
||||||
|
: The below line says "if deployer is NOT in string"
|
||||||
|
: Note that APPVEYOR_REPO_BRANCH for pull request builds is the BASE branch that PR is merging INTO
|
||||||
|
if x%APPVEYOR_REPO_BRANCH:deployer=%==x%APPVEYOR_REPO_BRANCH% (
|
||||||
|
if not [%APPVEYOR_REPO_TAG%] == [true] (
|
||||||
|
echo Deployer is enabled but we are not in a release tag or a 'deployer' branch...
|
||||||
|
exit /b
|
||||||
|
) else (
|
||||||
|
if not [%DPL_TAG_ENABLED%] == [1] (
|
||||||
|
echo Deployer is not enabled for release tags...
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
: Release tags always get optional assets (music.dta)
|
||||||
|
if [%APPVEYOR_REPO_TAG%] == [true] (
|
||||||
|
set "ASSET_FILES_OPTIONAL_GET=1"
|
||||||
|
)
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
: Get asset archives
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
if exist "C:\Users\appveyor\srb2_cache\archives\" (
|
||||||
|
if [%ASSET_CLEAN%] == [1] (
|
||||||
|
echo Cleaning asset archives...
|
||||||
|
rmdir /s /q "C:\Users\appveyor\srb2_cache\archives"
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
if not exist "C:\Users\appveyor\srb2_cache\archives\" mkdir "C:\Users\appveyor\srb2_cache\archives"
|
||||||
|
|
||||||
|
goto EXTRACT_ARCHIVES
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
: ARCHIVE_NAME_PARTS
|
||||||
|
: Call this like a function. %archivepath% is the path to extract parts from.
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
for %%a in (%archivepath%) do (
|
||||||
|
set "file=%%~fa"
|
||||||
|
set "filepath=%%~dpa"
|
||||||
|
set "filename=%%~nxa"
|
||||||
|
)
|
||||||
|
|
||||||
|
set "localarchivepath=C:\Users\appveyor\srb2_cache\archives\%filename%"
|
||||||
|
|
||||||
|
goto EOF
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
: EXTRACT_ARCHIVES
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
set "archivepath=%ASSET_ARCHIVE_PATH%"
|
||||||
|
call :ARCHIVE_NAME_PARTS
|
||||||
|
set "ASSET_ARCHIVE_PATH_LOCAL=%localarchivepath%"
|
||||||
|
if not exist "%localarchivepath%" appveyor DownloadFile "%ASSET_ARCHIVE_PATH%" -FileName "%localarchivepath%"
|
||||||
|
|
||||||
|
set "archivepath=%ASSET_ARCHIVE_PATCH_PATH%"
|
||||||
|
call :ARCHIVE_NAME_PARTS
|
||||||
|
set "ASSET_ARCHIVE_PATCH_PATH_LOCAL=%localarchivepath%"
|
||||||
|
if not exist "%localarchivepath%" appveyor DownloadFile "%ASSET_ARCHIVE_PATCH_PATH%" -FileName "%localarchivepath%"
|
||||||
|
|
||||||
|
if not [%X86_64%] == [1] (
|
||||||
|
set "archivepath=%ASSET_ARCHIVE_X86_PATH%"
|
||||||
|
call :ARCHIVE_NAME_PARTS
|
||||||
|
set "ASSET_ARCHIVE_X86_PATH_LOCAL=!localarchivepath!"
|
||||||
|
if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_ARCHIVE_X86_PATH%" -FileName "!localarchivepath!"
|
||||||
|
)
|
||||||
|
|
||||||
|
if [%X86_64%] == [1] (
|
||||||
|
set "archivepath=%ASSET_ARCHIVE_X64_PATH%"
|
||||||
|
call :ARCHIVE_NAME_PARTS
|
||||||
|
set "ASSET_ARCHIVE_X64_PATH_LOCAL=!localarchivepath!"
|
||||||
|
if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_ARCHIVE_X64_PATH%" -FileName "!localarchivepath!"
|
||||||
|
)
|
||||||
|
|
||||||
|
if [%ASSET_FILES_OPTIONAL_GET%] == [1] (
|
||||||
|
set "archivepath=%ASSET_ARCHIVE_OPTIONAL_PATH%"
|
||||||
|
call :ARCHIVE_NAME_PARTS
|
||||||
|
set "ASSET_ARCHIVE_OPTIONAL_PATH_LOCAL=!localarchivepath!"
|
||||||
|
if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_ARCHIVE_OPTIONAL_PATH%" -FileName "!localarchivepath!"
|
||||||
|
)
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
: Build the installers
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
mkdir "assets\installer"
|
||||||
|
mkdir "assets\patch"
|
||||||
|
|
||||||
|
7z x -y "%ASSET_ARCHIVE_PATH_LOCAL%" -o"assets\installer" >null
|
||||||
|
7z x -y "%ASSET_ARCHIVE_PATCH_PATH_LOCAL%" -o"assets\patch" >null
|
||||||
|
|
||||||
|
: Copy optional files to full installer (music.dta)
|
||||||
|
if [%ASSET_FILES_OPTIONAL_GET%] == [1] (
|
||||||
|
7z x -y "%ASSET_ARCHIVE_OPTIONAL_PATH_LOCAL%" -o"assets\installer" >null
|
||||||
|
)
|
||||||
|
|
||||||
|
: Copy EXE -- BUILD_PATH is from appveyor.yml
|
||||||
|
robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\installer" /XF "*.debug" ".gitignore"
|
||||||
|
robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\patch" /XF "*.debug" ".gitignore"
|
||||||
|
|
||||||
|
: Are we building DD? (we were supposed to exit earlier!)
|
||||||
|
if [%CONFIGURATION%] == [DD] ( set "DPL_INSTALLER_NAME=%DPL_INSTALLER_NAME%-DD" )
|
||||||
|
if [%CONFIGURATION%] == [DD64] ( set "DPL_INSTALLER_NAME=%DPL_INSTALLER_NAME%-DD" )
|
||||||
|
|
||||||
|
: If we are not a release tag, suffix the filename
|
||||||
|
if not [%APPVEYOR_REPO_TAG%] == [true] (
|
||||||
|
set "INSTALLER_SUFFIX=-%APPVEYOR_REPO_BRANCH%-%GITSHORT%-%CONFIGURATION%"
|
||||||
|
) else (
|
||||||
|
set "INSTALLER_SUFFIX="
|
||||||
|
)
|
||||||
|
|
||||||
|
if not [%X86_64%] == [1] ( goto X86_INSTALL )
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
: X64_INSTALL
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
: Extract DLL binaries
|
||||||
|
7z x -y "%ASSET_ARCHIVE_X64_PATH_LOCAL%" -o"assets\installer" >null
|
||||||
|
if [%PACKAGE_PATCH_DLL_GET%] == [1] (
|
||||||
|
7z x -y "!ASSET_ARCHIVE_X64_PATH_LOCAL!" -o"assets\patch" >null
|
||||||
|
)
|
||||||
|
|
||||||
|
: Build the installer
|
||||||
|
7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe" .\assets\installer\*
|
||||||
|
|
||||||
|
: Build the patch
|
||||||
|
7z a "%DPL_INSTALLER_NAME%-x64-Patch%INSTALLER_SUFFIX%.zip" .\assets\patch\*
|
||||||
|
|
||||||
|
: Upload artifacts
|
||||||
|
appveyor PushArtifact "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe"
|
||||||
|
appveyor PushArtifact "%DPL_INSTALLER_NAME%-x64-Patch%INSTALLER_SUFFIX%.zip"
|
||||||
|
|
||||||
|
: We only do x86 OR x64, one at a time, so exit now.
|
||||||
|
goto EOF
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
: X86_INSTALL
|
||||||
|
::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
: Extract DLL binaries
|
||||||
|
7z x -y "%ASSET_ARCHIVE_X86_PATH_LOCAL%" -o"assets\installer" >null
|
||||||
|
if [%PACKAGE_PATCH_DLL_GET%] == [1] (
|
||||||
|
7z x -y "!ASSET_ARCHIVE_X86_PATH_LOCAL!" -o"assets\patch" >null
|
||||||
|
)
|
||||||
|
|
||||||
|
: Build the installer
|
||||||
|
7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe" .\assets\installer\*
|
||||||
|
|
||||||
|
: Build the patch
|
||||||
|
7z a "%DPL_INSTALLER_NAME%-Patch%INSTALLER_SUFFIX%.zip" .\assets\patch\*
|
||||||
|
|
||||||
|
: Upload artifacts
|
||||||
|
appveyor PushArtifact "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe"
|
||||||
|
appveyor PushArtifact "%DPL_INSTALLER_NAME%-Patch%INSTALLER_SUFFIX%.zip"
|
||||||
|
|
||||||
|
: We only do x86 OR x64, one at a time, so exit now
|
||||||
|
goto EOF
|
||||||
|
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
: EOF
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
|
||||||
|
endlocal
|
BIN
libs/SDL2/lib/ARM/SDL2.lib
Normal file
BIN
libs/SDL2/lib/ARM/SDL2.lib
Normal file
Binary file not shown.
BIN
libs/SDL2/lib/ARM64/SDL2.dll
Normal file
BIN
libs/SDL2/lib/ARM64/SDL2.dll
Normal file
Binary file not shown.
BIN
libs/SDL2/lib/ARM64/SDL2.lib
Normal file
BIN
libs/SDL2/lib/ARM64/SDL2.lib
Normal file
Binary file not shown.
BIN
libs/SDL2_mixer/lib/ARM/SDL2_mixer.lib
Normal file
BIN
libs/SDL2_mixer/lib/ARM/SDL2_mixer.lib
Normal file
Binary file not shown.
BIN
libs/SDL2_mixer/lib/ARM64/SDL2_mixer.dll
Normal file
BIN
libs/SDL2_mixer/lib/ARM64/SDL2_mixer.dll
Normal file
Binary file not shown.
BIN
libs/SDL2_mixer/lib/ARM64/SDL2_mixer.lib
Normal file
BIN
libs/SDL2_mixer/lib/ARM64/SDL2_mixer.lib
Normal file
Binary file not shown.
|
@ -1,3 +1,5 @@
|
||||||
/Win32
|
/Win32
|
||||||
/x64
|
/x64
|
||||||
/libpng.vcproj.*.*.user
|
/libpng.vcproj.*.*.user
|
||||||
|
/ARM
|
||||||
|
/ARM64
|
||||||
|
|
|
@ -1,6 +1,14 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -9,6 +17,14 @@
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -21,7 +37,7 @@
|
||||||
<PropertyGroup Label="Globals">
|
<PropertyGroup Label="Globals">
|
||||||
<ProjectGuid>{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}</ProjectGuid>
|
<ProjectGuid>{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}</ProjectGuid>
|
||||||
<RootNamespace>libpng</RootNamespace>
|
<RootNamespace>libpng</RootNamespace>
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
@ -29,21 +45,45 @@
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings">
|
<ImportGroup Label="ExtensionSettings">
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
@ -51,29 +91,53 @@
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
@ -107,6 +171,38 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..;..\..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;PNG_USE_PNGVCRD;PNG_LIBPNG_SPECIALBUILD;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
<AdditionalIncludeDirectories>..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\libpng.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<TargetEnvironment>X64</TargetEnvironment>
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
@ -143,6 +239,40 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||||
|
<Midl />
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..;..\..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;PNG_USE_PNGVCRD;PNG_LIBPNG_SPECIALBUILD;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<DisableSpecificWarnings>4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||||
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
<AdditionalIncludeDirectories>..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\libpng.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM64</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<Optimization>Disabled</Optimization>
|
<Optimization>Disabled</Optimization>
|
||||||
|
@ -174,6 +304,36 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..;..\..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;DEBUG;PNG_DEBUG=1;PNG_USE_PNGVCRD;PNG_LIBPNG_SPECIALBUILD;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<MultiProcessorCompilation>false</MultiProcessorCompilation>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\libpng.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<TargetEnvironment>X64</TargetEnvironment>
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
@ -209,164 +369,320 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||||
|
<Midl />
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..;..\..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;DEBUG;PNG_DEBUG=1;PNG_USE_PNGVCRD;PNG_LIBPNG_SPECIALBUILD;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<DisableSpecificWarnings>4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||||||
|
<MultiProcessorCompilation>false</MultiProcessorCompilation>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\libpng.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM64</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\libpng.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\png.c">
|
<ClCompile Include="..\..\png.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngerror.c">
|
<ClCompile Include="..\..\pngerror.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngget.c">
|
<ClCompile Include="..\..\pngget.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngmem.c">
|
<ClCompile Include="..\..\pngmem.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngpread.c">
|
<ClCompile Include="..\..\pngpread.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngread.c">
|
<ClCompile Include="..\..\pngread.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngrio.c">
|
<ClCompile Include="..\..\pngrio.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngrtran.c">
|
<ClCompile Include="..\..\pngrtran.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngrutil.c">
|
<ClCompile Include="..\..\pngrutil.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngset.c">
|
<ClCompile Include="..\..\pngset.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngtrans.c">
|
<ClCompile Include="..\..\pngtrans.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngwio.c">
|
<ClCompile Include="..\..\pngwio.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngwrite.c">
|
<ClCompile Include="..\..\pngwrite.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngwtran.c">
|
<ClCompile Include="..\..\pngwtran.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\pngwutil.c">
|
<ClCompile Include="..\..\pngwutil.c">
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuildStep Include="..\..\scripts\pngw32.def">
|
<CustomBuildStep Include="..\..\scripts\pngw32.def">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
</CustomBuildStep>
|
</CustomBuildStep>
|
||||||
<None Include="README.txt" />
|
<None Include="README.txt" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
@ -377,17 +693,29 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="..\..\scripts\pngw32.rc">
|
<ResourceCompile Include="..\..\scripts\pngw32.rc">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">\Oogaland\Projects\orospakr.ca\srb2\tools\libpng-src\scripts;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
2
libs/zlib/projects/visualc10/.gitignore
vendored
2
libs/zlib/projects/visualc10/.gitignore
vendored
|
@ -1,3 +1,5 @@
|
||||||
/Win32
|
/Win32
|
||||||
/x64
|
/x64
|
||||||
/zlib.vcproj.*.*.user
|
/zlib.vcproj.*.*.user
|
||||||
|
/ARM
|
||||||
|
/ARM64
|
||||||
|
|
|
@ -1,6 +1,14 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -9,6 +17,14 @@
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -21,7 +37,7 @@
|
||||||
<PropertyGroup Label="Globals">
|
<PropertyGroup Label="Globals">
|
||||||
<ProjectGuid>{73A5729C-7323-41D4-AB48-8A03C9F81603}</ProjectGuid>
|
<ProjectGuid>{73A5729C-7323-41D4-AB48-8A03C9F81603}</ProjectGuid>
|
||||||
<RootNamespace>zlib</RootNamespace>
|
<RootNamespace>zlib</RootNamespace>
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
@ -29,21 +45,45 @@
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings">
|
<ImportGroup Label="ExtensionSettings">
|
||||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
|
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
|
||||||
|
@ -52,29 +92,53 @@
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(ProjectDir)$(Platform)\$(Configuration)\</IntDir>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
@ -106,6 +170,36 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;ASMV;ASMINF;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<MultiProcessorCompilation>false</MultiProcessorCompilation>
|
||||||
|
<UndefinePreprocessorDefinitions>ASMV;ASMINF</UndefinePreprocessorDefinitions>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\zlib.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<TargetEnvironment>X64</TargetEnvironment>
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
@ -139,6 +233,36 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||||
|
<Midl />
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<MultiProcessorCompilation>false</MultiProcessorCompilation>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\zlib.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM64</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<Optimization>MaxSpeed</Optimization>
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
@ -169,6 +293,37 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;ASMV;ASMINF;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
|
<UndefinePreprocessorDefinitions>ASMV;ASMINF</UndefinePreprocessorDefinitions>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\zlib.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<TargetEnvironment>X64</TargetEnvironment>
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
@ -202,30 +357,77 @@
|
||||||
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||||
|
<Midl />
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(ProjectDir)$(Platform)\$(Configuration)\</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(ProjectDir)$(Platform)\$(Configuration)\</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<OutputFile>$(ProjectDir)$(Platform)\$(Configuration)\zlib.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetMachine>MachineARM64</TargetMachine>
|
||||||
|
</Lib>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(ProjectDir)$(PlatformName)\$(ConfigurationName)\zlib.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\adler32.c">
|
<ClCompile Include="..\..\adler32.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\compress.c">
|
<ClCompile Include="..\..\compress.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\crc32.c">
|
<ClCompile Include="..\..\crc32.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\deflate.c">
|
<ClCompile Include="..\..\deflate.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\gzclose.c" />
|
<ClCompile Include="..\..\gzclose.c" />
|
||||||
<ClCompile Include="..\..\gzlib.c" />
|
<ClCompile Include="..\..\gzlib.c" />
|
||||||
|
@ -233,60 +435,97 @@
|
||||||
<ClCompile Include="..\..\gzwrite.c" />
|
<ClCompile Include="..\..\gzwrite.c" />
|
||||||
<ClCompile Include="..\..\infback.c">
|
<ClCompile Include="..\..\infback.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\inffast.c">
|
<ClCompile Include="..\..\inffast.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\inflate.c">
|
<ClCompile Include="..\..\inflate.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\inftrees.c">
|
<ClCompile Include="..\..\inftrees.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\trees.c">
|
<ClCompile Include="..\..\trees.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\uncompr.c">
|
<ClCompile Include="..\..\uncompr.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\zutil.c">
|
<ClCompile Include="..\..\zutil.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\contrib\masmx64\inffas8664.c">
|
<ClCompile Include="..\..\contrib\masmx64\inffas8664.c">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuildStep Include="..\..\win32\zlib.def">
|
<CustomBuildStep Include="..\..\win32\zlib.def">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
</CustomBuildStep>
|
</CustomBuildStep>
|
||||||
<None Include="README.txt" />
|
<None Include="README.txt" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
@ -306,39 +545,67 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="..\..\win32\zlib1.rc">
|
<ResourceCompile Include="..\..\win32\zlib1.rc">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">\Oogaland\Projects\orospakr.ca\srb2\tools\zlib\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<MASM Include="..\..\contrib\masmx86\inffas32.asm">
|
<MASM Include="..\..\contrib\masmx86\inffas32.asm">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
</MASM>
|
</MASM>
|
||||||
<MASM Include="..\..\contrib\masmx86\match686.asm">
|
<MASM Include="..\..\contrib\masmx86\match686.asm">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
</MASM>
|
</MASM>
|
||||||
<MASM Include="..\..\contrib\masmx64\gvmat64.asm">
|
<MASM Include="..\..\contrib\masmx64\gvmat64.asm">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</EnableMASM51Compatibility>
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</EnableMASM51Compatibility>
|
||||||
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</EnableMASM51Compatibility>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</EnableMASM51Compatibility>
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</EnableMASM51Compatibility>
|
||||||
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</EnableMASM51Compatibility>
|
||||||
</MASM>
|
</MASM>
|
||||||
<MASM Include="..\..\contrib\masmx64\inffasx64.asm">
|
<MASM Include="..\..\contrib\masmx64\inffasx64.asm">
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
|
||||||
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</EnableMASM51Compatibility>
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</EnableMASM51Compatibility>
|
||||||
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</EnableMASM51Compatibility>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
|
||||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
|
||||||
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</EnableMASM51Compatibility>
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</EnableMASM51Compatibility>
|
||||||
|
<EnableMASM51Compatibility Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</EnableMASM51Compatibility>
|
||||||
</MASM>
|
</MASM>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio 14
|
# Visual Studio 15
|
||||||
VisualStudioVersion = 14.0.25123.0
|
VisualStudioVersion = 15.0.28307.136
|
||||||
MinimumVisualStudioVersion = 10.0.40219.1
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Srb2win", "src\win32\Srb2win-vc10.vcxproj", "{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Srb2DD", "src\win32\Srb2win-vc10.vcxproj", "{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpng", "libs\libpng-src\projects\visualc10\libpng.vcxproj", "{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpng", "libs\libpng-src\projects\visualc10\libpng.vcxproj", "{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}"
|
||||||
EndProject
|
EndProject
|
||||||
|
@ -13,56 +13,104 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "libs\zlib\projects\
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "s_openal", "src\hardware\s_openal\s_openal-vc10.vcxproj", "{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "s_openal", "src\hardware\s_openal\s_openal-vc10.vcxproj", "{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Srb2SDL", "src\sdl\Srb2SDL-vc10.vcxproj", "{61BA7D3C-F77D-4D31-B718-1177FE482CF2}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Srb2Win", "src\sdl\Srb2SDL-vc10.vcxproj", "{61BA7D3C-F77D-4D31-B718-1177FE482CF2}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|ARM = Debug|ARM
|
||||||
|
Debug|ARM64 = Debug|ARM64
|
||||||
Debug|Win32 = Debug|Win32
|
Debug|Win32 = Debug|Win32
|
||||||
Debug|x64 = Debug|x64
|
Debug|x64 = Debug|x64
|
||||||
|
Release|ARM = Release|ARM
|
||||||
|
Release|ARM64 = Release|ARM64
|
||||||
Release|Win32 = Release|Win32
|
Release|Win32 = Release|Win32
|
||||||
Release|x64 = Release|x64
|
Release|x64 = Release|x64
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|ARM.Build.0 = Debug|ARM
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|Win32.ActiveCfg = Debug|Win32
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|Win32.Build.0 = Debug|Win32
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|x64.ActiveCfg = Debug|x64
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|x64.Build.0 = Debug|x64
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|ARM.ActiveCfg = Release|ARM
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|ARM.Build.0 = Release|ARM
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|Win32.ActiveCfg = Release|Win32
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|Win32.Build.0 = Release|Win32
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|Win32.Build.0 = Release|Win32
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|x64.ActiveCfg = Release|x64
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|x64.ActiveCfg = Release|x64
|
||||||
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|x64.Build.0 = Release|x64
|
{0F554F1D-ED49-4D65-A9A7-F63C57F277BE}.Release|x64.Build.0 = Release|x64
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|ARM.Build.0 = Debug|ARM
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|Win32.ActiveCfg = Debug|Win32
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|Win32.Build.0 = Debug|Win32
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|x64.ActiveCfg = Debug|x64
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|x64.Build.0 = Debug|x64
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|ARM.ActiveCfg = Release|ARM
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|ARM.Build.0 = Release|ARM
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|Win32.ActiveCfg = Release|Win32
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|Win32.Build.0 = Release|Win32
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|Win32.Build.0 = Release|Win32
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|x64.ActiveCfg = Release|x64
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|x64.ActiveCfg = Release|x64
|
||||||
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|x64.Build.0 = Release|x64
|
{72B01ACA-7A1A-4F7B-ACEF-2607299CF052}.Release|x64.Build.0 = Release|x64
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|ARM.Build.0 = Debug|ARM
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|Win32.ActiveCfg = Debug|Win32
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|Win32.Build.0 = Debug|Win32
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|x64.ActiveCfg = Debug|x64
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|x64.Build.0 = Debug|x64
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|ARM.ActiveCfg = Release|ARM
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|ARM.Build.0 = Release|ARM
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|Win32.ActiveCfg = Release|Win32
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|Win32.Build.0 = Release|Win32
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|Win32.Build.0 = Release|Win32
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|x64.ActiveCfg = Release|x64
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|x64.ActiveCfg = Release|x64
|
||||||
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|x64.Build.0 = Release|x64
|
{51137D5C-4E81-4955-AACF-EA3092006051}.Release|x64.Build.0 = Release|x64
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|ARM.Build.0 = Debug|ARM
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|Win32.ActiveCfg = Debug|Win32
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|Win32.Build.0 = Debug|Win32
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|x64.ActiveCfg = Debug|x64
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|x64.Build.0 = Debug|x64
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|ARM.ActiveCfg = Release|ARM
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|ARM.Build.0 = Release|ARM
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|Win32.ActiveCfg = Release|Win32
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|Win32.Build.0 = Release|Win32
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|Win32.Build.0 = Release|Win32
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|x64.ActiveCfg = Release|x64
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|x64.ActiveCfg = Release|x64
|
||||||
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|x64.Build.0 = Release|x64
|
{73A5729C-7323-41D4-AB48-8A03C9F81603}.Release|x64.Build.0 = Release|x64
|
||||||
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||||
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Debug|Win32.ActiveCfg = Debug|Win32
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Debug|x64.ActiveCfg = Debug|x64
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Release|ARM.ActiveCfg = Release|ARM
|
||||||
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Release|Win32.ActiveCfg = Release|Win32
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Release|x64.ActiveCfg = Release|x64
|
{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|ARM.Build.0 = Debug|ARM
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|Win32.ActiveCfg = Debug|Win32
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|Win32.Build.0 = Debug|Win32
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|x64.ActiveCfg = Debug|x64
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|x64.Build.0 = Debug|x64
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|ARM.ActiveCfg = Release|ARM
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|ARM.Build.0 = Release|ARM
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||||
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|ARM64.Build.0 = Release|ARM64
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|Win32.ActiveCfg = Release|Win32
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|Win32.Build.0 = Release|Win32
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|Win32.Build.0 = Release|Win32
|
||||||
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|x64.ActiveCfg = Release|x64
|
{61BA7D3C-F77D-4D31-B718-1177FE482CF2}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
@ -71,4 +119,7 @@ Global
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {8C0B5F99-D9B8-4CB2-BA67-5D350E71C6FC}
|
||||||
|
EndGlobalSection
|
||||||
EndGlobal
|
EndGlobal
|
||||||
|
|
41
src/Makefile
41
src/Makefile
|
@ -107,8 +107,18 @@ endif
|
||||||
ifdef LINUX64
|
ifdef LINUX64
|
||||||
LINUX=1
|
LINUX=1
|
||||||
NONX86=1
|
NONX86=1
|
||||||
|
# LINUX64 does not imply X86_64=1; could mean ARM64 or Itanium
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef MINGW64
|
||||||
|
MINGW=1
|
||||||
|
NONX86=1
|
||||||
|
NOASM=1
|
||||||
|
# MINGW64 should not necessarily imply X86_64=1, but we make that assumption elsewhere
|
||||||
|
# Once that changes, remove this
|
||||||
|
X86_64=1
|
||||||
|
endif #ifdef MINGW64
|
||||||
|
|
||||||
ifdef HAIKU
|
ifdef HAIKU
|
||||||
SDL=1
|
SDL=1
|
||||||
endif
|
endif
|
||||||
|
@ -179,11 +189,6 @@ ifdef MINGW
|
||||||
include win32/Makefile.cfg
|
include win32/Makefile.cfg
|
||||||
endif #ifdef MINGW
|
endif #ifdef MINGW
|
||||||
|
|
||||||
ifdef MINGW64
|
|
||||||
MINGW=1
|
|
||||||
include win32/Makefile.cfg
|
|
||||||
endif #ifdef MINGW64
|
|
||||||
|
|
||||||
ifdef UNIX
|
ifdef UNIX
|
||||||
UNIXCOMMON=1
|
UNIXCOMMON=1
|
||||||
endif
|
endif
|
||||||
|
@ -291,11 +296,13 @@ OPTS += -DCOMPVERSION
|
||||||
|
|
||||||
ifndef NONX86
|
ifndef NONX86
|
||||||
ifndef GCC29
|
ifndef GCC29
|
||||||
M5=-march=pentium
|
ARCHOPTS?=-march=pentium
|
||||||
M4=-march=i486
|
|
||||||
else
|
else
|
||||||
M5=-mpentium
|
ARCHOPTS?=-mpentium
|
||||||
M4=-m486
|
endif
|
||||||
|
else
|
||||||
|
ifdef X86_64
|
||||||
|
ARCHOPTS?=-march=nocona
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -424,7 +431,7 @@ else
|
||||||
WINDRESFLAGS = -DNDEBUG
|
WINDRESFLAGS = -DNDEBUG
|
||||||
CFLAGS+=-O3
|
CFLAGS+=-O3
|
||||||
endif
|
endif
|
||||||
CFLAGS+=-g $(OPTS) $(M5) $(WINDRESFLAGS)
|
CFLAGS+=-g $(OPTS) $(ARCHOPTS) $(WINDRESFLAGS)
|
||||||
|
|
||||||
ifdef YASM
|
ifdef YASM
|
||||||
ifdef STABS
|
ifdef STABS
|
||||||
|
@ -446,6 +453,10 @@ ifdef ZDEBUG
|
||||||
CPPFLAGS+=-DZDEBUG
|
CPPFLAGS+=-DZDEBUG
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef DEVELOP
|
||||||
|
CPPFLAGS+=-DDEVELOP
|
||||||
|
endif
|
||||||
|
|
||||||
OPTS+=$(CPPFLAGS)
|
OPTS+=$(CPPFLAGS)
|
||||||
|
|
||||||
# default EXENAME if all else fails
|
# default EXENAME if all else fails
|
||||||
|
@ -914,15 +925,15 @@ endif
|
||||||
ifndef NOHS
|
ifndef NOHS
|
||||||
$(OBJDIR)/s_ds3d.o: hardware/s_ds3d/s_ds3d.c hardware/hw3dsdrv.h \
|
$(OBJDIR)/s_ds3d.o: hardware/s_ds3d/s_ds3d.c hardware/hw3dsdrv.h \
|
||||||
hardware/hw_dll.h
|
hardware/hw_dll.h
|
||||||
$(CC) $(M5) -Os -o $(OBJDIR)/s_ds3d.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_ds3d/s_ds3d.c
|
$(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_ds3d.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_ds3d/s_ds3d.c
|
||||||
|
|
||||||
$(OBJDIR)/s_fmod.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \
|
$(OBJDIR)/s_fmod.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \
|
||||||
hardware/hw_dll.h
|
hardware/hw_dll.h
|
||||||
$(CC) $(M5) -Os -o $(OBJDIR)/s_fmod.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_fmod/s_fmod.c
|
$(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_fmod.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_fmod/s_fmod.c
|
||||||
|
|
||||||
$(OBJDIR)/s_openal.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \
|
$(OBJDIR)/s_openal.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \
|
||||||
hardware/hw_dll.h
|
hardware/hw_dll.h
|
||||||
$(CC) $(M5) -Os -o $(OBJDIR)/s_openal.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_openal/s_openal.c
|
$(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_openal.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_openal/s_openal.c
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
@ -952,11 +963,11 @@ else
|
||||||
|
|
||||||
$(OBJDIR)/s_fmod.o: hardware/s_fmod/s_fmod.c hardware/hw3dsdrv.h \
|
$(OBJDIR)/s_fmod.o: hardware/s_fmod/s_fmod.c hardware/hw3dsdrv.h \
|
||||||
hardware/hw_dll.h
|
hardware/hw_dll.h
|
||||||
$(CC) $(M5) -Os -o $(OBJDIR)/s_fmod.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_fmod/s_fmod.c
|
$(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_fmod.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_fmod/s_fmod.c
|
||||||
|
|
||||||
$(OBJDIR)/s_openal.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \
|
$(OBJDIR)/s_openal.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \
|
||||||
hardware/hw_dll.h
|
hardware/hw_dll.h
|
||||||
$(CC) $(M5) -Os -o $(OBJDIR)/s_openal.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_openal/s_openal.c
|
$(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_openal.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_openal/s_openal.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef FILTERS
|
ifdef FILTERS
|
||||||
|
|
|
@ -112,9 +112,7 @@ ifndef GCC295
|
||||||
WFLAGS+=-Wno-div-by-zero
|
WFLAGS+=-Wno-div-by-zero
|
||||||
endif
|
endif
|
||||||
#WFLAGS+=-Wsystem-headers
|
#WFLAGS+=-Wsystem-headers
|
||||||
ifndef ERRORMODE
|
WFLAGS+=-Wfloat-equal
|
||||||
#WFLAGS+=-Wfloat-equal
|
|
||||||
endif
|
|
||||||
#WFLAGS+=-Wtraditional
|
#WFLAGS+=-Wtraditional
|
||||||
ifdef VCHELP
|
ifdef VCHELP
|
||||||
WFLAGS+=-Wdeclaration-after-statement
|
WFLAGS+=-Wdeclaration-after-statement
|
||||||
|
|
348
src/am_map.c
348
src/am_map.c
|
@ -11,8 +11,8 @@
|
||||||
/// \file am_map.c
|
/// \file am_map.c
|
||||||
/// \brief Code for the 'automap', former Doom feature used for DEVMODE testing
|
/// \brief Code for the 'automap', former Doom feature used for DEVMODE testing
|
||||||
|
|
||||||
#include "g_game.h"
|
|
||||||
#include "am_map.h"
|
#include "am_map.h"
|
||||||
|
#include "g_game.h"
|
||||||
#include "g_input.h"
|
#include "g_input.h"
|
||||||
#include "p_local.h"
|
#include "p_local.h"
|
||||||
#include "p_slopes.h"
|
#include "p_slopes.h"
|
||||||
|
@ -33,7 +33,6 @@ static const UINT8 GRAYSRANGE = 16;
|
||||||
static const UINT8 BROWNS = (3*16);
|
static const UINT8 BROWNS = (3*16);
|
||||||
static const UINT8 YELLOWS = (7*16);
|
static const UINT8 YELLOWS = (7*16);
|
||||||
static const UINT8 GREENS = (10*16);
|
static const UINT8 GREENS = (10*16);
|
||||||
static const UINT8 GREENRANGE = 16;
|
|
||||||
static const UINT8 DBLACK = 31;
|
static const UINT8 DBLACK = 31;
|
||||||
static const UINT8 DWHITE = 0;
|
static const UINT8 DWHITE = 0;
|
||||||
|
|
||||||
|
@ -50,8 +49,6 @@ static const UINT8 NOCLIMBYELLOWS = (11*16);
|
||||||
|
|
||||||
// Automap colors
|
// Automap colors
|
||||||
#define BACKGROUND DBLACK
|
#define BACKGROUND DBLACK
|
||||||
#define YOURCOLORS DWHITE
|
|
||||||
#define YOURRANGE 0
|
|
||||||
#define WALLCOLORS (REDS + REDRANGE/2)
|
#define WALLCOLORS (REDS + REDRANGE/2)
|
||||||
#define WALLRANGE (REDRANGE/2)
|
#define WALLRANGE (REDRANGE/2)
|
||||||
#define NOCLIMBWALLCOLORS (NOCLIMBREDS + NOCLIMBREDRANGE/2)
|
#define NOCLIMBWALLCOLORS (NOCLIMBREDS + NOCLIMBREDRANGE/2)
|
||||||
|
@ -68,31 +65,23 @@ static const UINT8 NOCLIMBYELLOWS = (11*16);
|
||||||
#define CDWALLCOLORS YELLOWS
|
#define CDWALLCOLORS YELLOWS
|
||||||
#define NOCLIMBCDWALLCOLORS NOCLIMBYELLOWS
|
#define NOCLIMBCDWALLCOLORS NOCLIMBYELLOWS
|
||||||
#define THINGCOLORS GREENS
|
#define THINGCOLORS GREENS
|
||||||
#define THINGRANGE GREENRANGE
|
|
||||||
#define SECRETWALLCOLORS WALLCOLORS
|
|
||||||
#define SECRETWALLRANGE WALLRANGE
|
|
||||||
#define GRIDCOLORS (GRAYS + GRAYSRANGE/2)
|
#define GRIDCOLORS (GRAYS + GRAYSRANGE/2)
|
||||||
#define GRIDRANGE 0
|
|
||||||
#define XHAIRCOLORS GRAYS
|
#define XHAIRCOLORS GRAYS
|
||||||
|
|
||||||
// drawing stuff
|
// controls
|
||||||
#define FB 0
|
|
||||||
|
|
||||||
#define AM_PANDOWNKEY KEY_DOWNARROW
|
|
||||||
#define AM_PANUPKEY KEY_UPARROW
|
#define AM_PANUPKEY KEY_UPARROW
|
||||||
#define AM_PANRIGHTKEY KEY_RIGHTARROW
|
#define AM_PANDOWNKEY KEY_DOWNARROW
|
||||||
#define AM_PANLEFTKEY KEY_LEFTARROW
|
#define AM_PANLEFTKEY KEY_LEFTARROW
|
||||||
|
#define AM_PANRIGHTKEY KEY_RIGHTARROW
|
||||||
|
|
||||||
#define AM_ZOOMINKEY '='
|
#define AM_ZOOMINKEY '='
|
||||||
#define AM_ZOOMOUTKEY '-'
|
#define AM_ZOOMOUTKEY '-'
|
||||||
#define AM_STARTKEY KEY_TAB
|
|
||||||
#define AM_ENDKEY KEY_TAB
|
|
||||||
#define AM_GOBIGKEY '0'
|
#define AM_GOBIGKEY '0'
|
||||||
|
|
||||||
#define AM_FOLLOWKEY 'f'
|
#define AM_FOLLOWKEY 'f'
|
||||||
#define AM_GRIDKEY 'g'
|
#define AM_GRIDKEY 'g'
|
||||||
#define AM_MARKKEY 'm'
|
|
||||||
#define AM_CLEARMARKKEY 'c'
|
|
||||||
|
|
||||||
#define AM_NUMMARKPOINTS 10
|
#define AM_TOGGLEKEY KEY_TAB
|
||||||
|
|
||||||
// scale on entry
|
// scale on entry
|
||||||
#define INITSCALEMTOF (FRACUNIT/5)
|
#define INITSCALEMTOF (FRACUNIT/5)
|
||||||
|
@ -113,6 +102,9 @@ static const UINT8 NOCLIMBYELLOWS = (11*16);
|
||||||
#define CXMTOF(x) (f_x + MTOF((x)-m_x))
|
#define CXMTOF(x) (f_x + MTOF((x)-m_x))
|
||||||
#define CYMTOF(y) (f_y + (f_h - MTOF((y)-m_y)))
|
#define CYMTOF(y) (f_y + (f_h - MTOF((y)-m_y)))
|
||||||
|
|
||||||
|
#define MAPBITS (FRACBITS-4)
|
||||||
|
#define FRACTOMAPBITS (FRACBITS-MAPBITS)
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
fixed_t x, y;
|
fixed_t x, y;
|
||||||
|
@ -133,7 +125,10 @@ typedef struct
|
||||||
// A line drawing of the player pointing right,
|
// A line drawing of the player pointing right,
|
||||||
// starting from the middle.
|
// starting from the middle.
|
||||||
//
|
//
|
||||||
|
|
||||||
|
#define PLAYERRADIUS (16*(1<<MAPBITS))
|
||||||
#define R ((8*PLAYERRADIUS)/7)
|
#define R ((8*PLAYERRADIUS)/7)
|
||||||
|
|
||||||
static const mline_t player_arrow[] = {
|
static const mline_t player_arrow[] = {
|
||||||
{ { -R+R/8, 0 }, { R, 0 } }, // -----
|
{ { -R+R/8, 0 }, { R, 0 } }, // -----
|
||||||
{ { R, 0 }, { R-R/2, R/4 } }, // ----->
|
{ { R, 0 }, { R-R/2, R/4 } }, // ----->
|
||||||
|
@ -166,27 +161,15 @@ static const mline_t thintriangle_guy[] = {
|
||||||
#undef R
|
#undef R
|
||||||
#define NUMTHINTRIANGLEGUYLINES (sizeof (thintriangle_guy)/sizeof (mline_t))
|
#define NUMTHINTRIANGLEGUYLINES (sizeof (thintriangle_guy)/sizeof (mline_t))
|
||||||
|
|
||||||
static INT32 bigstate; //added : 24-01-98 : moved here, toggle between
|
static boolean bigstate; // user view and large view (full map view)
|
||||||
// user view and large view (full map view)
|
static boolean draw_grid = false;
|
||||||
|
|
||||||
static INT32 grid = 0;
|
|
||||||
|
|
||||||
static INT32 leveljuststarted = 1; // kluge until AM_LevelInit() is called
|
|
||||||
|
|
||||||
boolean automapactive = false;
|
boolean automapactive = false;
|
||||||
boolean am_recalc = false; //added : 05-02-98 : true when screen size changes
|
boolean am_recalc = false; //added : 05-02-98 : true when screen size changes
|
||||||
|
static boolean am_stopped = true;
|
||||||
|
|
||||||
// location of window on screen
|
static INT32 f_x, f_y; // location of window on screen (always zero for both)
|
||||||
static INT32 f_x;
|
static INT32 f_w, f_h; // size of window on screen (always the screen width and height respectively)
|
||||||
static INT32 f_y;
|
|
||||||
|
|
||||||
// size of window on screen
|
|
||||||
static INT32 f_w;
|
|
||||||
static INT32 f_h;
|
|
||||||
|
|
||||||
static INT32 lightlev; // used for funky strobing effect
|
|
||||||
static UINT8 *fb; // pseudo-frame buffer
|
|
||||||
static INT32 amclock;
|
|
||||||
|
|
||||||
static mpoint_t m_paninc; // how far the window pans each tic (map coords)
|
static mpoint_t m_paninc; // how far the window pans each tic (map coords)
|
||||||
static fixed_t mtof_zoommul; // how far the window zooms in each tic (map coords)
|
static fixed_t mtof_zoommul; // how far the window zooms in each tic (map coords)
|
||||||
|
@ -210,11 +193,6 @@ static fixed_t max_y;
|
||||||
static fixed_t max_w; // max_x-min_x,
|
static fixed_t max_w; // max_x-min_x,
|
||||||
static fixed_t max_h; // max_y-min_y
|
static fixed_t max_h; // max_y-min_y
|
||||||
|
|
||||||
// based on player size
|
|
||||||
static fixed_t min_w;
|
|
||||||
static fixed_t min_h;
|
|
||||||
|
|
||||||
|
|
||||||
static fixed_t min_scale_mtof; // used to tell when to stop zooming out
|
static fixed_t min_scale_mtof; // used to tell when to stop zooming out
|
||||||
static fixed_t max_scale_mtof; // used to tell when to stop zooming in
|
static fixed_t max_scale_mtof; // used to tell when to stop zooming in
|
||||||
|
|
||||||
|
@ -232,13 +210,7 @@ static fixed_t scale_ftom;
|
||||||
|
|
||||||
static player_t *plr; // the player represented by an arrow
|
static player_t *plr; // the player represented by an arrow
|
||||||
|
|
||||||
static patch_t *marknums[10]; // numbers used for marking by the automap
|
static INT32 followplayer = true; // specifies whether to follow the player around
|
||||||
static mpoint_t markpoints[AM_NUMMARKPOINTS]; // where the points are
|
|
||||||
static INT32 markpointnum = 0; // next point to be assigned
|
|
||||||
|
|
||||||
static INT32 followplayer = 1; // specifies whether to follow the player around
|
|
||||||
|
|
||||||
static boolean stopped = true;
|
|
||||||
|
|
||||||
// function for drawing lines, depends on rendermode
|
// function for drawing lines, depends on rendermode
|
||||||
typedef void (*AMDRAWFLINEFUNC) (const fline_t *fl, INT32 color);
|
typedef void (*AMDRAWFLINEFUNC) (const fline_t *fl, INT32 color);
|
||||||
|
@ -277,8 +249,8 @@ static inline void AM_restoreScaleAndLoc(void)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_x = plr->mo->x - m_w/2;
|
m_x = (plr->mo->x >> FRACTOMAPBITS) - m_w/2;
|
||||||
m_y = plr->mo->y - m_h/2;
|
m_y = (plr->mo->y >> FRACTOMAPBITS) - m_h/2;
|
||||||
}
|
}
|
||||||
m_x2 = m_x + m_w;
|
m_x2 = m_x + m_w;
|
||||||
m_y2 = m_y + m_h;
|
m_y2 = m_y + m_h;
|
||||||
|
@ -288,15 +260,6 @@ static inline void AM_restoreScaleAndLoc(void)
|
||||||
scale_ftom = FixedDiv(FRACUNIT, scale_mtof);
|
scale_ftom = FixedDiv(FRACUNIT, scale_mtof);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Adds a marker at the current location.
|
|
||||||
*/
|
|
||||||
static inline void AM_addMark(void)
|
|
||||||
{
|
|
||||||
markpoints[markpointnum].x = m_x + m_w/2;
|
|
||||||
markpoints[markpointnum].y = m_y + m_h/2;
|
|
||||||
markpointnum = (markpointnum + 1) % AM_NUMMARKPOINTS;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Determines the bounding box around all vertices.
|
/** Determines the bounding box around all vertices.
|
||||||
* This is used to set global variables controlling the zoom range.
|
* This is used to set global variables controlling the zoom range.
|
||||||
*/
|
*/
|
||||||
|
@ -322,11 +285,8 @@ static void AM_findMinMaxBoundaries(void)
|
||||||
max_y = vertexes[i].y;
|
max_y = vertexes[i].y;
|
||||||
}
|
}
|
||||||
|
|
||||||
max_w = max_x - min_x;
|
max_w = (max_x >>= FRACTOMAPBITS) - (min_x >>= FRACTOMAPBITS);
|
||||||
max_h = max_y - min_y;
|
max_h = (max_y >>= FRACTOMAPBITS) - (min_y >>= FRACTOMAPBITS);
|
||||||
|
|
||||||
min_w = 2*PLAYERRADIUS; // const? never changed?
|
|
||||||
min_h = 2*PLAYERRADIUS;
|
|
||||||
|
|
||||||
a = FixedDiv(f_w<<FRACBITS, max_w);
|
a = FixedDiv(f_w<<FRACBITS, max_w);
|
||||||
b = FixedDiv(f_h<<FRACBITS, max_h);
|
b = FixedDiv(f_h<<FRACBITS, max_h);
|
||||||
|
@ -339,7 +299,7 @@ static void AM_changeWindowLoc(void)
|
||||||
{
|
{
|
||||||
if (m_paninc.x || m_paninc.y)
|
if (m_paninc.x || m_paninc.y)
|
||||||
{
|
{
|
||||||
followplayer = 0;
|
followplayer = false;
|
||||||
f_oldloc.x = INT32_MAX;
|
f_oldloc.x = INT32_MAX;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -365,11 +325,7 @@ static void AM_initVariables(void)
|
||||||
INT32 pnum;
|
INT32 pnum;
|
||||||
|
|
||||||
automapactive = true;
|
automapactive = true;
|
||||||
fb = screens[0];
|
|
||||||
|
|
||||||
f_oldloc.x = INT32_MAX;
|
f_oldloc.x = INT32_MAX;
|
||||||
amclock = 0;
|
|
||||||
lightlev = 0;
|
|
||||||
|
|
||||||
m_paninc.x = m_paninc.y = 0;
|
m_paninc.x = m_paninc.y = 0;
|
||||||
ftom_zoommul = FRACUNIT;
|
ftom_zoommul = FRACUNIT;
|
||||||
|
@ -385,8 +341,11 @@ static void AM_initVariables(void)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
plr = &players[pnum];
|
plr = &players[pnum];
|
||||||
m_x = plr->mo->x - m_w/2;
|
if (plr != NULL && plr->mo != NULL)
|
||||||
m_y = plr->mo->y - m_h/2;
|
{
|
||||||
|
m_x = (plr->mo->x >> FRACTOMAPBITS) - m_w/2;
|
||||||
|
m_y = (plr->mo->y >> FRACTOMAPBITS) - m_h/2;
|
||||||
|
}
|
||||||
AM_changeWindowLoc();
|
AM_changeWindowLoc();
|
||||||
|
|
||||||
// for saving & restoring
|
// for saving & restoring
|
||||||
|
@ -396,41 +355,21 @@ static void AM_initVariables(void)
|
||||||
old_m_h = m_h;
|
old_m_h = m_h;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const UINT8 *maplump; // pointer to the raw data for the automap background.
|
|
||||||
|
|
||||||
/** Clears all map markers.
|
|
||||||
*/
|
|
||||||
static void AM_clearMarks(void)
|
|
||||||
{
|
|
||||||
INT32 i;
|
|
||||||
|
|
||||||
for (i = 0; i < AM_NUMMARKPOINTS; i++)
|
|
||||||
markpoints[i].x = -1; // means empty
|
|
||||||
markpointnum = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// should be called at the start of every level
|
// should be called at the start of every level
|
||||||
// right now, i figure it out myself
|
// right now, i figure it out myself
|
||||||
//
|
//
|
||||||
static void AM_LevelInit(void)
|
static void AM_LevelInit(void)
|
||||||
{
|
{
|
||||||
leveljuststarted = 0;
|
|
||||||
|
|
||||||
f_x = f_y = 0;
|
f_x = f_y = 0;
|
||||||
f_w = vid.width;
|
f_w = vid.width;
|
||||||
f_h = vid.height;
|
f_h = vid.height;
|
||||||
|
|
||||||
if (rendermode == render_soft)
|
AM_drawFline = AM_drawFline_soft;
|
||||||
AM_drawFline = AM_drawFline_soft;
|
#ifdef HWRENDER
|
||||||
#ifdef HWRENDER // not win32 only 19990829 by Kin
|
if (rendermode == render_opengl)
|
||||||
else if (rendermode != render_none)
|
|
||||||
AM_drawFline = HWR_drawAMline;
|
AM_drawFline = HWR_drawAMline;
|
||||||
#endif
|
#endif
|
||||||
else
|
|
||||||
I_Error("Automap can't run without a render system");
|
|
||||||
|
|
||||||
AM_clearMarks();
|
|
||||||
|
|
||||||
AM_findMinMaxBoundaries();
|
AM_findMinMaxBoundaries();
|
||||||
scale_mtof = FixedDiv(min_scale_mtof*10, 7*FRACUNIT);
|
scale_mtof = FixedDiv(min_scale_mtof*10, 7*FRACUNIT);
|
||||||
|
@ -446,7 +385,7 @@ static void AM_LevelInit(void)
|
||||||
void AM_Stop(void)
|
void AM_Stop(void)
|
||||||
{
|
{
|
||||||
automapactive = false;
|
automapactive = false;
|
||||||
stopped = true;
|
am_stopped = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Enables automap.
|
/** Enables automap.
|
||||||
|
@ -457,15 +396,14 @@ static inline void AM_Start(void)
|
||||||
{
|
{
|
||||||
static INT32 lastlevel = -1;
|
static INT32 lastlevel = -1;
|
||||||
|
|
||||||
if (!stopped)
|
if (!am_stopped)
|
||||||
AM_Stop();
|
AM_Stop();
|
||||||
stopped = false;
|
am_stopped = false;
|
||||||
if (lastlevel != gamemap || am_recalc) // screen size changed
|
if (lastlevel != gamemap || am_recalc) // screen size changed
|
||||||
{
|
{
|
||||||
am_recalc = false;
|
|
||||||
|
|
||||||
AM_LevelInit();
|
AM_LevelInit();
|
||||||
lastlevel = gamemap;
|
lastlevel = gamemap;
|
||||||
|
am_recalc = false;
|
||||||
}
|
}
|
||||||
AM_initVariables();
|
AM_initVariables();
|
||||||
}
|
}
|
||||||
|
@ -503,7 +441,7 @@ boolean AM_Responder(event_t *ev)
|
||||||
{
|
{
|
||||||
if (!automapactive)
|
if (!automapactive)
|
||||||
{
|
{
|
||||||
if (ev->type == ev_keydown && ev->data1 == AM_STARTKEY)
|
if (ev->type == ev_keydown && ev->data1 == AM_TOGGLEKEY)
|
||||||
{
|
{
|
||||||
//faB: prevent alt-tab in win32 version to activate automap just before
|
//faB: prevent alt-tab in win32 version to activate automap just before
|
||||||
// minimizing the app; doesn't do any harm to the DOS version
|
// minimizing the app; doesn't do any harm to the DOS version
|
||||||
|
@ -515,10 +453,8 @@ boolean AM_Responder(event_t *ev)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (ev->type == ev_keydown)
|
else if (ev->type == ev_keydown)
|
||||||
{
|
{
|
||||||
|
|
||||||
rc = true;
|
rc = true;
|
||||||
switch (ev->data1)
|
switch (ev->data1)
|
||||||
{
|
{
|
||||||
|
@ -554,7 +490,7 @@ boolean AM_Responder(event_t *ev)
|
||||||
mtof_zoommul = M_ZOOMIN;
|
mtof_zoommul = M_ZOOMIN;
|
||||||
ftom_zoommul = M_ZOOMOUT;
|
ftom_zoommul = M_ZOOMOUT;
|
||||||
break;
|
break;
|
||||||
case AM_ENDKEY:
|
case AM_TOGGLEKEY:
|
||||||
AM_Stop();
|
AM_Stop();
|
||||||
break;
|
break;
|
||||||
case AM_GOBIGKEY:
|
case AM_GOBIGKEY:
|
||||||
|
@ -572,13 +508,7 @@ boolean AM_Responder(event_t *ev)
|
||||||
f_oldloc.x = INT32_MAX;
|
f_oldloc.x = INT32_MAX;
|
||||||
break;
|
break;
|
||||||
case AM_GRIDKEY:
|
case AM_GRIDKEY:
|
||||||
grid = !grid;
|
draw_grid = !draw_grid;
|
||||||
break;
|
|
||||||
case AM_MARKKEY:
|
|
||||||
AM_addMark();
|
|
||||||
break;
|
|
||||||
case AM_CLEARMARKKEY:
|
|
||||||
AM_clearMarks();
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
rc = false;
|
rc = false;
|
||||||
|
@ -632,8 +562,8 @@ static inline void AM_doFollowPlayer(void)
|
||||||
{
|
{
|
||||||
if (f_oldloc.x != plr->mo->x || f_oldloc.y != plr->mo->y)
|
if (f_oldloc.x != plr->mo->x || f_oldloc.y != plr->mo->y)
|
||||||
{
|
{
|
||||||
m_x = FTOM(MTOF(plr->mo->x)) - m_w/2;
|
m_x = FTOM(MTOF(plr->mo->x >> FRACTOMAPBITS)) - m_w/2;
|
||||||
m_y = FTOM(MTOF(plr->mo->y)) - m_h/2;
|
m_y = FTOM(MTOF(plr->mo->y >> FRACTOMAPBITS)) - m_h/2;
|
||||||
m_x2 = m_x + m_w;
|
m_x2 = m_x + m_w;
|
||||||
m_y2 = m_y + m_h;
|
m_y2 = m_y + m_h;
|
||||||
f_oldloc.x = plr->mo->x;
|
f_oldloc.x = plr->mo->x;
|
||||||
|
@ -651,8 +581,6 @@ void AM_Ticker(void)
|
||||||
if (dedicated || !automapactive)
|
if (dedicated || !automapactive)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
amclock++;
|
|
||||||
|
|
||||||
if (followplayer)
|
if (followplayer)
|
||||||
AM_doFollowPlayer();
|
AM_doFollowPlayer();
|
||||||
|
|
||||||
|
@ -671,72 +599,7 @@ void AM_Ticker(void)
|
||||||
*/
|
*/
|
||||||
static void AM_clearFB(INT32 color)
|
static void AM_clearFB(INT32 color)
|
||||||
{
|
{
|
||||||
#ifdef HWRENDER
|
V_DrawFill(f_x, f_y, f_w, f_h, color|V_NOSCALESTART);
|
||||||
if (rendermode != render_soft && rendermode != render_none)
|
|
||||||
{
|
|
||||||
HWR_clearAutomap();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!maplump)
|
|
||||||
memset(fb, color, f_w*f_h*vid.bpp);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
INT32 dmapx, dmapy, i, y;
|
|
||||||
static INT32 mapxstart, mapystart;
|
|
||||||
UINT8 *dest = screens[0];
|
|
||||||
const UINT8 *src;
|
|
||||||
#define MAPLUMPHEIGHT (200 - 42)
|
|
||||||
|
|
||||||
if (followplayer)
|
|
||||||
{
|
|
||||||
static vertex_t oldplr;
|
|
||||||
|
|
||||||
dmapx = MTOF(plr->mo->x) - MTOF(oldplr.x); //fixed point
|
|
||||||
dmapy = MTOF(oldplr.y) - MTOF(plr->mo->y);
|
|
||||||
|
|
||||||
oldplr.x = plr->mo->x;
|
|
||||||
oldplr.y = plr->mo->y;
|
|
||||||
mapxstart += dmapx>>1;
|
|
||||||
mapystart += dmapy>>1;
|
|
||||||
|
|
||||||
while (mapxstart >= BASEVIDWIDTH)
|
|
||||||
mapxstart -= BASEVIDWIDTH;
|
|
||||||
while (mapxstart < 0)
|
|
||||||
mapxstart += BASEVIDWIDTH;
|
|
||||||
while (mapystart >= MAPLUMPHEIGHT)
|
|
||||||
mapystart -= MAPLUMPHEIGHT;
|
|
||||||
while (mapystart < 0)
|
|
||||||
mapystart += MAPLUMPHEIGHT;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
mapxstart += (MTOF(m_paninc.x)>>1);
|
|
||||||
mapystart -= (MTOF(m_paninc.y)>>1);
|
|
||||||
if (mapxstart >= BASEVIDWIDTH)
|
|
||||||
mapxstart -= BASEVIDWIDTH;
|
|
||||||
if (mapxstart < 0)
|
|
||||||
mapxstart += BASEVIDWIDTH;
|
|
||||||
if (mapystart >= MAPLUMPHEIGHT)
|
|
||||||
mapystart -= MAPLUMPHEIGHT;
|
|
||||||
if (mapystart < 0)
|
|
||||||
mapystart += MAPLUMPHEIGHT;
|
|
||||||
}
|
|
||||||
|
|
||||||
//blit the automap background to the screen.
|
|
||||||
for (y = 0; y < f_h; y++)
|
|
||||||
{
|
|
||||||
src = maplump + mapxstart + (y + mapystart)*BASEVIDWIDTH;
|
|
||||||
for (i = 0; i < BASEVIDWIDTH*vid.dupx; i++)
|
|
||||||
{
|
|
||||||
while (src > maplump + BASEVIDWIDTH*MAPLUMPHEIGHT)
|
|
||||||
src -= BASEVIDWIDTH*MAPLUMPHEIGHT;
|
|
||||||
*dest++ = *src++;
|
|
||||||
}
|
|
||||||
dest += vid.width - vid.dupx*BASEVIDWIDTH;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Performs automap clipping of lines.
|
/** Performs automap clipping of lines.
|
||||||
|
@ -871,7 +734,7 @@ static boolean AM_clipMline(const mline_t *ml, fline_t *fl)
|
||||||
//
|
//
|
||||||
static void AM_drawFline_soft(const fline_t *fl, INT32 color)
|
static void AM_drawFline_soft(const fline_t *fl, INT32 color)
|
||||||
{
|
{
|
||||||
register INT32 x, y, dx, dy, sx, sy, ax, ay, d;
|
INT32 x, y, dx, dy, sx, sy, ax, ay, d;
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
static INT32 num = 0;
|
static INT32 num = 0;
|
||||||
|
@ -887,7 +750,7 @@ static void AM_drawFline_soft(const fline_t *fl, INT32 color)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define PUTDOT(xx,yy,cc) fb[(yy)*f_w + (xx)]=(UINT8)(cc)
|
#define PUTDOT(xx,yy,cc) V_DrawFill(xx,yy,1,1,cc|V_NOSCALESTART);
|
||||||
|
|
||||||
dx = fl->b.x - fl->a.x;
|
dx = fl->b.x - fl->a.x;
|
||||||
ax = 2 * (dx < 0 ? -dx : dx);
|
ax = 2 * (dx < 0 ? -dx : dx);
|
||||||
|
@ -905,7 +768,7 @@ static void AM_drawFline_soft(const fline_t *fl, INT32 color)
|
||||||
d = ay - ax/2;
|
d = ay - ax/2;
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
PUTDOT(x, y, color);
|
PUTDOT(x, y, color)
|
||||||
if (x == fl->b.x)
|
if (x == fl->b.x)
|
||||||
return;
|
return;
|
||||||
if (d >= 0)
|
if (d >= 0)
|
||||||
|
@ -922,7 +785,7 @@ static void AM_drawFline_soft(const fline_t *fl, INT32 color)
|
||||||
d = ax - ay/2;
|
d = ax - ay/2;
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
PUTDOT(x, y, color);
|
PUTDOT(x, y, color)
|
||||||
if (y == fl->b.y)
|
if (y == fl->b.y)
|
||||||
return;
|
return;
|
||||||
if (d >= 0)
|
if (d >= 0)
|
||||||
|
@ -934,6 +797,8 @@ static void AM_drawFline_soft(const fline_t *fl, INT32 color)
|
||||||
d += ax;
|
d += ax;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#undef PUTDOT
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -1004,15 +869,15 @@ static inline void AM_drawWalls(void)
|
||||||
|
|
||||||
for (i = 0; i < numlines; i++)
|
for (i = 0; i < numlines; i++)
|
||||||
{
|
{
|
||||||
l.a.x = lines[i].v1->x;
|
l.a.x = lines[i].v1->x >> FRACTOMAPBITS;
|
||||||
l.a.y = lines[i].v1->y;
|
l.a.y = lines[i].v1->y >> FRACTOMAPBITS;
|
||||||
l.b.x = lines[i].v2->x;
|
l.b.x = lines[i].v2->x >> FRACTOMAPBITS;
|
||||||
l.b.y = lines[i].v2->y;
|
l.b.y = lines[i].v2->y >> FRACTOMAPBITS;
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
#define SLOPEPARAMS(slope, end1, end2, normalheight) \
|
#define SLOPEPARAMS(slope, end1, end2, normalheight) \
|
||||||
if (slope) { \
|
if (slope) { \
|
||||||
end1 = P_GetZAt(slope, l.a.x, l.a.y); \
|
end1 = P_GetZAt(slope, lines[i].v1->x, lines[i].v1->y); \
|
||||||
end2 = P_GetZAt(slope, l.b.x, l.b.y); \
|
end2 = P_GetZAt(slope, lines[i].v2->x, lines[i].v2->y); \
|
||||||
} else \
|
} else \
|
||||||
end1 = end2 = normalheight;
|
end1 = end2 = normalheight;
|
||||||
|
|
||||||
|
@ -1025,17 +890,12 @@ static inline void AM_drawWalls(void)
|
||||||
#undef SLOPEPARAMS
|
#undef SLOPEPARAMS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// AM_drawMline(&l, GRAYS + 3); // Old, everything-is-gray automap
|
|
||||||
if (!lines[i].backsector) // 1-sided
|
if (!lines[i].backsector) // 1-sided
|
||||||
{
|
{
|
||||||
if (lines[i].flags & ML_NOCLIMB)
|
if (lines[i].flags & ML_NOCLIMB)
|
||||||
{
|
AM_drawMline(&l, NOCLIMBWALLCOLORS);
|
||||||
AM_drawMline(&l, NOCLIMBWALLCOLORS+lightlev);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
AM_drawMline(&l, WALLCOLORS);
|
||||||
AM_drawMline(&l, WALLCOLORS+lightlev);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
else if ((backf1 == backc1 && backf2 == backc2) // Back is thok barrier
|
else if ((backf1 == backc1 && backf2 == backc2) // Back is thok barrier
|
||||||
|
@ -1052,24 +912,16 @@ static inline void AM_drawWalls(void)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
if (lines[i].flags & ML_NOCLIMB)
|
if (lines[i].flags & ML_NOCLIMB)
|
||||||
{
|
AM_drawMline(&l, NOCLIMBTSWALLCOLORS);
|
||||||
AM_drawMline(&l, NOCLIMBTSWALLCOLORS+lightlev);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
AM_drawMline(&l, TSWALLCOLORS);
|
||||||
AM_drawMline(&l, TSWALLCOLORS+lightlev);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (lines[i].flags & ML_NOCLIMB)
|
if (lines[i].flags & ML_NOCLIMB)
|
||||||
{
|
AM_drawMline(&l, NOCLIMBTHOKWALLCOLORS);
|
||||||
AM_drawMline(&l, NOCLIMBTHOKWALLCOLORS+lightlev);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
AM_drawMline(&l, THOKWALLCOLORS);
|
||||||
AM_drawMline(&l, THOKWALLCOLORS+lightlev);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1081,7 +933,7 @@ static inline void AM_drawWalls(void)
|
||||||
if (lines[i].backsector->floorheight
|
if (lines[i].backsector->floorheight
|
||||||
!= lines[i].frontsector->floorheight) {
|
!= lines[i].frontsector->floorheight) {
|
||||||
#endif
|
#endif
|
||||||
AM_drawMline(&l, NOCLIMBFDWALLCOLORS + lightlev); // floor level change
|
AM_drawMline(&l, NOCLIMBFDWALLCOLORS); // floor level change
|
||||||
}
|
}
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
else if (backc1 != frontc1 || backc2 != frontc2) {
|
else if (backc1 != frontc1 || backc2 != frontc2) {
|
||||||
|
@ -1089,11 +941,10 @@ static inline void AM_drawWalls(void)
|
||||||
else if (lines[i].backsector->ceilingheight
|
else if (lines[i].backsector->ceilingheight
|
||||||
!= lines[i].frontsector->ceilingheight) {
|
!= lines[i].frontsector->ceilingheight) {
|
||||||
#endif
|
#endif
|
||||||
AM_drawMline(&l, NOCLIMBCDWALLCOLORS+lightlev); // ceiling level change
|
AM_drawMline(&l, NOCLIMBCDWALLCOLORS); // ceiling level change
|
||||||
}
|
|
||||||
else {
|
|
||||||
AM_drawMline(&l, NOCLIMBTSWALLCOLORS+lightlev);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
AM_drawMline(&l, NOCLIMBTSWALLCOLORS);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1103,7 +954,7 @@ static inline void AM_drawWalls(void)
|
||||||
if (lines[i].backsector->floorheight
|
if (lines[i].backsector->floorheight
|
||||||
!= lines[i].frontsector->floorheight) {
|
!= lines[i].frontsector->floorheight) {
|
||||||
#endif
|
#endif
|
||||||
AM_drawMline(&l, FDWALLCOLORS + lightlev); // floor level change
|
AM_drawMline(&l, FDWALLCOLORS); // floor level change
|
||||||
}
|
}
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
else if (backc1 != frontc1 || backc2 != frontc2) {
|
else if (backc1 != frontc1 || backc2 != frontc2) {
|
||||||
|
@ -1111,11 +962,10 @@ static inline void AM_drawWalls(void)
|
||||||
else if (lines[i].backsector->ceilingheight
|
else if (lines[i].backsector->ceilingheight
|
||||||
!= lines[i].frontsector->ceilingheight) {
|
!= lines[i].frontsector->ceilingheight) {
|
||||||
#endif
|
#endif
|
||||||
AM_drawMline(&l, CDWALLCOLORS+lightlev); // ceiling level change
|
AM_drawMline(&l, CDWALLCOLORS); // ceiling level change
|
||||||
}
|
|
||||||
else {
|
|
||||||
AM_drawMline(&l, TSWALLCOLORS+lightlev);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
AM_drawMline(&l, TSWALLCOLORS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1176,6 +1026,11 @@ static void AM_drawLineCharacter(const mline_t *lineguy, size_t lineguylines, fi
|
||||||
l.b.x += x;
|
l.b.x += x;
|
||||||
l.b.y += y;
|
l.b.y += y;
|
||||||
|
|
||||||
|
l.a.x >>= FRACTOMAPBITS;
|
||||||
|
l.a.y >>= FRACTOMAPBITS;
|
||||||
|
l.b.x >>= FRACTOMAPBITS;
|
||||||
|
l.b.y >>= FRACTOMAPBITS;
|
||||||
|
|
||||||
AM_drawMline(&l, color);
|
AM_drawMline(&l, color);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1184,83 +1039,51 @@ static inline void AM_drawPlayers(void)
|
||||||
{
|
{
|
||||||
INT32 i;
|
INT32 i;
|
||||||
player_t *p;
|
player_t *p;
|
||||||
INT32 color;
|
INT32 color = GREENS;
|
||||||
|
|
||||||
if (!multiplayer)
|
if (!multiplayer)
|
||||||
{
|
{
|
||||||
AM_drawLineCharacter(player_arrow, NUMPLYRLINES, 0,
|
AM_drawLineCharacter(player_arrow, NUMPLYRLINES, 0, plr->mo->angle, DWHITE, plr->mo->x, plr->mo->y);
|
||||||
plr->mo->angle, DWHITE, plr->mo->x, plr->mo->y);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// multiplayer
|
// multiplayer (how??)
|
||||||
for (i = 0; i < MAXPLAYERS; i++)
|
for (i = 0; i < MAXPLAYERS; i++)
|
||||||
{
|
{
|
||||||
if (!playeringame[i] || players[i].spectator)
|
if (!playeringame[i] || players[i].spectator)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
p = &players[i];
|
p = &players[i];
|
||||||
if (p->skincolor == 0)
|
if (p->skincolor > 0)
|
||||||
color = GREENS;
|
|
||||||
else
|
|
||||||
color = R_GetTranslationColormap(TC_DEFAULT, p->skincolor, GTC_CACHE)[GREENS + 8];
|
color = R_GetTranslationColormap(TC_DEFAULT, p->skincolor, GTC_CACHE)[GREENS + 8];
|
||||||
|
|
||||||
AM_drawLineCharacter(player_arrow, NUMPLYRLINES, 0, p->mo->angle,
|
AM_drawLineCharacter(player_arrow, NUMPLYRLINES, 0, p->mo->angle, color, p->mo->x, p->mo->y);
|
||||||
color, p->mo->x, p->mo->y);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void AM_drawThings(INT32 colors, INT32 colorrange)
|
static inline void AM_drawThings(UINT8 colors)
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
mobj_t *t;
|
mobj_t *t;
|
||||||
|
|
||||||
(void)colorrange;
|
|
||||||
for (i = 0; i < numsectors; i++)
|
for (i = 0; i < numsectors; i++)
|
||||||
{
|
{
|
||||||
t = sectors[i].thinglist;
|
t = sectors[i].thinglist;
|
||||||
while (t)
|
while (t)
|
||||||
{
|
{
|
||||||
AM_drawLineCharacter(thintriangle_guy, NUMTHINTRIANGLEGUYLINES,
|
AM_drawLineCharacter(thintriangle_guy, NUMTHINTRIANGLEGUYLINES, 16<<FRACBITS, t->angle, colors, t->x, t->y);
|
||||||
16<<FRACBITS, t->angle, colors + lightlev, t->x, t->y);
|
|
||||||
t = t->snext;
|
t = t->snext;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void AM_drawMarks(void)
|
|
||||||
{
|
|
||||||
INT32 i, fx, fy, w, h;
|
|
||||||
|
|
||||||
for (i = 0; i < AM_NUMMARKPOINTS; i++)
|
|
||||||
{
|
|
||||||
if (markpoints[i].x != -1 && marknums[i])
|
|
||||||
{
|
|
||||||
// w = SHORT(marknums[i]->width);
|
|
||||||
// h = SHORT(marknums[i]->height);
|
|
||||||
w = 5; // because something's wrong with the wad, i guess
|
|
||||||
h = 6; // because something's wrong with the wad, i guess
|
|
||||||
fx = CXMTOF(markpoints[i].x);
|
|
||||||
fy = CYMTOF(markpoints[i].y);
|
|
||||||
if (fx >= f_x && fx <= f_w - w && fy >= f_y && fy <= f_h - h)
|
|
||||||
V_DrawPatch(fx, fy, FB, marknums[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Draws the crosshair, actually just a dot in software mode.
|
/** Draws the crosshair, actually just a dot in software mode.
|
||||||
*
|
*
|
||||||
* \param color Color for the crosshair.
|
* \param color Color for the crosshair.
|
||||||
*/
|
*/
|
||||||
static inline void AM_drawCrosshair(INT32 color)
|
static inline void AM_drawCrosshair(UINT8 color)
|
||||||
{
|
{
|
||||||
if (rendermode != render_soft)
|
V_DrawFill(f_w/2 + f_x, f_h/2 + f_y, 1, 1, color|V_NOSCALESTART);
|
||||||
return; // BP: should be putpixel here
|
|
||||||
|
|
||||||
if (scr_bpp == 1)
|
|
||||||
fb[(f_w*(f_h + 1))/2] = (UINT8)color; // single point for now
|
|
||||||
else
|
|
||||||
*((INT16 *)(void *)fb + (f_w*(f_h + 1))/2) = (INT16)color;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Draws the automap.
|
/** Draws the automap.
|
||||||
|
@ -1271,13 +1094,10 @@ void AM_Drawer(void)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
AM_clearFB(BACKGROUND);
|
AM_clearFB(BACKGROUND);
|
||||||
if (grid)
|
if (draw_grid) AM_drawGrid(GRIDCOLORS);
|
||||||
AM_drawGrid(GRIDCOLORS);
|
|
||||||
AM_drawWalls();
|
AM_drawWalls();
|
||||||
AM_drawPlayers();
|
AM_drawPlayers();
|
||||||
AM_drawThings(THINGCOLORS, THINGRANGE);
|
AM_drawThings(THINGCOLORS);
|
||||||
|
|
||||||
AM_drawCrosshair(XHAIRCOLORS);
|
AM_drawCrosshair(XHAIRCOLORS);
|
||||||
|
|
||||||
AM_drawMarks();
|
|
||||||
}
|
}
|
||||||
|
|
138
src/command.c
138
src/command.c
|
@ -33,6 +33,7 @@
|
||||||
#include "hu_stuff.h"
|
#include "hu_stuff.h"
|
||||||
#include "p_setup.h"
|
#include "p_setup.h"
|
||||||
#include "lua_script.h"
|
#include "lua_script.h"
|
||||||
|
#include "d_netfil.h" // findfile
|
||||||
|
|
||||||
//========
|
//========
|
||||||
// protos.
|
// protos.
|
||||||
|
@ -50,6 +51,9 @@ static void COM_Wait_f(void);
|
||||||
static void COM_Help_f(void);
|
static void COM_Help_f(void);
|
||||||
static void COM_Toggle_f(void);
|
static void COM_Toggle_f(void);
|
||||||
|
|
||||||
|
static void CV_EnforceExecVersion(void);
|
||||||
|
static boolean CV_FilterVarByVersion(consvar_t *v, const char *valstr);
|
||||||
|
|
||||||
static boolean CV_Command(void);
|
static boolean CV_Command(void);
|
||||||
static consvar_t *CV_FindVar(const char *name);
|
static consvar_t *CV_FindVar(const char *name);
|
||||||
static const char *CV_StringValue(const char *var_name);
|
static const char *CV_StringValue(const char *var_name);
|
||||||
|
@ -68,6 +72,19 @@ CV_PossibleValue_t kartspeed_cons_t[] = {
|
||||||
{0, "Easy"}, {1, "Normal"}, {2, "Hard"},
|
{0, "Easy"}, {1, "Normal"}, {2, "Hard"},
|
||||||
{0, NULL}};
|
{0, NULL}};
|
||||||
|
|
||||||
|
// Filter consvars by EXECVERSION
|
||||||
|
// First implementation is 2 (1.0.2), so earlier configs default at 1 (1.0.0)
|
||||||
|
// Also set CV_HIDEN during runtime, after config is loaded
|
||||||
|
|
||||||
|
static boolean execversion_enabled = false;
|
||||||
|
consvar_t cv_execversion = {"execversion","1",CV_CALL,CV_Unsigned, CV_EnforceExecVersion, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
|
||||||
|
// for default joyaxis detection
|
||||||
|
#if 0
|
||||||
|
static boolean joyaxis_default[4] = {false,false,false,false};
|
||||||
|
static INT32 joyaxis_count[4] = {0,0,0,0};
|
||||||
|
#endif
|
||||||
|
|
||||||
#define COM_BUF_SIZE 8192 // command buffer size
|
#define COM_BUF_SIZE 8192 // command buffer size
|
||||||
#define MAX_ALIAS_RECURSION 100 // max recursion allowed for aliases
|
#define MAX_ALIAS_RECURSION 100 // max recursion allowed for aliases
|
||||||
|
|
||||||
|
@ -635,6 +652,7 @@ static void COM_CEchoDuration_f(void)
|
||||||
static void COM_Exec_f(void)
|
static void COM_Exec_f(void)
|
||||||
{
|
{
|
||||||
UINT8 *buf = NULL;
|
UINT8 *buf = NULL;
|
||||||
|
char filename[256];
|
||||||
|
|
||||||
if (COM_Argc() < 2 || COM_Argc() > 3)
|
if (COM_Argc() < 2 || COM_Argc() > 3)
|
||||||
{
|
{
|
||||||
|
@ -643,13 +661,23 @@ static void COM_Exec_f(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
// load file
|
// load file
|
||||||
|
// Try with Argv passed verbatim first, for back compat
|
||||||
FIL_ReadFile(COM_Argv(1), &buf);
|
FIL_ReadFile(COM_Argv(1), &buf);
|
||||||
|
|
||||||
if (!buf)
|
if (!buf)
|
||||||
{
|
{
|
||||||
if (!COM_CheckParm("-noerror"))
|
// Now try by searching the file path
|
||||||
CONS_Printf(M_GetText("couldn't execute file %s\n"), COM_Argv(1));
|
// filename is modified with the full found path
|
||||||
return;
|
strcpy(filename, COM_Argv(1));
|
||||||
|
if (findfile(filename, NULL, true) != FS_NOTFOUND)
|
||||||
|
FIL_ReadFile(filename, &buf);
|
||||||
|
|
||||||
|
if (!buf)
|
||||||
|
{
|
||||||
|
if (!COM_CheckParm("-noerror"))
|
||||||
|
CONS_Printf(M_GetText("couldn't execute file %s\n"), COM_Argv(1));
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!COM_CheckParm("-silent"))
|
if (!COM_CheckParm("-silent"))
|
||||||
|
@ -1129,7 +1157,7 @@ static void Setvalue(consvar_t *var, const char *valstr, boolean stealth)
|
||||||
if (var->flags & CV_FLOAT)
|
if (var->flags & CV_FLOAT)
|
||||||
{
|
{
|
||||||
double d = atof(valstr);
|
double d = atof(valstr);
|
||||||
if (!d && valstr[0] != '0')
|
if (fpclassify(d) == FP_ZERO && valstr[0] != '0')
|
||||||
v = INT32_MIN;
|
v = INT32_MIN;
|
||||||
else
|
else
|
||||||
v = (INT32)(d * FRACUNIT);
|
v = (INT32)(d * FRACUNIT);
|
||||||
|
@ -1698,6 +1726,108 @@ void CV_AddValue(consvar_t *var, INT32 increment)
|
||||||
var->changed = 1; // user has changed it now
|
var->changed = 1; // user has changed it now
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CV_InitFilterVar(void)
|
||||||
|
{
|
||||||
|
#if 0
|
||||||
|
UINT8 i;
|
||||||
|
for (i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
joyaxis_default[i] = true;
|
||||||
|
joyaxis_count[i] = 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
void CV_ToggleExecVersion(boolean enable)
|
||||||
|
{
|
||||||
|
execversion_enabled = enable;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void CV_EnforceExecVersion(void)
|
||||||
|
{
|
||||||
|
if (!execversion_enabled)
|
||||||
|
CV_StealthSetValue(&cv_execversion, EXECVERSION);
|
||||||
|
}
|
||||||
|
|
||||||
|
static boolean CV_FilterJoyAxisVars(consvar_t *v, const char *valstr)
|
||||||
|
{
|
||||||
|
#if 1
|
||||||
|
// We don't have changed axis defaults yet
|
||||||
|
(void)v;
|
||||||
|
(void)valstr;
|
||||||
|
#else
|
||||||
|
UINT8 i;
|
||||||
|
|
||||||
|
// If ALL axis settings are previous defaults, set them to the new defaults
|
||||||
|
// EXECVERSION < 26 (2.1.21)
|
||||||
|
|
||||||
|
for (i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
if (joyaxis_default[i])
|
||||||
|
{
|
||||||
|
if (!stricmp(v->name, "joyaxis_fire"))
|
||||||
|
{
|
||||||
|
if (joyaxis_count[i] > 7) return false;
|
||||||
|
else if (joyaxis_count[i] == 7) return true;
|
||||||
|
|
||||||
|
if (!stricmp(valstr, "None")) joyaxis_count[i]++;
|
||||||
|
else joyaxis_default[i] = false;
|
||||||
|
}
|
||||||
|
// reset all axis settings to defaults
|
||||||
|
if (joyaxis_count[i] == 7)
|
||||||
|
{
|
||||||
|
switch (i)
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_turnaxis.name, cv_turnaxis.defaultvalue));
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_moveaxis.name, cv_moveaxis.defaultvalue));
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_brakeaxis.name, cv_brakeaxis.defaultvalue));
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_aimaxis.name, cv_aimaxis.defaultvalue));
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_lookaxis.name, cv_lookaxis.defaultvalue));
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_fireaxis.name, cv_fireaxis.defaultvalue));
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_driftaxis.name, cv_driftaxis.defaultvalue));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
joyaxis_count[i]++;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// we haven't reached our counts yet, or we're not default
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
static boolean CV_FilterVarByVersion(consvar_t *v, const char *valstr)
|
||||||
|
{
|
||||||
|
// True means allow the CV change, False means block it
|
||||||
|
|
||||||
|
// We only care about CV_SAVE because this filters the user's config files
|
||||||
|
// We do this same check in CV_Command
|
||||||
|
if (!(v->flags & CV_SAVE))
|
||||||
|
return true;
|
||||||
|
|
||||||
|
if (GETMAJOREXECVERSION(cv_execversion.value) < 2) // 2 = 1.0.2
|
||||||
|
{
|
||||||
|
#if 0
|
||||||
|
// We don't have changed saved cvars yet
|
||||||
|
if (!stricmp(v->name, "alwaysmlook")
|
||||||
|
|| !stricmp(v->name, "alwaysmlook2")
|
||||||
|
|| !stricmp(v->name, "mousemove")
|
||||||
|
|| !stricmp(v->name, "mousemove2"))
|
||||||
|
return false;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// axis defaults were changed to be friendly to 360 controllers
|
||||||
|
// if ALL axis settings are defaults, then change them to new values
|
||||||
|
if (!CV_FilterJoyAxisVars(v, valstr))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/** Displays or changes a variable from the console.
|
/** Displays or changes a variable from the console.
|
||||||
* Since the user is presumed to have been directly responsible
|
* Since the user is presumed to have been directly responsible
|
||||||
* for this change, the variable is marked as changed this game.
|
* for this change, the variable is marked as changed this game.
|
||||||
|
|
|
@ -129,6 +129,11 @@ extern CV_PossibleValue_t CV_Natural[];
|
||||||
// SRB2kart
|
// SRB2kart
|
||||||
extern CV_PossibleValue_t kartspeed_cons_t[];
|
extern CV_PossibleValue_t kartspeed_cons_t[];
|
||||||
|
|
||||||
|
extern consvar_t cv_execversion;
|
||||||
|
|
||||||
|
void CV_InitFilterVar(void);
|
||||||
|
void CV_ToggleExecVersion(boolean enable);
|
||||||
|
|
||||||
// register a variable for use at the console
|
// register a variable for use at the console
|
||||||
void CV_RegisterVar(consvar_t *variable);
|
void CV_RegisterVar(consvar_t *variable);
|
||||||
|
|
||||||
|
|
|
@ -34,14 +34,16 @@
|
||||||
#else
|
#else
|
||||||
|
|
||||||
/* Manually defined asset hashes for non-CMake builds
|
/* Manually defined asset hashes for non-CMake builds
|
||||||
* YYYY MM DD
|
* Last updated 2015 / 05 / 03 - SRB2 v2.1.15 - srb2.srb
|
||||||
* Last updated 2018 / 11 / 14
|
* Last updated 2018 / 12 / 23 - SRB2 v2.1.22 - patch.dta
|
||||||
|
* Last updated 2018 / 11 / 16 - Kart v1.0.0 - Main assets
|
||||||
|
* Last updated 2018 / 12 / 13 - Kart v1.0.2 - patch.kart
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Base SRB2 hashes
|
// Base SRB2 hashes
|
||||||
#define ASSET_HASH_SRB2_SRB "c1b9577687f8a795104aef4600720ea7"
|
#define ASSET_HASH_SRB2_SRB "c1b9577687f8a795104aef4600720ea7"
|
||||||
#ifdef USE_PATCH_DTA
|
#ifdef USE_PATCH_DTA
|
||||||
#define ASSET_HASH_PATCH_DTA "dbbf8bc6121618ee3be2d5b14650429b"
|
#define ASSET_HASH_PATCH_DTA "b04fd9624bfd94dc96dcf4f400f7deb4"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// SRB2Kart-specific hashes
|
// SRB2Kart-specific hashes
|
||||||
|
|
|
@ -59,10 +59,7 @@ static boolean consoleready; // console prompt is ready
|
||||||
INT32 con_destlines; // vid lines used by console at final position
|
INT32 con_destlines; // vid lines used by console at final position
|
||||||
static INT32 con_curlines; // vid lines currently used by console
|
static INT32 con_curlines; // vid lines currently used by console
|
||||||
|
|
||||||
INT32 con_clipviewtop; // clip value for planes & sprites, so that the
|
INT32 con_clipviewtop; // (useless)
|
||||||
// part of the view covered by the console is not
|
|
||||||
// drawn when not needed, this must be -1 when
|
|
||||||
// console is off
|
|
||||||
|
|
||||||
static INT32 con_hudlines; // number of console heads up message lines
|
static INT32 con_hudlines; // number of console heads up message lines
|
||||||
static INT32 con_hudtime[MAXHUDLINES]; // remaining time of display for hud msg lines
|
static INT32 con_hudtime[MAXHUDLINES]; // remaining time of display for hud msg lines
|
||||||
|
@ -285,6 +282,7 @@ void CON_SetupBackColormap(void)
|
||||||
case 18: palindex = 255; shift = 7; break; // Lavender
|
case 18: palindex = 255; shift = 7; break; // Lavender
|
||||||
// Default green
|
// Default green
|
||||||
default: palindex = 175; break;
|
default: palindex = 175; break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// setup background colormap
|
// setup background colormap
|
||||||
|
@ -892,7 +890,7 @@ boolean CON_Responder(event_t *ev)
|
||||||
|
|
||||||
// ...why shouldn't it eat the key? if it doesn't, it just means you
|
// ...why shouldn't it eat the key? if it doesn't, it just means you
|
||||||
// can control Sonic from the console, which is silly
|
// can control Sonic from the console, which is silly
|
||||||
return true; //return false;
|
return true;//return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// command completion forward (tab) and backward (shift-tab)
|
// command completion forward (tab) and backward (shift-tab)
|
||||||
|
@ -1110,7 +1108,7 @@ boolean CON_Responder(event_t *ev)
|
||||||
|
|
||||||
// enter a char into the command prompt
|
// enter a char into the command prompt
|
||||||
if (key < 32 || key > 127)
|
if (key < 32 || key > 127)
|
||||||
return true; // even if key can't be printed, eat it anyway
|
return true;
|
||||||
|
|
||||||
// add key to cmd line here
|
// add key to cmd line here
|
||||||
if (key >= 'A' && key <= 'Z' && !(shiftdown ^ capslock)) //this is only really necessary for dedicated servers
|
if (key >= 'A' && key <= 'Z' && !(shiftdown ^ capslock)) //this is only really necessary for dedicated servers
|
||||||
|
@ -1495,7 +1493,7 @@ static void CON_DrawHudlines(void)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (chat_on && OLDCHAT)
|
if (chat_on && OLDCHAT)
|
||||||
y = charheight; // leave place for chat input in the first row of text
|
y = charheight; // leave place for chat input in the first row of text (only do it if consolechat is on.)
|
||||||
else
|
else
|
||||||
y = 0;
|
y = 0;
|
||||||
|
|
||||||
|
|
|
@ -1491,6 +1491,7 @@ static boolean SV_SendServerConfig(INT32 node)
|
||||||
|
|
||||||
if (!playeringame[i])
|
if (!playeringame[i])
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
netbuffer->u.servercfg.playerskins[i] = (UINT8)players[i].skin;
|
netbuffer->u.servercfg.playerskins[i] = (UINT8)players[i].skin;
|
||||||
netbuffer->u.servercfg.playercolor[i] = (UINT8)players[i].skincolor;
|
netbuffer->u.servercfg.playercolor[i] = (UINT8)players[i].skincolor;
|
||||||
}
|
}
|
||||||
|
@ -2838,7 +2839,9 @@ static void Got_KickCmd(UINT8 **p, INT32 playernum)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Is playernum authorized to make this kick?
|
// Is playernum authorized to make this kick?
|
||||||
if (playernum != serverplayer && !IsPlayerAdmin(playernum))
|
if (playernum != serverplayer && !IsPlayerAdmin(playernum)
|
||||||
|
/*&& !(playerpernode[playernode[playernum]] == 2
|
||||||
|
//&& nodetoplayer2[playernode[playernum]] == pnum)*/)
|
||||||
{
|
{
|
||||||
// We received a kick command from someone who isn't the
|
// We received a kick command from someone who isn't the
|
||||||
// server or admin, and who isn't in splitscreen removing
|
// server or admin, and who isn't in splitscreen removing
|
||||||
|
@ -3310,14 +3313,14 @@ static void Got_AddPlayer(UINT8 **p, INT32 playernum)
|
||||||
|
|
||||||
if (netgame)
|
if (netgame)
|
||||||
{
|
{
|
||||||
if (server && netgame && cv_showjoinaddress.value)
|
if (server && cv_showjoinaddress.value)
|
||||||
{
|
{
|
||||||
const char *address;
|
const char *address;
|
||||||
if (I_GetNodeAddress && (address = I_GetNodeAddress(node)) != NULL)
|
if (I_GetNodeAddress && (address = I_GetNodeAddress(node)) != NULL)
|
||||||
HU_AddChatText(va("\x82*Player %d has joined the game (node %d) (%s)", newplayernum+1, node, address), false); // merge join notification + IP to avoid clogging console/chat.
|
HU_AddChatText(va("\x82*Player %d has joined the game (node %d) (%s)", newplayernum+1, node, address), false); // merge join notification + IP to avoid clogging console/chat.
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
HU_AddChatText(va("\x82*Player %d has joined the game (node %d)", newplayernum+1, node), false);
|
HU_AddChatText(va("\x82*Player %d has joined the game (node %d)", newplayernum+1, node), false); // if you don't wanna see the join address.
|
||||||
}
|
}
|
||||||
|
|
||||||
if (server && multiplayer && motd[0] != '\0')
|
if (server && multiplayer && motd[0] != '\0')
|
||||||
|
|
|
@ -478,9 +478,9 @@ extern doomdata_t *netbuffer;
|
||||||
extern consvar_t cv_showjoinaddress;
|
extern consvar_t cv_showjoinaddress;
|
||||||
extern consvar_t cv_playbackspeed;
|
extern consvar_t cv_playbackspeed;
|
||||||
|
|
||||||
#define BASEPACKETSIZE ((size_t)&(((doomdata_t *)0)->u))
|
#define BASEPACKETSIZE offsetof(doomdata_t, u)
|
||||||
#define FILETXHEADER ((size_t)((filetx_pak *)0)->data)
|
#define FILETXHEADER offsetof(filetx_pak, data)
|
||||||
#define BASESERVERTICSSIZE ((size_t)&(((doomdata_t *)0)->u.serverpak.cmds[0]))
|
#define BASESERVERTICSSIZE offsetof(doomdata_t, u.serverpak.cmds[0])
|
||||||
|
|
||||||
#define KICK_MSG_GO_AWAY 1
|
#define KICK_MSG_GO_AWAY 1
|
||||||
#define KICK_MSG_CON_FAIL 2
|
#define KICK_MSG_CON_FAIL 2
|
||||||
|
|
72
src/d_main.c
72
src/d_main.c
|
@ -188,7 +188,7 @@ void D_PostEvent_end(void) {};
|
||||||
UINT8 shiftdown = 0; // 0x1 left, 0x2 right
|
UINT8 shiftdown = 0; // 0x1 left, 0x2 right
|
||||||
UINT8 ctrldown = 0; // 0x1 left, 0x2 right
|
UINT8 ctrldown = 0; // 0x1 left, 0x2 right
|
||||||
UINT8 altdown = 0; // 0x1 left, 0x2 right
|
UINT8 altdown = 0; // 0x1 left, 0x2 right
|
||||||
boolean capslock = 0; // jeez i wonder what this does.
|
boolean capslock = 0; // gee i wonder what this does.
|
||||||
//
|
//
|
||||||
// D_ModifierKeyResponder
|
// D_ModifierKeyResponder
|
||||||
// Sets global shift/ctrl/alt variables, never actually eats events
|
// Sets global shift/ctrl/alt variables, never actually eats events
|
||||||
|
@ -321,7 +321,7 @@ static void D_Display(void)
|
||||||
F_RunWipe(wipedefs[wipedefindex], gamestate != GS_TIMEATTACK);
|
F_RunWipe(wipedefs[wipedefindex], gamestate != GS_TIMEATTACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (wipegamestate == GS_LEVEL && rendermode != render_none)
|
if (gamestate != GS_LEVEL && rendermode != render_none)
|
||||||
{
|
{
|
||||||
V_SetPaletteLump("PLAYPAL"); // Reset the palette
|
V_SetPaletteLump("PLAYPAL"); // Reset the palette
|
||||||
R_ReInitColormaps(0, LUMPERROR);
|
R_ReInitColormaps(0, LUMPERROR);
|
||||||
|
@ -338,8 +338,7 @@ static void D_Display(void)
|
||||||
if (!gametic)
|
if (!gametic)
|
||||||
break;
|
break;
|
||||||
HU_Erase();
|
HU_Erase();
|
||||||
if (automapactive)
|
AM_Drawer();
|
||||||
AM_Drawer();
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GS_INTERMISSION:
|
case GS_INTERMISSION:
|
||||||
|
@ -412,12 +411,10 @@ static void D_Display(void)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// clean up border stuff
|
|
||||||
// see if the border needs to be initially drawn
|
|
||||||
if (gamestate == GS_LEVEL)
|
if (gamestate == GS_LEVEL)
|
||||||
{
|
{
|
||||||
// draw the view directly
|
// draw the view directly
|
||||||
if (!automapactive && !dedicated && cv_renderview.value)
|
if (cv_renderview.value && !automapactive)
|
||||||
{
|
{
|
||||||
if (players[displayplayer].mo || players[displayplayer].playerstate == PST_DEAD)
|
if (players[displayplayer].mo || players[displayplayer].playerstate == PST_DEAD)
|
||||||
{
|
{
|
||||||
|
@ -536,7 +533,6 @@ static void D_Display(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
ST_Drawer();
|
ST_Drawer();
|
||||||
|
|
||||||
HU_Drawer();
|
HU_Drawer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -926,20 +922,20 @@ static void IdentifyVersion(void)
|
||||||
// if you change the ordering of this or add/remove a file, be sure to update the md5
|
// if you change the ordering of this or add/remove a file, be sure to update the md5
|
||||||
// checking in D_SRB2Main
|
// checking in D_SRB2Main
|
||||||
|
|
||||||
// Add the maps
|
|
||||||
//D_AddFile(va(pandf,srb2waddir,"zones.dta"));
|
|
||||||
|
|
||||||
// Add the players
|
|
||||||
//D_AddFile(va(pandf,srb2waddir, "player.dta"));
|
|
||||||
|
|
||||||
// Add the weapons
|
|
||||||
//D_AddFile(va(pandf,srb2waddir,"rings.dta"));
|
|
||||||
|
|
||||||
#ifdef USE_PATCH_DTA
|
#ifdef USE_PATCH_DTA
|
||||||
// Add our crappy patches to fix our bugs
|
// Add our crappy patches to fix our bugs
|
||||||
D_AddFile(va(pandf,srb2waddir,"patch.dta"));
|
D_AddFile(va(pandf,srb2waddir,"patch.dta"));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
D_AddFile(va(pandf,srb2waddir,"gfx.kart"));
|
||||||
|
D_AddFile(va(pandf,srb2waddir,"textures.kart"));
|
||||||
|
D_AddFile(va(pandf,srb2waddir,"chars.kart"));
|
||||||
|
D_AddFile(va(pandf,srb2waddir,"maps.kart"));
|
||||||
|
#ifdef USE_PATCH_KART
|
||||||
|
D_AddFile(va(pandf,srb2waddir,"patch.kart"));
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined (HAVE_SDL) || defined (HAVE_MIXER)
|
||||||
#define MUSICTEST(str) \
|
#define MUSICTEST(str) \
|
||||||
{\
|
{\
|
||||||
const char *musicpath = va(pandf,srb2waddir,str);\
|
const char *musicpath = va(pandf,srb2waddir,str);\
|
||||||
|
@ -949,21 +945,10 @@ static void IdentifyVersion(void)
|
||||||
else if (ms == 0) \
|
else if (ms == 0) \
|
||||||
I_Error("File "str" has been modified with non-music/sound lumps"); \
|
I_Error("File "str" has been modified with non-music/sound lumps"); \
|
||||||
}
|
}
|
||||||
|
|
||||||
// SRB2kart - Add graphics (temp) // The command for md5 checks is "W_VerifyFileMD5" - looks for ASSET_HASH_SRB2_SRB in config.h.in
|
|
||||||
D_AddFile(va(pandf,srb2waddir,"gfx.kart"));
|
|
||||||
D_AddFile(va(pandf,srb2waddir,"textures.kart"));
|
|
||||||
D_AddFile(va(pandf,srb2waddir,"chars.kart"));
|
|
||||||
D_AddFile(va(pandf,srb2waddir,"maps.kart"));
|
|
||||||
//D_AddFile(va(pandf,srb2waddir,"sounds.kart"));
|
|
||||||
MUSICTEST("sounds.kart")
|
MUSICTEST("sounds.kart")
|
||||||
|
|
||||||
#ifdef USE_PATCH_KART
|
|
||||||
D_AddFile(va(pandf,srb2waddir,"patch.kart"));
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//MUSICTEST("music.dta")
|
|
||||||
MUSICTEST("music.kart")
|
MUSICTEST("music.kart")
|
||||||
|
#undef MUSICTEST
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ======================================================================== */
|
/* ======================================================================== */
|
||||||
|
@ -1239,25 +1224,20 @@ void D_SRB2Main(void)
|
||||||
|
|
||||||
mainwads = 0;
|
mainwads = 0;
|
||||||
|
|
||||||
#ifndef DEVELOP // md5s last updated 12/14/14
|
#ifndef DEVELOP
|
||||||
|
|
||||||
// Check MD5s of autoloaded files
|
// Check MD5s of autoloaded files
|
||||||
W_VerifyFileMD5(mainwads, ASSET_HASH_SRB2_SRB); // srb2.srb/srb2.wad
|
// Note: Do not add any files that ignore MD5!
|
||||||
|
W_VerifyFileMD5(mainwads, ASSET_HASH_SRB2_SRB); // srb2.srb/srb2.wad
|
||||||
#ifdef USE_PATCH_DTA
|
#ifdef USE_PATCH_DTA
|
||||||
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_PATCH_DTA); // patch.dta
|
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_PATCH_DTA); // patch.dta
|
||||||
#endif
|
#endif
|
||||||
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_GFX_KART); // gfx.kart
|
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_GFX_KART); // gfx.kart
|
||||||
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_TEXTURES_KART); // textures.kart
|
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_TEXTURES_KART); // textures.kart
|
||||||
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_CHARS_KART); // chars.kart
|
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_CHARS_KART); // chars.kart
|
||||||
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_MAPS_KART); // maps.kart
|
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_MAPS_KART); // maps.kart
|
||||||
mainwads++; //W_VerifyFileMD5(5, ASSET_HASH_SOUNDS_KART); -- sounds.kart - doesn't trigger modifiedgame, doesn't need an MD5...?
|
|
||||||
#ifdef USE_PATCH_KART
|
#ifdef USE_PATCH_KART
|
||||||
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_PATCH_KART); // patch.kart
|
mainwads++; W_VerifyFileMD5(mainwads, ASSET_HASH_PATCH_KART); // patch.kart
|
||||||
#endif
|
#endif
|
||||||
//mainwads++; // music.dta
|
|
||||||
mainwads++; // music.kart
|
|
||||||
// don't check music.dta or kart because people like to modify it, and it doesn't matter if they do
|
|
||||||
// ...except it does if they slip maps in there, and that's what W_VerifyNMUSlumps is for.
|
|
||||||
#else
|
#else
|
||||||
#ifdef USE_PATCH_DTA
|
#ifdef USE_PATCH_DTA
|
||||||
mainwads++; // patch.dta
|
mainwads++; // patch.dta
|
||||||
|
@ -1266,12 +1246,10 @@ void D_SRB2Main(void)
|
||||||
mainwads++; // textures.kart
|
mainwads++; // textures.kart
|
||||||
mainwads++; // chars.kart
|
mainwads++; // chars.kart
|
||||||
mainwads++; // maps.kart
|
mainwads++; // maps.kart
|
||||||
mainwads++; // sounds.kart
|
|
||||||
#ifdef USE_PATCH_KART
|
#ifdef USE_PATCH_KART
|
||||||
mainwads++; // patch.kart
|
mainwads++; // patch.kart
|
||||||
#endif
|
#endif
|
||||||
//mainwads++; // music.dta
|
|
||||||
mainwads++; // music.kart
|
|
||||||
#endif //ifndef DEVELOP
|
#endif //ifndef DEVELOP
|
||||||
|
|
||||||
mainwadstally = packetsizetally;
|
mainwadstally = packetsizetally;
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
#include "d_clisrv.h"
|
#include "d_clisrv.h"
|
||||||
#include "z_zone.h"
|
#include "z_zone.h"
|
||||||
#include "i_tcp.h"
|
#include "i_tcp.h"
|
||||||
|
#include "d_main.h" // srb2home
|
||||||
|
|
||||||
//
|
//
|
||||||
// NETWORKING
|
// NETWORKING
|
||||||
|
@ -1386,12 +1387,12 @@ boolean D_CheckNetGame(void)
|
||||||
{
|
{
|
||||||
k++;
|
k++;
|
||||||
sprintf(filename, "debug%d.txt", k);
|
sprintf(filename, "debug%d.txt", k);
|
||||||
debugfile = fopen(filename, "w");
|
debugfile = fopen(va("%s" PATHSEP "%s", srb2home, filename), "w");
|
||||||
}
|
}
|
||||||
if (debugfile)
|
if (debugfile)
|
||||||
CONS_Printf(M_GetText("debug output to: %s\n"), filename);
|
CONS_Printf(M_GetText("debug output to: %s\n"), va("%s" PATHSEP "%s", srb2home, filename));
|
||||||
else
|
else
|
||||||
CONS_Alert(CONS_WARNING, M_GetText("cannot debug output to file %s!\n"), filename);
|
CONS_Alert(CONS_WARNING, M_GetText("cannot debug output to file %s!\n"), va("%s" PATHSEP "%s", srb2home, filename));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
#define MAXNETNODES 16
|
#define MAXNETNODES 16
|
||||||
#define BROADCASTADDR MAXNETNODES
|
#define BROADCASTADDR MAXNETNODES
|
||||||
#define MAXSPLITSCREENPLAYERS 4 // Max number of players on a single computer
|
#define MAXSPLITSCREENPLAYERS 4 // Max number of players on a single computer
|
||||||
|
#define NETSPLITSCREEN // Kart's splitscreen netgame feature
|
||||||
|
|
||||||
#define STATLENGTH (TICRATE*2)
|
#define STATLENGTH (TICRATE*2)
|
||||||
|
|
||||||
|
|
|
@ -272,6 +272,7 @@ INT32 cv_debug;
|
||||||
consvar_t cv_usemouse = {"use_mouse", "Off", CV_SAVE|CV_CALL,usemouse_cons_t, I_StartupMouse, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_usemouse = {"use_mouse", "Off", CV_SAVE|CV_CALL,usemouse_cons_t, I_StartupMouse, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_usemouse2 = {"use_mouse2", "Off", CV_SAVE|CV_CALL,usemouse_cons_t, I_StartupMouse2, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_usemouse2 = {"use_mouse2", "Off", CV_SAVE|CV_CALL,usemouse_cons_t, I_StartupMouse2, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
|
||||||
|
#if defined (DC) || defined (_XBOX) || defined (WMINPUT) || defined (_WII) || defined(HAVE_SDL) || defined(_WINDOWS) //joystick 1 and 2
|
||||||
consvar_t cv_usejoystick = {"use_joystick", "1", CV_SAVE|CV_CALL, usejoystick_cons_t,
|
consvar_t cv_usejoystick = {"use_joystick", "1", CV_SAVE|CV_CALL, usejoystick_cons_t,
|
||||||
I_InitJoystick, 0, NULL, NULL, 0, 0, NULL};
|
I_InitJoystick, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_usejoystick2 = {"use_joystick2", "2", CV_SAVE|CV_CALL, usejoystick_cons_t,
|
consvar_t cv_usejoystick2 = {"use_joystick2", "2", CV_SAVE|CV_CALL, usejoystick_cons_t,
|
||||||
|
@ -280,6 +281,7 @@ consvar_t cv_usejoystick3 = {"use_joystick3", "3", CV_SAVE|CV_CALL, usejoystick_
|
||||||
I_InitJoystick3, 0, NULL, NULL, 0, 0, NULL};
|
I_InitJoystick3, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_usejoystick4 = {"use_joystick4", "4", CV_SAVE|CV_CALL, usejoystick_cons_t,
|
consvar_t cv_usejoystick4 = {"use_joystick4", "4", CV_SAVE|CV_CALL, usejoystick_cons_t,
|
||||||
I_InitJoystick4, 0, NULL, NULL, 0, 0, NULL};
|
I_InitJoystick4, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
#endif
|
||||||
|
|
||||||
#if (defined (LJOYSTICK) || defined (HAVE_SDL))
|
#if (defined (LJOYSTICK) || defined (HAVE_SDL))
|
||||||
#ifdef LJOYSTICK
|
#ifdef LJOYSTICK
|
||||||
|
@ -781,6 +783,7 @@ void D_RegisterClientCommands(void)
|
||||||
CV_RegisterVar(&cv_usegamma);
|
CV_RegisterVar(&cv_usegamma);
|
||||||
|
|
||||||
// m_menu.c
|
// m_menu.c
|
||||||
|
//CV_RegisterVar(&cv_compactscoreboard);
|
||||||
CV_RegisterVar(&cv_chatheight);
|
CV_RegisterVar(&cv_chatheight);
|
||||||
CV_RegisterVar(&cv_chatwidth);
|
CV_RegisterVar(&cv_chatwidth);
|
||||||
CV_RegisterVar(&cv_chattime);
|
CV_RegisterVar(&cv_chattime);
|
||||||
|
@ -835,6 +838,14 @@ void D_RegisterClientCommands(void)
|
||||||
CV_RegisterVar(&cv_addons_search_type);
|
CV_RegisterVar(&cv_addons_search_type);
|
||||||
CV_RegisterVar(&cv_addons_search_case);
|
CV_RegisterVar(&cv_addons_search_case);
|
||||||
|
|
||||||
|
// filesrch.c
|
||||||
|
CV_RegisterVar(&cv_addons_option);
|
||||||
|
CV_RegisterVar(&cv_addons_folder);
|
||||||
|
CV_RegisterVar(&cv_addons_md5);
|
||||||
|
CV_RegisterVar(&cv_addons_showall);
|
||||||
|
CV_RegisterVar(&cv_addons_search_type);
|
||||||
|
CV_RegisterVar(&cv_addons_search_case);
|
||||||
|
|
||||||
// WARNING: the order is important when initialising mouse2
|
// WARNING: the order is important when initialising mouse2
|
||||||
// we need the mouse2port
|
// we need the mouse2port
|
||||||
CV_RegisterVar(&cv_mouse2port);
|
CV_RegisterVar(&cv_mouse2port);
|
||||||
|
@ -3972,6 +3983,10 @@ static void Got_RequestAddfilecmd(UINT8 **cp, INT32 playernum)
|
||||||
boolean kick = false;
|
boolean kick = false;
|
||||||
boolean toomany = false;
|
boolean toomany = false;
|
||||||
INT32 i,j;
|
INT32 i,j;
|
||||||
|
serverinfo_pak *dummycheck = NULL;
|
||||||
|
|
||||||
|
// Shut the compiler up.
|
||||||
|
(void)dummycheck;
|
||||||
|
|
||||||
READSTRINGN(*cp, filename, 240);
|
READSTRINGN(*cp, filename, 240);
|
||||||
READMEM(*cp, md5sum, 16);
|
READMEM(*cp, md5sum, 16);
|
||||||
|
@ -4155,7 +4170,7 @@ static void Command_Version_f(void)
|
||||||
#elif defined(__linux__)
|
#elif defined(__linux__)
|
||||||
CONS_Printf("Linux ");
|
CONS_Printf("Linux ");
|
||||||
#elif defined(MACOSX)
|
#elif defined(MACOSX)
|
||||||
CONS_Printf("macOS" );
|
CONS_Printf("macOS ");
|
||||||
#elif defined(UNIXCOMMON)
|
#elif defined(UNIXCOMMON)
|
||||||
CONS_Printf("Unix (Common) ");
|
CONS_Printf("Unix (Common) ");
|
||||||
#else
|
#else
|
||||||
|
@ -4180,6 +4195,11 @@ static void Command_Version_f(void)
|
||||||
CONS_Printf("\x85" "DEBUG " "\x80");
|
CONS_Printf("\x85" "DEBUG " "\x80");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// DEVELOP build
|
||||||
|
#ifdef DEVELOP
|
||||||
|
CONS_Printf("\x87" "DEVELOP " "\x80");
|
||||||
|
#endif
|
||||||
|
|
||||||
CONS_Printf("\n");
|
CONS_Printf("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1261,6 +1261,18 @@ static void readlevelheader(MYFILE *f, INT32 num)
|
||||||
deh_warning("Level header %d: invalid bonus type number %d", num, i);
|
deh_warning("Level header %d: invalid bonus type number %d", num, i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if (fastcmp(word, "SAVEOVERRIDE"))
|
||||||
|
{
|
||||||
|
if (fastcmp(word2, "DEFAULT")) i = SAVE_DEFAULT;
|
||||||
|
else if (fastcmp(word2, "ALWAYS")) i = SAVE_ALWAYS;
|
||||||
|
else if (fastcmp(word2, "NEVER")) i = SAVE_NEVER;
|
||||||
|
|
||||||
|
if (i >= SAVE_NEVER && i <= SAVE_ALWAYS)
|
||||||
|
mapheaderinfo[num-1]->saveoverride = (SINT8)i;
|
||||||
|
else
|
||||||
|
deh_warning("Level header %d: invalid save override number %d", num, i);
|
||||||
|
}
|
||||||
|
|
||||||
else if (fastcmp(word, "LEVELFLAGS"))
|
else if (fastcmp(word, "LEVELFLAGS"))
|
||||||
mapheaderinfo[num-1]->levelflags = get_number(word2);
|
mapheaderinfo[num-1]->levelflags = get_number(word2);
|
||||||
else if (fastcmp(word, "MENUFLAGS"))
|
else if (fastcmp(word, "MENUFLAGS"))
|
||||||
|
@ -2993,7 +3005,7 @@ static void readmaincfg(MYFILE *f)
|
||||||
else if (fastcmp(word, "USENIGHTSSS"))
|
else if (fastcmp(word, "USENIGHTSSS"))
|
||||||
{
|
{
|
||||||
DEH_WriteUndoline(word, va("%d", useNightsSS), UNDO_NONE);
|
DEH_WriteUndoline(word, va("%d", useNightsSS), UNDO_NONE);
|
||||||
useNightsSS = (UINT8)(value || word2[0] == 'T' || word2[0] == 'Y');
|
useNightsSS = (value || word2[0] == 'T' || word2[0] == 'Y');
|
||||||
}
|
}
|
||||||
else if (fastcmp(word, "REDTEAM"))
|
else if (fastcmp(word, "REDTEAM"))
|
||||||
{
|
{
|
||||||
|
@ -3067,7 +3079,7 @@ static void readmaincfg(MYFILE *f)
|
||||||
else if (fastcmp(word, "LOOPTITLE"))
|
else if (fastcmp(word, "LOOPTITLE"))
|
||||||
{
|
{
|
||||||
DEH_WriteUndoline(word, va("%d", looptitle), UNDO_NONE);
|
DEH_WriteUndoline(word, va("%d", looptitle), UNDO_NONE);
|
||||||
looptitle = (boolean)(value || word2[0] == 'T' || word2[0] == 'Y');
|
looptitle = (value || word2[0] == 'T' || word2[0] == 'Y');
|
||||||
}
|
}
|
||||||
else if (fastcmp(word, "TITLESCROLLSPEED"))
|
else if (fastcmp(word, "TITLESCROLLSPEED"))
|
||||||
{
|
{
|
||||||
|
@ -3085,7 +3097,7 @@ static void readmaincfg(MYFILE *f)
|
||||||
else if (fastcmp(word, "DISABLESPEEDADJUST"))
|
else if (fastcmp(word, "DISABLESPEEDADJUST"))
|
||||||
{
|
{
|
||||||
DEH_WriteUndoline(word, va("%d", disableSpeedAdjust), UNDO_NONE);
|
DEH_WriteUndoline(word, va("%d", disableSpeedAdjust), UNDO_NONE);
|
||||||
disableSpeedAdjust = (UINT8)get_number(word2);
|
disableSpeedAdjust = (value || word2[0] == 'T' || word2[0] == 'Y');
|
||||||
}
|
}
|
||||||
else if (fastcmp(word, "NUMDEMOS"))
|
else if (fastcmp(word, "NUMDEMOS"))
|
||||||
{
|
{
|
||||||
|
@ -3134,7 +3146,7 @@ static void readmaincfg(MYFILE *f)
|
||||||
strncpy(timeattackfolder, gamedatafilename, filenamelen);
|
strncpy(timeattackfolder, gamedatafilename, filenamelen);
|
||||||
timeattackfolder[min(filenamelen, sizeof (timeattackfolder) - 1)] = '\0';
|
timeattackfolder[min(filenamelen, sizeof (timeattackfolder) - 1)] = '\0';
|
||||||
|
|
||||||
strncpy(savegamename, timeattackfolder, strlen(timeattackfolder));
|
strcpy(savegamename, timeattackfolder);
|
||||||
strlcat(savegamename, "%u.ssg", sizeof(savegamename));
|
strlcat(savegamename, "%u.ssg", sizeof(savegamename));
|
||||||
// can't use sprintf since there is %u in savegamename
|
// can't use sprintf since there is %u in savegamename
|
||||||
strcatbf(savegamename, srb2home, PATHSEP);
|
strcatbf(savegamename, srb2home, PATHSEP);
|
||||||
|
@ -8441,6 +8453,11 @@ struct {
|
||||||
{"LF2_NIGHTSATTACK",LF2_NIGHTSATTACK},
|
{"LF2_NIGHTSATTACK",LF2_NIGHTSATTACK},
|
||||||
{"LF2_NOVISITNEEDED",LF2_NOVISITNEEDED},
|
{"LF2_NOVISITNEEDED",LF2_NOVISITNEEDED},
|
||||||
|
|
||||||
|
// Save override
|
||||||
|
{"SAVE_NEVER",SAVE_NEVER},
|
||||||
|
{"SAVE_DEFAULT",SAVE_DEFAULT},
|
||||||
|
{"SAVE_ALWAYS",SAVE_ALWAYS},
|
||||||
|
|
||||||
// NiGHTS grades
|
// NiGHTS grades
|
||||||
{"GRADE_F",GRADE_F},
|
{"GRADE_F",GRADE_F},
|
||||||
{"GRADE_E",GRADE_E},
|
{"GRADE_E",GRADE_E},
|
||||||
|
@ -9752,8 +9769,9 @@ static inline int lib_getenum(lua_State *L)
|
||||||
return 0;
|
return 0;
|
||||||
LUA_PushUserdata(L, &players[serverplayer], META_PLAYER);
|
LUA_PushUserdata(L, &players[serverplayer], META_PLAYER);
|
||||||
return 1;
|
return 1;
|
||||||
/*} else if (fastcmp(word,"admin")) { // Replaced with IsPlayerAdmin
|
/*} else if (fastcmp(word,"admin")) {
|
||||||
if (!playeringame[adminplayer] || IsPlayerAdmin(serverplayer))
|
LUA_Deprecated(L, "admin", "IsPlayerAdmin(player)");
|
||||||
|
if (!playeringame[adminplayers[0]] || IsPlayerAdmin(serverplayer))
|
||||||
return 0;
|
return 0;
|
||||||
LUA_PushUserdata(L, &players[adminplayers[0]], META_PLAYER);
|
LUA_PushUserdata(L, &players[adminplayers[0]], META_PLAYER);
|
||||||
return 1;*/
|
return 1;*/
|
||||||
|
@ -9793,8 +9811,10 @@ static inline int lib_getenum(lua_State *L)
|
||||||
} else if (fastcmp(word,"spbplace")) {
|
} else if (fastcmp(word,"spbplace")) {
|
||||||
lua_pushinteger(L, spbplace);
|
lua_pushinteger(L, spbplace);
|
||||||
return 1;
|
return 1;
|
||||||
|
} else if (fastcmp(word,"mapobjectscale")) {
|
||||||
|
lua_pushinteger(L, mapobjectscale);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -164,6 +164,9 @@ extern FILE *logstream;
|
||||||
// Kart has it's own, as well.
|
// Kart has it's own, as well.
|
||||||
#define USE_PATCH_KART
|
#define USE_PATCH_KART
|
||||||
|
|
||||||
|
// Use .kart extension addons
|
||||||
|
#define USE_KART
|
||||||
|
|
||||||
// Modification options
|
// Modification options
|
||||||
// If you want to take advantage of the Master Server's ability to force clients to update
|
// If you want to take advantage of the Master Server's ability to force clients to update
|
||||||
// to the latest version, fill these out. Otherwise, just comment out UPDATE_ALERT and leave
|
// to the latest version, fill these out. Otherwise, just comment out UPDATE_ALERT and leave
|
||||||
|
@ -220,6 +223,21 @@ extern FILE *logstream;
|
||||||
// Note that we use this to help keep internal testing in check; this is why v2.1.0 is not version "1".
|
// Note that we use this to help keep internal testing in check; this is why v2.1.0 is not version "1".
|
||||||
#define MODVERSION 2
|
#define MODVERSION 2
|
||||||
|
|
||||||
|
// Filter consvars by version
|
||||||
|
// To version config.cfg, MAJOREXECVERSION is set equal to MODVERSION automatically.
|
||||||
|
// Increment MINOREXECVERSION whenever a config change is needed that does not correspond
|
||||||
|
// to an increment in MODVERSION. This might never happen in practice.
|
||||||
|
// If MODVERSION increases, set MINOREXECVERSION to 0.
|
||||||
|
#define MAJOREXECVERSION MODVERSION
|
||||||
|
#define MINOREXECVERSION 0
|
||||||
|
// (It would have been nice to use VERSION and SUBVERSION but those are zero'd out for DEVELOP builds)
|
||||||
|
|
||||||
|
// Macros
|
||||||
|
#define GETMAJOREXECVERSION(v) (v & 0xFFFF)
|
||||||
|
#define GETMINOREXECVERSION(v) (v >> 16)
|
||||||
|
#define GETEXECVERSION(major,minor) (major + (minor << 16))
|
||||||
|
#define EXECVERSION GETEXECVERSION(MAJOREXECVERSION, MINOREXECVERSION)
|
||||||
|
|
||||||
// =========================================================================
|
// =========================================================================
|
||||||
|
|
||||||
// The maximum number of players, multiplayer/networking.
|
// The maximum number of players, multiplayer/networking.
|
||||||
|
@ -453,6 +471,15 @@ INT32 I_GetKey(void);
|
||||||
#define max(x, y) (((x) > (y)) ? (x) : (y))
|
#define max(x, y) (((x) > (y)) ? (x) : (y))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Floating point comparison epsilons from float.h
|
||||||
|
#ifndef FLT_EPSILON
|
||||||
|
#define FLT_EPSILON 1.1920928955078125e-7f
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef DBL_EPSILON
|
||||||
|
#define DBL_EPSILON 2.2204460492503131e-16
|
||||||
|
#endif
|
||||||
|
|
||||||
// An assert-type mechanism.
|
// An assert-type mechanism.
|
||||||
#ifdef PARANOIA
|
#ifdef PARANOIA
|
||||||
#define I_Assert(e) ((e) ? (void)0 : I_Error("assert failed: %s, file %s, line %d", #e, __FILE__, __LINE__))
|
#define I_Assert(e) ((e) ? (void)0 : I_Error("assert failed: %s, file %s, line %d", #e, __FILE__, __LINE__))
|
||||||
|
|
|
@ -247,6 +247,7 @@ typedef struct
|
||||||
SINT8 unlockrequired; ///< Is an unlockable required to play this level? -1 if no.
|
SINT8 unlockrequired; ///< Is an unlockable required to play this level? -1 if no.
|
||||||
UINT8 levelselect; ///< Is this map available in the level select? If so, which map list is it available in?
|
UINT8 levelselect; ///< Is this map available in the level select? If so, which map list is it available in?
|
||||||
SINT8 bonustype; ///< What type of bonus does this level have? (-1 for null.)
|
SINT8 bonustype; ///< What type of bonus does this level have? (-1 for null.)
|
||||||
|
SINT8 saveoverride; ///< Set how the game is allowed to save (1 for always, -1 for never, 0 is 2.1 default)
|
||||||
|
|
||||||
UINT8 levelflags; ///< LF_flags: merged eight booleans into one UINT8 for space, see below
|
UINT8 levelflags; ///< LF_flags: merged eight booleans into one UINT8 for space, see below
|
||||||
UINT8 menuflags; ///< LF2_flags: options that affect record attack / nights mode menus
|
UINT8 menuflags; ///< LF2_flags: options that affect record attack / nights mode menus
|
||||||
|
@ -279,6 +280,11 @@ typedef struct
|
||||||
#define LF2_NIGHTSATTACK 8 ///< Show this map in NiGHTS mode menu
|
#define LF2_NIGHTSATTACK 8 ///< Show this map in NiGHTS mode menu
|
||||||
#define LF2_NOVISITNEEDED 16 ///< Available in time attack/nights mode without visiting the level
|
#define LF2_NOVISITNEEDED 16 ///< Available in time attack/nights mode without visiting the level
|
||||||
|
|
||||||
|
// Save override
|
||||||
|
#define SAVE_NEVER -1
|
||||||
|
#define SAVE_DEFAULT 0
|
||||||
|
#define SAVE_ALWAYS 1
|
||||||
|
|
||||||
extern mapheader_t* mapheaderinfo[NUMMAPS];
|
extern mapheader_t* mapheaderinfo[NUMMAPS];
|
||||||
|
|
||||||
enum TypeOfLevel
|
enum TypeOfLevel
|
||||||
|
@ -438,6 +444,7 @@ extern mobj_t *hunt1, *hunt2, *hunt3; // Emerald hunt locations
|
||||||
extern UINT32 countdown, countdown2;
|
extern UINT32 countdown, countdown2;
|
||||||
|
|
||||||
extern fixed_t gravity;
|
extern fixed_t gravity;
|
||||||
|
extern fixed_t mapobjectscale;
|
||||||
|
|
||||||
//for CTF balancing
|
//for CTF balancing
|
||||||
extern INT16 autobalance;
|
extern INT16 autobalance;
|
||||||
|
|
|
@ -175,7 +175,7 @@ static void F_SkyScroll(INT32 scrollspeed)
|
||||||
{
|
{
|
||||||
V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 120);
|
V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 120);
|
||||||
|
|
||||||
x = -animtimer;
|
x = -((INT32)animtimer);
|
||||||
y = 0;
|
y = 0;
|
||||||
while (x < w)
|
while (x < w)
|
||||||
{
|
{
|
||||||
|
|
|
@ -552,7 +552,11 @@ filestatus_t filesearch(char *filename, const char *startpath, const UINT8 *want
|
||||||
|
|
||||||
char exttable[NUM_EXT_TABLE][7] = { // maximum extension length (currently 4) plus 3 (null terminator, stop, and length including previous two)
|
char exttable[NUM_EXT_TABLE][7] = { // maximum extension length (currently 4) plus 3 (null terminator, stop, and length including previous two)
|
||||||
"\5.txt", "\5.cfg", // exec
|
"\5.txt", "\5.cfg", // exec
|
||||||
"\5.wad", "\6.kart", "\5.pk3", "\5.soc", "\5.lua"}; // addfile
|
"\5.wad",
|
||||||
|
#ifdef USE_KART
|
||||||
|
"\6.kart",
|
||||||
|
#endif
|
||||||
|
"\5.pk3", "\5.soc", "\5.lua"}; // addfile
|
||||||
|
|
||||||
char filenamebuf[MAX_WADFILES][MAX_WADPATH];
|
char filenamebuf[MAX_WADFILES][MAX_WADPATH];
|
||||||
|
|
||||||
|
|
|
@ -55,7 +55,9 @@ typedef enum
|
||||||
EXT_CFG,
|
EXT_CFG,
|
||||||
EXT_LOADSTART,
|
EXT_LOADSTART,
|
||||||
EXT_WAD = EXT_LOADSTART,
|
EXT_WAD = EXT_LOADSTART,
|
||||||
|
#ifdef USE_KART
|
||||||
EXT_KART,
|
EXT_KART,
|
||||||
|
#endif
|
||||||
EXT_PK3,
|
EXT_PK3,
|
||||||
EXT_SOC,
|
EXT_SOC,
|
||||||
EXT_LUA, // allowed even if not HAVE_BLUA so that we can yell on load attempt
|
EXT_LUA, // allowed even if not HAVE_BLUA so that we can yell on load attempt
|
||||||
|
|
32
src/g_game.c
32
src/g_game.c
|
@ -237,6 +237,7 @@ mobj_t *hunt3;
|
||||||
UINT32 countdown, countdown2; // for racing
|
UINT32 countdown, countdown2; // for racing
|
||||||
|
|
||||||
fixed_t gravity;
|
fixed_t gravity;
|
||||||
|
fixed_t mapobjectscale;
|
||||||
|
|
||||||
INT16 autobalance; //for CTF team balance
|
INT16 autobalance; //for CTF team balance
|
||||||
INT16 teamscramble; //for CTF team scramble
|
INT16 teamscramble; //for CTF team scramble
|
||||||
|
@ -405,6 +406,10 @@ static CV_PossibleValue_t joyaxis_cons_t[] = {{0, "None"},
|
||||||
|
|
||||||
// don't mind me putting these here, I was lazy to figure out where else I could put those without blowing up the compiler.
|
// don't mind me putting these here, I was lazy to figure out where else I could put those without blowing up the compiler.
|
||||||
|
|
||||||
|
// it automatically becomes compact with 20+ players, but if you like it, I guess you can turn that on!
|
||||||
|
// SRB2Kart: irrelevant for us.
|
||||||
|
//consvar_t cv_compactscoreboard= {"compactscoreboard", "Off", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
|
||||||
// chat timer thingy
|
// chat timer thingy
|
||||||
static CV_PossibleValue_t chattime_cons_t[] = {{5, "MIN"}, {999, "MAX"}, {0, NULL}};
|
static CV_PossibleValue_t chattime_cons_t[] = {{5, "MIN"}, {999, "MAX"}, {0, NULL}};
|
||||||
consvar_t cv_chattime = {"chattime", "8", CV_SAVE, chattime_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_chattime = {"chattime", "8", CV_SAVE, chattime_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
@ -1111,7 +1116,6 @@ static INT32 Joy4Axis(axis_input_e axissel)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (axisval < 0) //odd -axises
|
if (axisval < 0) //odd -axises
|
||||||
{
|
{
|
||||||
axisval = -axisval;
|
axisval = -axisval;
|
||||||
|
@ -1659,10 +1663,12 @@ static void Analog_OnChange(void)
|
||||||
|
|
||||||
// cameras are not initialized at this point
|
// cameras are not initialized at this point
|
||||||
|
|
||||||
/*if (!cv_chasecam.value && cv_analog.value) {
|
/*
|
||||||
|
if (!cv_chasecam.value && cv_analog.value) {
|
||||||
CV_SetValue(&cv_analog, 0);
|
CV_SetValue(&cv_analog, 0);
|
||||||
return;
|
return;
|
||||||
}*/
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
SendWeaponPref();
|
SendWeaponPref();
|
||||||
}
|
}
|
||||||
|
@ -1674,10 +1680,12 @@ static void Analog2_OnChange(void)
|
||||||
|
|
||||||
// cameras are not initialized at this point
|
// cameras are not initialized at this point
|
||||||
|
|
||||||
/*if (!cv_chasecam2.value && cv_analog2.value) {
|
/*
|
||||||
|
if (!cv_chasecam2.value && cv_analog2.value) {
|
||||||
CV_SetValue(&cv_analog2, 0);
|
CV_SetValue(&cv_analog2, 0);
|
||||||
return;
|
return;
|
||||||
}*/
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
SendWeaponPref2();
|
SendWeaponPref2();
|
||||||
}
|
}
|
||||||
|
@ -1689,10 +1697,12 @@ static void Analog3_OnChange(void)
|
||||||
|
|
||||||
// cameras are not initialized at this point
|
// cameras are not initialized at this point
|
||||||
|
|
||||||
/*if (!cv_chasecam3.value && cv_analog3.value) {
|
/*
|
||||||
|
if (!cv_chasecam3.value && cv_analog3.value) {
|
||||||
CV_SetValue(&cv_analog3, 0);
|
CV_SetValue(&cv_analog3, 0);
|
||||||
return;
|
return;
|
||||||
}*/
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
SendWeaponPref3();
|
SendWeaponPref3();
|
||||||
}
|
}
|
||||||
|
@ -1704,10 +1714,12 @@ static void Analog4_OnChange(void)
|
||||||
|
|
||||||
// cameras are not initialized at this point
|
// cameras are not initialized at this point
|
||||||
|
|
||||||
/*if (!cv_chasecam4.value && cv_analog4.value) {
|
/*
|
||||||
|
if (!cv_chasecam4.value && cv_analog4.value) {
|
||||||
CV_SetValue(&cv_analog4, 0);
|
CV_SetValue(&cv_analog4, 0);
|
||||||
return;
|
return;
|
||||||
}*/
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
SendWeaponPref4();
|
SendWeaponPref4();
|
||||||
}
|
}
|
||||||
|
@ -4369,7 +4381,7 @@ void G_InitNew(UINT8 pencoremode, const char *mapname, boolean resetplayer, bool
|
||||||
unlocktriggers = 0;
|
unlocktriggers = 0;
|
||||||
|
|
||||||
// clear itemfinder, just in case
|
// clear itemfinder, just in case
|
||||||
if (!dedicated) // except in dedicated servers, where it is not registered and can actually I_Error debug builds
|
if (!dedicated) // except in dedicated servers, where it is not registered and can actually I_Error debug builds
|
||||||
CV_StealthSetValue(&cv_itemfinder, 0);
|
CV_StealthSetValue(&cv_itemfinder, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,7 +54,7 @@ extern tic_t timeinmap; // Ticker for time spent in level (used for levelcard di
|
||||||
extern INT16 rw_maximums[NUM_WEAPONS];
|
extern INT16 rw_maximums[NUM_WEAPONS];
|
||||||
|
|
||||||
// used in game menu
|
// used in game menu
|
||||||
extern consvar_t cv_chatwidth, cv_chatnotifications, cv_chatheight, cv_chattime, cv_consolechat, cv_chatspamprotection, cv_chatbacktint;
|
extern consvar_t cv_chatwidth, cv_chatnotifications, cv_chatheight, cv_chattime, cv_consolechat, cv_chatbacktint, cv_chatspamprotection/*, cv_compactscoreboard*/;
|
||||||
//extern consvar_t cv_crosshair, cv_crosshair2, cv_crosshair3, cv_crosshair4;
|
//extern consvar_t cv_crosshair, cv_crosshair2, cv_crosshair3, cv_crosshair4;
|
||||||
extern consvar_t cv_invertmouse/*, cv_alwaysfreelook, cv_chasefreelook, cv_mousemove*/;
|
extern consvar_t cv_invertmouse/*, cv_alwaysfreelook, cv_chasefreelook, cv_mousemove*/;
|
||||||
extern consvar_t cv_invertmouse2/*, cv_alwaysfreelook2, cv_chasefreelook2, cv_mousemove2*/;
|
extern consvar_t cv_invertmouse2/*, cv_alwaysfreelook2, cv_chasefreelook2, cv_mousemove2*/;
|
||||||
|
|
239
src/g_input.c
239
src/g_input.c
|
@ -103,6 +103,8 @@ void G_MapEventsToControls(event_t *ev)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ev_mouse: // buttons are virtual keys
|
case ev_mouse: // buttons are virtual keys
|
||||||
|
if (menuactive || CON_Ready() || chat_on)
|
||||||
|
break;
|
||||||
mousex = (INT32)(ev->data2*((cv_mousesens.value*cv_mousesens.value)/110.0f + 0.1f));
|
mousex = (INT32)(ev->data2*((cv_mousesens.value*cv_mousesens.value)/110.0f + 0.1f));
|
||||||
mousey = (INT32)(ev->data3*((cv_mousesens.value*cv_mousesens.value)/110.0f + 0.1f));
|
mousey = (INT32)(ev->data3*((cv_mousesens.value*cv_mousesens.value)/110.0f + 0.1f));
|
||||||
mlooky = (INT32)(ev->data3*((cv_mouseysens.value*cv_mousesens.value)/110.0f + 0.1f));
|
mlooky = (INT32)(ev->data3*((cv_mouseysens.value*cv_mousesens.value)/110.0f + 0.1f));
|
||||||
|
@ -110,7 +112,7 @@ void G_MapEventsToControls(event_t *ev)
|
||||||
|
|
||||||
case ev_joystick: // buttons are virtual keys
|
case ev_joystick: // buttons are virtual keys
|
||||||
i = ev->data1;
|
i = ev->data1;
|
||||||
if (i >= JOYAXISSET)
|
if (i >= JOYAXISSET || menuactive || CON_Ready() || chat_on)
|
||||||
break;
|
break;
|
||||||
if (ev->data2 != INT32_MAX) joyxmove[i] = ev->data2;
|
if (ev->data2 != INT32_MAX) joyxmove[i] = ev->data2;
|
||||||
if (ev->data3 != INT32_MAX) joyymove[i] = ev->data3;
|
if (ev->data3 != INT32_MAX) joyymove[i] = ev->data3;
|
||||||
|
@ -118,7 +120,7 @@ void G_MapEventsToControls(event_t *ev)
|
||||||
|
|
||||||
case ev_joystick2: // buttons are virtual keys
|
case ev_joystick2: // buttons are virtual keys
|
||||||
i = ev->data1;
|
i = ev->data1;
|
||||||
if (i >= JOYAXISSET)
|
if (i >= JOYAXISSET || menuactive || CON_Ready() || chat_on)
|
||||||
break;
|
break;
|
||||||
if (ev->data2 != INT32_MAX) joy2xmove[i] = ev->data2;
|
if (ev->data2 != INT32_MAX) joy2xmove[i] = ev->data2;
|
||||||
if (ev->data3 != INT32_MAX) joy2ymove[i] = ev->data3;
|
if (ev->data3 != INT32_MAX) joy2ymove[i] = ev->data3;
|
||||||
|
@ -141,6 +143,8 @@ void G_MapEventsToControls(event_t *ev)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ev_mouse2: // buttons are virtual keys
|
case ev_mouse2: // buttons are virtual keys
|
||||||
|
if (menuactive || CON_Ready() || chat_on)
|
||||||
|
break;
|
||||||
mouse2x = (INT32)(ev->data2*((cv_mousesens2.value*cv_mousesens2.value)/110.0f + 0.1f));
|
mouse2x = (INT32)(ev->data2*((cv_mousesens2.value*cv_mousesens2.value)/110.0f + 0.1f));
|
||||||
mouse2y = (INT32)(ev->data3*((cv_mousesens2.value*cv_mousesens2.value)/110.0f + 0.1f));
|
mouse2y = (INT32)(ev->data3*((cv_mousesens2.value*cv_mousesens2.value)/110.0f + 0.1f));
|
||||||
mlook2y = (INT32)(ev->data3*((cv_mouseysens2.value*cv_mousesens2.value)/110.0f + 0.1f));
|
mlook2y = (INT32)(ev->data3*((cv_mouseysens2.value*cv_mousesens2.value)/110.0f + 0.1f));
|
||||||
|
@ -1228,6 +1232,16 @@ void G_ClearControlKeys(INT32 (*setupcontrols)[2], INT32 control)
|
||||||
setupcontrols[control][1] = KEY_NULL;
|
setupcontrols[control][1] = KEY_NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void G_ClearAllControlKeys(void)
|
||||||
|
{
|
||||||
|
INT32 i;
|
||||||
|
for (i = 0; i < num_gamecontrols; i++)
|
||||||
|
{
|
||||||
|
G_ClearControlKeys(gamecontrol, i);
|
||||||
|
G_ClearControlKeys(gamecontrolbis, i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Returns the name of a key (or virtual key for mouse and joy)
|
// Returns the name of a key (or virtual key for mouse and joy)
|
||||||
// the input value being an keynum
|
// the input value being an keynum
|
||||||
|
@ -1400,8 +1414,9 @@ void G_SaveKeySetting(FILE *f)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void G_CheckDoubleUsage(INT32 keynum)
|
INT32 G_CheckDoubleUsage(INT32 keynum, boolean modify)
|
||||||
{
|
{
|
||||||
|
INT32 result = gc_null;
|
||||||
if (cv_controlperkey.value == 1)
|
if (cv_controlperkey.value == 1)
|
||||||
{
|
{
|
||||||
INT32 i, j;
|
INT32 i, j;
|
||||||
|
@ -1409,24 +1424,171 @@ void G_CheckDoubleUsage(INT32 keynum)
|
||||||
{
|
{
|
||||||
for (j = 0; j < 2; j++)
|
for (j = 0; j < 2; j++)
|
||||||
{
|
{
|
||||||
if (gamecontrol[i][j] == keynum)
|
if (gamecontrol[i][j] == keynum) {
|
||||||
gamecontrol[i][j] = KEY_NULL;
|
result = i;
|
||||||
if (gamecontrolbis[i][j] == keynum)
|
if (modify) gamecontrol[i][j] = KEY_NULL;
|
||||||
gamecontrolbis[i][j] = KEY_NULL;
|
}
|
||||||
if (gamecontrol3[i][j] == keynum)
|
if (gamecontrolbis[i][j] == keynum) {
|
||||||
gamecontrol3[i][j] = KEY_NULL;
|
result = i;
|
||||||
if (gamecontrol4[i][j] == keynum)
|
if (modify) gamecontrolbis[i][j] = KEY_NULL;
|
||||||
gamecontrol4[i][j] = KEY_NULL;
|
}
|
||||||
|
if (gamecontrol3[i][j] == keynum) {
|
||||||
|
result = i;
|
||||||
|
if (modify) gamecontrol3[i][j] = KEY_NULL;
|
||||||
|
}
|
||||||
|
if (gamecontrol4[i][j] == keynum) {
|
||||||
|
result = i;
|
||||||
|
if (modify) gamecontrol4[i][j] = KEY_NULL;
|
||||||
|
}
|
||||||
|
if (result && !modify)
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void setcontrol(INT32 (*gc)[2], INT32 na)
|
static INT32 G_FilterKeyByVersion(INT32 numctrl, INT32 keyidx, INT32 player, INT32 *keynum1, INT32 *keynum2, boolean *nestedoverride)
|
||||||
|
{
|
||||||
|
// Special case: ignore KEY_PAUSE because it's hardcoded
|
||||||
|
if (keyidx == 0 && *keynum1 == KEY_PAUSE)
|
||||||
|
{
|
||||||
|
if (*keynum2 != KEY_PAUSE)
|
||||||
|
{
|
||||||
|
*keynum1 = *keynum2; // shift down keynum2 and continue
|
||||||
|
*keynum2 = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return -1; // skip setting control
|
||||||
|
}
|
||||||
|
else if (keyidx == 1 && *keynum2 == KEY_PAUSE)
|
||||||
|
return -1; // skip setting control
|
||||||
|
|
||||||
|
#if 1
|
||||||
|
// We don't have changed control defaults yet
|
||||||
|
(void)numctrl;
|
||||||
|
(void)player;
|
||||||
|
(void)nestedoverride;
|
||||||
|
#else
|
||||||
|
#if !defined (DC) && !defined (_PSP) && !defined (GP2X) && !defined (_NDS) && !defined(WMINPUT) && !defined(_WII)
|
||||||
|
if (GETMAJOREXECVERSION(cv_execversion.value) < 27 && ( // v2.1.22
|
||||||
|
numctrl == gc_weaponnext || numctrl == gc_weaponprev || numctrl == gc_tossflag ||
|
||||||
|
numctrl == gc_use || numctrl == gc_camreset || numctrl == gc_jump ||
|
||||||
|
numctrl == gc_pause || numctrl == gc_systemmenu || numctrl == gc_camtoggle ||
|
||||||
|
numctrl == gc_screenshot || numctrl == gc_talkkey || numctrl == gc_scores ||
|
||||||
|
numctrl == gc_centerview
|
||||||
|
))
|
||||||
|
{
|
||||||
|
INT32 keynum = 0, existingctrl = 0;
|
||||||
|
INT32 defaultkey;
|
||||||
|
boolean defaultoverride = false;
|
||||||
|
|
||||||
|
// get the default gamecontrol
|
||||||
|
if (player == 0 && numctrl == gc_systemmenu)
|
||||||
|
defaultkey = gamecontrol[numctrl][0];
|
||||||
|
else
|
||||||
|
defaultkey = (player == 1 ? gamecontrolbis[numctrl][0] : gamecontrol[numctrl][1]);
|
||||||
|
|
||||||
|
// Assign joypad button defaults if there is an open slot.
|
||||||
|
// At this point, gamecontrol/bis should have the default controls
|
||||||
|
// (unless LOADCONFIG is being run)
|
||||||
|
//
|
||||||
|
// If the player runs SETCONTROL in-game, this block should not be reached
|
||||||
|
// because EXECVERSION is locked onto the latest version.
|
||||||
|
if (keyidx == 0 && !*keynum1)
|
||||||
|
{
|
||||||
|
if (*keynum2) // push keynum2 down; this is an edge case
|
||||||
|
{
|
||||||
|
*keynum1 = *keynum2;
|
||||||
|
*keynum2 = 0;
|
||||||
|
keynum = *keynum1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
keynum = defaultkey;
|
||||||
|
defaultoverride = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (keyidx == 1 && (!*keynum2 || (!*keynum1 && *keynum2))) // last one is the same edge case as above
|
||||||
|
{
|
||||||
|
keynum = defaultkey;
|
||||||
|
defaultoverride = true;
|
||||||
|
}
|
||||||
|
else // default to the specified keynum
|
||||||
|
keynum = (keyidx == 1 ? *keynum2 : *keynum1);
|
||||||
|
|
||||||
|
// Did our last call override keynum2?
|
||||||
|
if (*nestedoverride)
|
||||||
|
{
|
||||||
|
defaultoverride = true;
|
||||||
|
*nestedoverride = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fill keynum2 with the default control
|
||||||
|
if (keyidx == 0 && !*keynum2)
|
||||||
|
{
|
||||||
|
*keynum2 = defaultkey;
|
||||||
|
// Tell the next call that this is an override
|
||||||
|
*nestedoverride = true;
|
||||||
|
|
||||||
|
// if keynum2 already matches keynum1, we probably recursed
|
||||||
|
// so unset it
|
||||||
|
if (*keynum1 == *keynum2)
|
||||||
|
{
|
||||||
|
*keynum2 = 0;
|
||||||
|
*nestedoverride = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if the key is being used somewhere else before passing it
|
||||||
|
// pass it through if it's the same numctrl. This is an edge case -- when using
|
||||||
|
// LOADCONFIG, gamecontrol is not reset with default.
|
||||||
|
//
|
||||||
|
// Also, only check if we're actually overriding, to preserve behavior where
|
||||||
|
// config'd keys overwrite default keys.
|
||||||
|
if (defaultoverride)
|
||||||
|
existingctrl = G_CheckDoubleUsage(keynum, false);
|
||||||
|
|
||||||
|
if (keynum && (!existingctrl || existingctrl == numctrl))
|
||||||
|
return keynum;
|
||||||
|
else if (keyidx == 0 && *keynum2)
|
||||||
|
{
|
||||||
|
// try it again and push down keynum2
|
||||||
|
*keynum1 = *keynum2;
|
||||||
|
*keynum2 = 0;
|
||||||
|
return G_FilterKeyByVersion(numctrl, keyidx, player, keynum1, keynum2, nestedoverride);
|
||||||
|
// recursion *should* be safe because we only assign keynum2 to a joy default
|
||||||
|
// and then clear it if we find that keynum1 already has the joy default.
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// All's good, so pass the keynum as-is
|
||||||
|
if (keyidx == 1)
|
||||||
|
return *keynum2;
|
||||||
|
else //if (keyidx == 0)
|
||||||
|
return *keynum1;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void setcontrol(INT32 (*gc)[2])
|
||||||
{
|
{
|
||||||
INT32 numctrl;
|
INT32 numctrl;
|
||||||
const char *namectrl;
|
const char *namectrl;
|
||||||
INT32 keynum;
|
INT32 keynum, keynum1, keynum2;
|
||||||
|
INT32 player;
|
||||||
|
boolean nestedoverride = false;
|
||||||
|
|
||||||
|
if ((void*)gc == (void*)&gamecontrol4)
|
||||||
|
player = 3;
|
||||||
|
else if ((void*)gc == (void*)&gamecontrol3)
|
||||||
|
player = 2;
|
||||||
|
else if ((void*)gc == (void*)&gamecontrolbis)
|
||||||
|
player = 1;
|
||||||
|
else
|
||||||
|
player = 0;
|
||||||
|
|
||||||
namectrl = COM_Argv(1);
|
namectrl = COM_Argv(1);
|
||||||
for (numctrl = 0; numctrl < num_gamecontrols && stricmp(namectrl, gamecontrolname[numctrl]);
|
for (numctrl = 0; numctrl < num_gamecontrols && stricmp(namectrl, gamecontrolname[numctrl]);
|
||||||
|
@ -1437,31 +1599,38 @@ static void setcontrol(INT32 (*gc)[2], INT32 na)
|
||||||
CONS_Printf(M_GetText("Control '%s' unknown\n"), namectrl);
|
CONS_Printf(M_GetText("Control '%s' unknown\n"), namectrl);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
keynum = G_KeyStringtoNum(COM_Argv(2));
|
keynum1 = G_KeyStringtoNum(COM_Argv(2));
|
||||||
|
keynum2 = G_KeyStringtoNum(COM_Argv(3));
|
||||||
|
keynum = G_FilterKeyByVersion(numctrl, 0, player, &keynum1, &keynum2, &nestedoverride);
|
||||||
|
|
||||||
if (keynum == KEY_PAUSE) // fail silently; pause is hardcoded
|
if (keynum >= 0)
|
||||||
{
|
{
|
||||||
if (na == 4)
|
(void)G_CheckDoubleUsage(keynum, true);
|
||||||
|
|
||||||
|
// if keynum was rejected, try it again with keynum2
|
||||||
|
if (!keynum && keynum2)
|
||||||
{
|
{
|
||||||
na--;
|
keynum1 = keynum2; // push down keynum2
|
||||||
keynum = G_KeyStringtoNum(COM_Argv(3));
|
keynum2 = 0;
|
||||||
if (keynum == KEY_PAUSE)
|
keynum = G_FilterKeyByVersion(numctrl, 0, player, &keynum1, &keynum2, &nestedoverride);
|
||||||
return;
|
if (keynum >= 0)
|
||||||
|
(void)G_CheckDoubleUsage(keynum, true);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
G_CheckDoubleUsage(keynum);
|
if (keynum >= 0)
|
||||||
gc[numctrl][0] = keynum;
|
gc[numctrl][0] = keynum;
|
||||||
|
|
||||||
if (na == 4)
|
if (keynum2)
|
||||||
{
|
{
|
||||||
keynum = G_KeyStringtoNum(COM_Argv(3));
|
keynum = G_FilterKeyByVersion(numctrl, 1, player, &keynum1, &keynum2, &nestedoverride);
|
||||||
if (keynum != KEY_PAUSE)
|
if (keynum >= 0)
|
||||||
gc[numctrl][1] = keynum;
|
{
|
||||||
else
|
if (keynum != gc[numctrl][0])
|
||||||
gc[numctrl][1] = 0;
|
gc[numctrl][1] = keynum;
|
||||||
|
else
|
||||||
|
gc[numctrl][1] = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gc[numctrl][1] = 0;
|
gc[numctrl][1] = 0;
|
||||||
|
@ -1479,7 +1648,7 @@ void Command_Setcontrol_f(void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
setcontrol(gamecontrol, na);
|
setcontrol(gamecontrol);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Command_Setcontrol2_f(void)
|
void Command_Setcontrol2_f(void)
|
||||||
|
@ -1494,7 +1663,7 @@ void Command_Setcontrol2_f(void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
setcontrol(gamecontrolbis, na);
|
setcontrol(gamecontrolbis);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Command_Setcontrol3_f(void)
|
void Command_Setcontrol3_f(void)
|
||||||
|
@ -1509,7 +1678,7 @@ void Command_Setcontrol3_f(void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
setcontrol(gamecontrol3, na);
|
setcontrol(gamecontrol3);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Command_Setcontrol4_f(void)
|
void Command_Setcontrol4_f(void)
|
||||||
|
@ -1524,5 +1693,5 @@ void Command_Setcontrol4_f(void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
setcontrol(gamecontrol4, na);
|
setcontrol(gamecontrol4);
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,12 +161,13 @@ INT32 G_KeyStringtoNum(const char *keystr);
|
||||||
|
|
||||||
// detach any keys associated to the given game control
|
// detach any keys associated to the given game control
|
||||||
void G_ClearControlKeys(INT32 (*setupcontrols)[2], INT32 control);
|
void G_ClearControlKeys(INT32 (*setupcontrols)[2], INT32 control);
|
||||||
|
void G_ClearAllControlKeys(void);
|
||||||
void Command_Setcontrol_f(void);
|
void Command_Setcontrol_f(void);
|
||||||
void Command_Setcontrol2_f(void);
|
void Command_Setcontrol2_f(void);
|
||||||
void Command_Setcontrol3_f(void);
|
void Command_Setcontrol3_f(void);
|
||||||
void Command_Setcontrol4_f(void);
|
void Command_Setcontrol4_f(void);
|
||||||
void G_Controldefault(UINT8 player);
|
void G_Controldefault(UINT8 player);
|
||||||
void G_SaveKeySetting(FILE *f);
|
void G_SaveKeySetting(FILE *f);
|
||||||
void G_CheckDoubleUsage(INT32 keynum);
|
INT32 G_CheckDoubleUsage(INT32 keynum, boolean modify);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -194,14 +194,14 @@ static polyvertex_t *fracdivline(fdivline_t *bsp, polyvertex_t *v1,
|
||||||
v2dy = bsp->dy;
|
v2dy = bsp->dy;
|
||||||
|
|
||||||
den = v2dy*v1dx - v2dx*v1dy;
|
den = v2dy*v1dx - v2dx*v1dy;
|
||||||
if (den == 0)
|
if (fabsf((float)den) < 1.0E-36f) // avoid checking exactly for 0.0
|
||||||
return NULL; // parallel
|
return NULL; // parallel
|
||||||
|
|
||||||
// first check the frac along the polygon segment,
|
// first check the frac along the polygon segment,
|
||||||
// (do not accept hit with the extensions)
|
// (do not accept hit with the extensions)
|
||||||
num = (v2x - v1x)*v2dy + (v1y - v2y)*v2dx;
|
num = (v2x - v1x)*v2dy + (v1y - v2y)*v2dx;
|
||||||
frac = num / den;
|
frac = num / den;
|
||||||
if (frac < 0 || frac > 1)
|
if (frac < 0.0 || frac > 1.0)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
// now get the frac along the BSP line
|
// now get the frac along the BSP line
|
||||||
|
@ -218,29 +218,6 @@ static polyvertex_t *fracdivline(fdivline_t *bsp, polyvertex_t *v1,
|
||||||
return &pt;
|
return &pt;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
|
||||||
//Hurdler: it's not used anymore
|
|
||||||
static boolean NearVertice (polyvertex_t *p1, polyvertex_t *p2)
|
|
||||||
{
|
|
||||||
#if 1
|
|
||||||
float diff;
|
|
||||||
diff = p2->x - p1->x;
|
|
||||||
if (diff < -1.5f || diff > 1.5f)
|
|
||||||
return false;
|
|
||||||
diff = p2->y - p1->y;
|
|
||||||
if (diff < -1.5f || diff > 1.5f)
|
|
||||||
return false;
|
|
||||||
#else
|
|
||||||
if (p1->x != p2->x)
|
|
||||||
return false;
|
|
||||||
if (p1->y != p2->y)
|
|
||||||
return false;
|
|
||||||
#endif
|
|
||||||
// p1 and p2 are considered the same vertex
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// if two vertice coords have a x and/or y difference
|
// if two vertice coords have a x and/or y difference
|
||||||
// of less or equal than 1 FRACUNIT, they are considered the same
|
// of less or equal than 1 FRACUNIT, they are considered the same
|
||||||
// point. Note: hardcoded value, 1.0f could be anything else.
|
// point. Note: hardcoded value, 1.0f could be anything else.
|
||||||
|
@ -254,11 +231,23 @@ static boolean SameVertice (polyvertex_t *p1, polyvertex_t *p2)
|
||||||
diff = p2->y - p1->y;
|
diff = p2->y - p1->y;
|
||||||
if (diff < -1.5f || diff > 1.5f)
|
if (diff < -1.5f || diff > 1.5f)
|
||||||
return false;
|
return false;
|
||||||
#else
|
#elif 0
|
||||||
if (p1->x != p2->x)
|
if (p1->x != p2->x)
|
||||||
return false;
|
return false;
|
||||||
if (p1->y != p2->y)
|
if (p1->y != p2->y)
|
||||||
return false;
|
return false;
|
||||||
|
#elif 0
|
||||||
|
if (fabsf( p2->x - p1->x ) > 1.0E-36f )
|
||||||
|
return false;
|
||||||
|
if (fabsf( p2->y - p1->y ) > 1.0E-36f )
|
||||||
|
return false;
|
||||||
|
#else
|
||||||
|
#define DIVLINE_VERTEX_DIFF 0.45f
|
||||||
|
float ep = DIVLINE_VERTEX_DIFF;
|
||||||
|
if (fabsf( p2->x - p1->x ) > ep )
|
||||||
|
return false;
|
||||||
|
if (fabsf( p2->y - p1->y ) > ep )
|
||||||
|
return false;
|
||||||
#endif
|
#endif
|
||||||
// p1 and p2 are considered the same vertex
|
// p1 and p2 are considered the same vertex
|
||||||
return true;
|
return true;
|
||||||
|
@ -295,57 +284,57 @@ static void SplitPoly (fdivline_t *bsp, //splitting parametric line
|
||||||
// start & end points
|
// start & end points
|
||||||
pv = fracdivline(bsp, &poly->pts[i], &poly->pts[j]);
|
pv = fracdivline(bsp, &poly->pts[i], &poly->pts[j]);
|
||||||
|
|
||||||
if (pv)
|
if (pv == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (ps < 0)
|
||||||
{
|
{
|
||||||
if (ps < 0)
|
// first point
|
||||||
|
ps = i;
|
||||||
|
vs = *pv;
|
||||||
|
fracs = bspfrac;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//the partition line traverse a junction between two segments
|
||||||
|
// or the two points are so close, they can be considered as one
|
||||||
|
// thus, don't accept, since split 2 must be another vertex
|
||||||
|
if (SameVertice(pv, &lastpv))
|
||||||
{
|
{
|
||||||
// first point
|
if (pe < 0)
|
||||||
ps = i;
|
|
||||||
vs = *pv;
|
|
||||||
fracs = bspfrac;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//the partition line traverse a junction between two segments
|
|
||||||
// or the two points are so close, they can be considered as one
|
|
||||||
// thus, don't accept, since split 2 must be another vertex
|
|
||||||
if (SameVertice(pv, &lastpv))
|
|
||||||
{
|
{
|
||||||
if (pe < 0)
|
ps = i;
|
||||||
{
|
psonline = 1;
|
||||||
ps = i;
|
|
||||||
psonline = 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
pe = i;
|
|
||||||
peonline = 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (pe < 0)
|
pe = i;
|
||||||
{
|
peonline = 1;
|
||||||
pe = i;
|
}
|
||||||
ve = *pv;
|
}
|
||||||
frace = bspfrac;
|
else
|
||||||
}
|
{
|
||||||
else
|
if (pe < 0)
|
||||||
{
|
{
|
||||||
// a frac, not same vertice as last one
|
pe = i;
|
||||||
// we already got pt2 so pt 2 is not on the line,
|
ve = *pv;
|
||||||
// so we probably got back to the start point
|
frace = bspfrac;
|
||||||
// which is on the line
|
}
|
||||||
if (SameVertice(pv, &vs))
|
else
|
||||||
psonline = 1;
|
{
|
||||||
break;
|
// a frac, not same vertice as last one
|
||||||
}
|
// we already got pt2 so pt 2 is not on the line,
|
||||||
|
// so we probably got back to the start point
|
||||||
|
// which is on the line
|
||||||
|
if (SameVertice(pv, &vs))
|
||||||
|
psonline = 1;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// remember last point intercept to detect identical points
|
|
||||||
lastpv = *pv;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// remember last point intercept to detect identical points
|
||||||
|
lastpv = *pv;
|
||||||
}
|
}
|
||||||
|
|
||||||
// no split: the partition line is either parallel and
|
// no split: the partition line is either parallel and
|
||||||
|
@ -369,7 +358,7 @@ static void SplitPoly (fdivline_t *bsp, //splitting parametric line
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ps >= 0 && pe < 0)
|
if (pe < 0)
|
||||||
{
|
{
|
||||||
//I_Error("SplitPoly: only one point for split line (%d %d)", ps, pe);
|
//I_Error("SplitPoly: only one point for split line (%d %d)", ps, pe);
|
||||||
*frontpoly = poly;
|
*frontpoly = poly;
|
||||||
|
@ -388,7 +377,7 @@ static void SplitPoly (fdivline_t *bsp, //splitting parametric line
|
||||||
*backpoly = HWR_AllocPoly(2 + nptback);
|
*backpoly = HWR_AllocPoly(2 + nptback);
|
||||||
else
|
else
|
||||||
*backpoly = NULL;
|
*backpoly = NULL;
|
||||||
if (nptfront)
|
if (nptfront > 0)
|
||||||
*frontpoly = HWR_AllocPoly(2 + nptfront);
|
*frontpoly = HWR_AllocPoly(2 + nptfront);
|
||||||
else
|
else
|
||||||
*frontpoly = NULL;
|
*frontpoly = NULL;
|
||||||
|
@ -483,42 +472,42 @@ static poly_t *CutOutSubsecPoly(seg_t *lseg, INT32 count, poly_t *poly)
|
||||||
|
|
||||||
pv = fracdivline(&cutseg, &poly->pts[i], &poly->pts[j]);
|
pv = fracdivline(&cutseg, &poly->pts[i], &poly->pts[j]);
|
||||||
|
|
||||||
if (pv)
|
if (pv == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (ps < 0)
|
||||||
{
|
{
|
||||||
if (ps < 0)
|
ps = i;
|
||||||
|
vs = *pv;
|
||||||
|
fracs = bspfrac;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//frac 1 on previous segment,
|
||||||
|
// 0 on the next,
|
||||||
|
//the split line goes through one of the convex poly
|
||||||
|
// vertices, happens quite often since the convex
|
||||||
|
// poly is already adjacent to the subsector segs
|
||||||
|
// on most borders
|
||||||
|
if (SameVertice(pv, &vs))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (fracs <= bspfrac)
|
||||||
{
|
{
|
||||||
|
nump = 2 + poly->numpts - (i-ps);
|
||||||
|
pe = ps;
|
||||||
ps = i;
|
ps = i;
|
||||||
vs = *pv;
|
ve = *pv;
|
||||||
fracs = bspfrac;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//frac 1 on previous segment,
|
nump = 2 + (i-ps);
|
||||||
// 0 on the next,
|
pe = i;
|
||||||
//the split line goes through one of the convex poly
|
ve = vs;
|
||||||
// vertices, happens quite often since the convex
|
vs = *pv;
|
||||||
// poly is already adjacent to the subsector segs
|
|
||||||
// on most borders
|
|
||||||
if (SameVertice(pv, &vs))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (fracs <= bspfrac)
|
|
||||||
{
|
|
||||||
nump = 2 + poly->numpts - (i-ps);
|
|
||||||
pe = ps;
|
|
||||||
ps = i;
|
|
||||||
ve = *pv;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
nump = 2 + (i-ps);
|
|
||||||
pe = i;
|
|
||||||
ve = vs;
|
|
||||||
vs = *pv;
|
|
||||||
}
|
|
||||||
//found 2nd point
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
//found 2nd point
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -582,18 +571,42 @@ static inline void HWR_SubsecPoly(INT32 num, poly_t *poly)
|
||||||
// search for the segs source of this divline
|
// search for the segs source of this divline
|
||||||
static inline void SearchDivline(node_t *bsp, fdivline_t *divline)
|
static inline void SearchDivline(node_t *bsp, fdivline_t *divline)
|
||||||
{
|
{
|
||||||
#if 0 // MAR - If you don't use the same partition line that the BSP uses, the front/back polys won't match the subsectors in the BSP!
|
|
||||||
#endif
|
|
||||||
divline->x = FIXED_TO_FLOAT(bsp->x);
|
divline->x = FIXED_TO_FLOAT(bsp->x);
|
||||||
divline->y = FIXED_TO_FLOAT(bsp->y);
|
divline->y = FIXED_TO_FLOAT(bsp->y);
|
||||||
divline->dx = FIXED_TO_FLOAT(bsp->dx);
|
divline->dx = FIXED_TO_FLOAT(bsp->dx);
|
||||||
divline->dy = FIXED_TO_FLOAT(bsp->dy);
|
divline->dy = FIXED_TO_FLOAT(bsp->dy);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HWR_LOADING_SCREEN
|
||||||
//Hurdler: implement a loading status
|
//Hurdler: implement a loading status
|
||||||
static size_t ls_count = 0;
|
static size_t ls_count = 0;
|
||||||
static UINT8 ls_percent = 0;
|
static UINT8 ls_percent = 0;
|
||||||
|
|
||||||
|
static void loading_status(void)
|
||||||
|
{
|
||||||
|
char s[16];
|
||||||
|
int x, y;
|
||||||
|
|
||||||
|
I_OsPolling();
|
||||||
|
CON_Drawer();
|
||||||
|
sprintf(s, "%d%%", (++ls_percent)<<1);
|
||||||
|
x = BASEVIDWIDTH/2;
|
||||||
|
y = BASEVIDHEIGHT/2;
|
||||||
|
V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31); // Black background to match fade in effect
|
||||||
|
//V_DrawPatchFill(W_CachePatchName("SRB2BACK",PU_CACHE)); // SRB2 background, ehhh too bright.
|
||||||
|
M_DrawTextBox(x-58, y-8, 13, 1);
|
||||||
|
V_DrawString(x-50, y, V_YELLOWMAP, "Loading...");
|
||||||
|
V_DrawRightAlignedString(x+50, y, V_YELLOWMAP, s);
|
||||||
|
|
||||||
|
// Is this really necessary at this point..?
|
||||||
|
V_DrawCenteredString(BASEVIDWIDTH/2, 40, V_YELLOWMAP, "OPENGL MODE IS INCOMPLETE AND MAY");
|
||||||
|
V_DrawCenteredString(BASEVIDWIDTH/2, 50, V_YELLOWMAP, "NOT DISPLAY SOME SURFACES.");
|
||||||
|
V_DrawCenteredString(BASEVIDWIDTH/2, 70, V_YELLOWMAP, "USE AT SONIC'S RISK.");
|
||||||
|
|
||||||
|
I_UpdateNoVsync();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// poly : the convex polygon that encloses all child subsectors
|
// poly : the convex polygon that encloses all child subsectors
|
||||||
static void WalkBSPNode(INT32 bspnum, poly_t *poly, UINT16 *leafnode, fixed_t *bbox)
|
static void WalkBSPNode(INT32 bspnum, poly_t *poly, UINT16 *leafnode, fixed_t *bbox)
|
||||||
{
|
{
|
||||||
|
@ -631,38 +644,19 @@ static void WalkBSPNode(INT32 bspnum, poly_t *poly, UINT16 *leafnode, fixed_t *b
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
HWR_SubsecPoly(bspnum&(~NF_SUBSECTOR), poly);
|
HWR_SubsecPoly(bspnum & ~NF_SUBSECTOR, poly);
|
||||||
//Hurdler: implement a loading status
|
|
||||||
|
|
||||||
|
//Hurdler: implement a loading status
|
||||||
#ifdef HWR_LOADING_SCREEN
|
#ifdef HWR_LOADING_SCREEN
|
||||||
if (ls_count-- <= 0)
|
if (ls_count-- <= 0)
|
||||||
{
|
{
|
||||||
char s[16];
|
|
||||||
int x, y;
|
|
||||||
|
|
||||||
I_OsPolling();
|
|
||||||
ls_count = numsubsectors/50;
|
ls_count = numsubsectors/50;
|
||||||
CON_Drawer();
|
loading_status();
|
||||||
sprintf(s, "%d%%", (++ls_percent)<<1);
|
|
||||||
x = BASEVIDWIDTH/2;
|
|
||||||
y = BASEVIDHEIGHT/2;
|
|
||||||
V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, levelfadecol); // White background to match fade in effect
|
|
||||||
//V_DrawPatchFill(W_CachePatchName("SRB2BACK",PU_CACHE)); // SRB2 background, ehhh too bright.
|
|
||||||
M_DrawTextBox(x-58, y-8, 13, 1);
|
|
||||||
V_DrawString(x-50, y, V_YELLOWMAP, "Loading...");
|
|
||||||
V_DrawRightAlignedString(x+50, y, V_YELLOWMAP, s);
|
|
||||||
|
|
||||||
// Is this really necessary at this point..?
|
|
||||||
V_DrawCenteredString(BASEVIDWIDTH/2, 40, V_YELLOWMAP, "OPENGL MODE IS INCOMPLETE AND MAY");
|
|
||||||
V_DrawCenteredString(BASEVIDWIDTH/2, 50, V_YELLOWMAP, "NOT DISPLAY SOME SURFACES.");
|
|
||||||
V_DrawCenteredString(BASEVIDWIDTH/2, 70, V_YELLOWMAP, "USE AT SONIC'S RISK.");
|
|
||||||
|
|
||||||
I_UpdateNoVsync();
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
M_ClearBox(bbox);
|
M_ClearBox(bbox);
|
||||||
poly = extrasubsectors[bspnum&~NF_SUBSECTOR].planepoly;
|
poly = extrasubsectors[bspnum & ~NF_SUBSECTOR].planepoly;
|
||||||
|
|
||||||
for (i = 0, pt = poly->pts; i < poly->numpts; i++,pt++)
|
for (i = 0, pt = poly->pts; i < poly->numpts; i++,pt++)
|
||||||
M_AddToBox(bbox, FLOAT_TO_FIXED(pt->x), FLOAT_TO_FIXED(pt->y));
|
M_AddToBox(bbox, FLOAT_TO_FIXED(pt->x), FLOAT_TO_FIXED(pt->y));
|
||||||
|
@ -694,14 +688,13 @@ static void WalkBSPNode(INT32 bspnum, poly_t *poly, UINT16 *leafnode, fixed_t *b
|
||||||
if (backpoly)
|
if (backpoly)
|
||||||
{
|
{
|
||||||
// Correct back bbox to include floor/ceiling convex polygon
|
// Correct back bbox to include floor/ceiling convex polygon
|
||||||
WalkBSPNode(bsp->children[1], backpoly, &bsp->children[1],
|
WalkBSPNode(bsp->children[1], backpoly, &bsp->children[1], bsp->bbox[1]);
|
||||||
bsp->bbox[1]);
|
|
||||||
|
|
||||||
// enlarge bbox with seconde child
|
// enlarge bbox with second child
|
||||||
M_AddToBox(bbox, bsp->bbox[1][BOXLEFT ],
|
M_AddToBox(bbox, bsp->bbox[1][BOXLEFT ],
|
||||||
bsp->bbox[1][BOXTOP ]);
|
bsp->bbox[1][BOXTOP ]);
|
||||||
M_AddToBox(bbox, bsp->bbox[1][BOXRIGHT ],
|
M_AddToBox(bbox, bsp->bbox[1][BOXRIGHT ],
|
||||||
bsp->bbox[1][BOXBOTTOM]);
|
bsp->bbox[1][BOXBOTTOM]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -781,9 +774,9 @@ static void SearchSegInBSP(INT32 bspnum,polyvertex_t *p,poly_t *poly)
|
||||||
|
|
||||||
if (bspnum & NF_SUBSECTOR)
|
if (bspnum & NF_SUBSECTOR)
|
||||||
{
|
{
|
||||||
if (bspnum!=-1)
|
if (bspnum != -1)
|
||||||
{
|
{
|
||||||
bspnum&=~NF_SUBSECTOR;
|
bspnum &= ~NF_SUBSECTOR;
|
||||||
q = extrasubsectors[bspnum].planepoly;
|
q = extrasubsectors[bspnum].planepoly;
|
||||||
if (poly == q || !q)
|
if (poly == q || !q)
|
||||||
return;
|
return;
|
||||||
|
@ -969,7 +962,9 @@ void HWR_CreatePlanePolygons(INT32 bspnum)
|
||||||
fixed_t rootbbox[4];
|
fixed_t rootbbox[4];
|
||||||
|
|
||||||
CONS_Debug(DBG_RENDER, "Creating polygons, please wait...\n");
|
CONS_Debug(DBG_RENDER, "Creating polygons, please wait...\n");
|
||||||
|
#ifdef HWR_LOADING_SCREEN
|
||||||
ls_count = ls_percent = 0; // reset the loading status
|
ls_count = ls_percent = 0; // reset the loading status
|
||||||
|
#endif
|
||||||
CON_Drawer(); //let the user know what we are doing
|
CON_Drawer(); //let the user know what we are doing
|
||||||
I_FinishUpdate(); // page flip or blit buffer
|
I_FinishUpdate(); // page flip or blit buffer
|
||||||
|
|
||||||
|
|
|
@ -230,14 +230,14 @@ void HWR_DrawFixedPatch(GLPatch_t *gpatch, fixed_t x, fixed_t y, fixed_t pscale,
|
||||||
Z_Free(realpatch);
|
Z_Free(realpatch);
|
||||||
}*/
|
}*/
|
||||||
// centre screen
|
// centre screen
|
||||||
if ((float)vid.width != (float)BASEVIDWIDTH * dupx)
|
if (fabsf((float)vid.width - (float)BASEVIDWIDTH * dupx) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if (option & V_SNAPTORIGHT)
|
if (option & V_SNAPTORIGHT)
|
||||||
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
||||||
else if (!(option & V_SNAPTOLEFT))
|
else if (!(option & V_SNAPTOLEFT))
|
||||||
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx))/2;
|
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx))/2;
|
||||||
}
|
}
|
||||||
if ((float)vid.height != (float)BASEVIDHEIGHT * dupy)
|
if (fabsf((float)vid.height - (float)BASEVIDHEIGHT * dupy) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if ((option & (V_SPLITSCREEN|V_SNAPTOBOTTOM)) == (V_SPLITSCREEN|V_SNAPTOBOTTOM))
|
if ((option & (V_SPLITSCREEN|V_SNAPTOBOTTOM)) == (V_SPLITSCREEN|V_SNAPTOBOTTOM))
|
||||||
cy += ((float)vid.height/2 - ((float)BASEVIDHEIGHT/2 * dupy));
|
cy += ((float)vid.height/2 - ((float)BASEVIDHEIGHT/2 * dupy));
|
||||||
|
@ -378,14 +378,14 @@ void HWR_DrawCroppedPatch(GLPatch_t *gpatch, fixed_t x, fixed_t y, fixed_t pscal
|
||||||
Z_Free(realpatch);
|
Z_Free(realpatch);
|
||||||
}*/
|
}*/
|
||||||
// centre screen
|
// centre screen
|
||||||
if ((float)vid.width != (float)BASEVIDWIDTH * dupx)
|
if (fabsf((float)vid.width - (float)BASEVIDWIDTH * dupx) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if (option & V_SNAPTORIGHT)
|
if (option & V_SNAPTORIGHT)
|
||||||
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
||||||
else if (!(option & V_SNAPTOLEFT))
|
else if (!(option & V_SNAPTOLEFT))
|
||||||
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx))/2;
|
cx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx))/2;
|
||||||
}
|
}
|
||||||
if ((float)vid.height != (float)BASEVIDHEIGHT * dupy)
|
if (fabsf((float)vid.height - (float)BASEVIDHEIGHT * dupy) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if ((option & (V_SPLITSCREEN|V_SNAPTOBOTTOM)) == (V_SPLITSCREEN|V_SNAPTOBOTTOM))
|
if ((option & (V_SPLITSCREEN|V_SNAPTOBOTTOM)) == (V_SPLITSCREEN|V_SNAPTOBOTTOM))
|
||||||
cy += ((float)vid.height/2 - ((float)BASEVIDHEIGHT/2 * dupy));
|
cy += ((float)vid.height/2 - ((float)BASEVIDHEIGHT/2 * dupy));
|
||||||
|
@ -777,18 +777,6 @@ void HWR_DrawViewBorder(INT32 clearlines)
|
||||||
// AM_MAP.C DRAWING STUFF
|
// AM_MAP.C DRAWING STUFF
|
||||||
// ==========================================================================
|
// ==========================================================================
|
||||||
|
|
||||||
// Clear the automap part of the screen
|
|
||||||
void HWR_clearAutomap(void)
|
|
||||||
{
|
|
||||||
FRGBAFloat fColor = {0, 0, 0, 1};
|
|
||||||
|
|
||||||
// minx,miny,maxx,maxy
|
|
||||||
HWD.pfnGClipRect(0, 0, vid.width, vid.height, NZCLIP_PLANE);
|
|
||||||
HWD.pfnClearBuffer(true, true, &fColor);
|
|
||||||
HWD.pfnGClipRect(0, 0, vid.width, vid.height, NZCLIP_PLANE);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// -----------------+
|
// -----------------+
|
||||||
// HWR_drawAMline : draw a line of the automap (the clipping is already done in automap code)
|
// HWR_drawAMline : draw a line of the automap (the clipping is already done in automap code)
|
||||||
// Arg : color is a RGB 888 value
|
// Arg : color is a RGB 888 value
|
||||||
|
@ -809,7 +797,6 @@ void HWR_drawAMline(const fline_t *fl, INT32 color)
|
||||||
HWD.pfnDraw2DLine(&v1, &v2, color_rgba);
|
HWD.pfnDraw2DLine(&v1, &v2, color_rgba);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// -----------------+
|
// -----------------+
|
||||||
// HWR_DrawFill : draw flat coloured rectangle, with no texture
|
// HWR_DrawFill : draw flat coloured rectangle, with no texture
|
||||||
// -----------------+
|
// -----------------+
|
||||||
|
@ -853,14 +840,14 @@ void HWR_DrawFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color)
|
||||||
fw *= dupx;
|
fw *= dupx;
|
||||||
fh *= dupy;
|
fh *= dupy;
|
||||||
|
|
||||||
if ((float)vid.width != (float)BASEVIDWIDTH * dupx)
|
if (fabsf((float)vid.width - (float)BASEVIDWIDTH * dupx) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if (color & V_SNAPTORIGHT)
|
if (color & V_SNAPTORIGHT)
|
||||||
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
||||||
else if (!(color & V_SNAPTOLEFT))
|
else if (!(color & V_SNAPTOLEFT))
|
||||||
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx)) / 2;
|
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx)) / 2;
|
||||||
}
|
}
|
||||||
if ((float)vid.height != (float)BASEVIDHEIGHT * dupy)
|
if (fabsf((float)vid.height - (float)BASEVIDHEIGHT * dupy) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
// same thing here
|
// same thing here
|
||||||
if (color & V_SNAPTOBOTTOM)
|
if (color & V_SNAPTOBOTTOM)
|
||||||
|
@ -963,14 +950,14 @@ void HWR_DrawConsoleFill(INT32 x, INT32 y, INT32 w, INT32 h, UINT32 color, INT32
|
||||||
fw *= dupx;
|
fw *= dupx;
|
||||||
fh *= dupy;
|
fh *= dupy;
|
||||||
|
|
||||||
if (vid.width != BASEVIDWIDTH * vid.dupx)
|
if (fabsf((float)vid.width - ((float)BASEVIDWIDTH * dupx)) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if (options & V_SNAPTORIGHT)
|
if (options & V_SNAPTORIGHT)
|
||||||
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
||||||
else if (!(options & V_SNAPTOLEFT))
|
else if (!(options & V_SNAPTOLEFT))
|
||||||
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx)) / 2;
|
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx)) / 2;
|
||||||
}
|
}
|
||||||
if (vid.height != BASEVIDHEIGHT * dupy)
|
if (fabsf((float)vid.height - ((float)BASEVIDHEIGHT * dupy)) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
// same thing here
|
// same thing here
|
||||||
if (options & V_SNAPTOBOTTOM)
|
if (options & V_SNAPTOBOTTOM)
|
||||||
|
@ -1022,7 +1009,7 @@ void HWR_DrawConsoleFill(INT32 x, INT32 y, INT32 w, INT32 h, UINT32 color, INT32
|
||||||
v[2].sow = v[1].sow = 1.0f;
|
v[2].sow = v[1].sow = 1.0f;
|
||||||
v[0].tow = v[1].tow = 0.0f;
|
v[0].tow = v[1].tow = 0.0f;
|
||||||
v[2].tow = v[3].tow = 1.0f;
|
v[2].tow = v[3].tow = 1.0f;
|
||||||
|
|
||||||
Surf.FlatColor.rgba = UINT2RGBA(color);
|
Surf.FlatColor.rgba = UINT2RGBA(color);
|
||||||
Surf.FlatColor.s.alpha = 0x80;
|
Surf.FlatColor.s.alpha = 0x80;
|
||||||
|
|
||||||
|
@ -1059,14 +1046,14 @@ void HWR_DrawDiag(INT32 x, INT32 y, INT32 wh, INT32 color)
|
||||||
fw *= dupx;
|
fw *= dupx;
|
||||||
fh *= dupy;
|
fh *= dupy;
|
||||||
|
|
||||||
if (vid.width != BASEVIDWIDTH * vid.dupx)
|
if (fabsf((float)vid.width - ((float)BASEVIDWIDTH * dupx)) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
if (color & V_SNAPTORIGHT)
|
if (color & V_SNAPTORIGHT)
|
||||||
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx));
|
||||||
else if (!(color & V_SNAPTOLEFT))
|
else if (!(color & V_SNAPTOLEFT))
|
||||||
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx)) / 2;
|
fx += ((float)vid.width - ((float)BASEVIDWIDTH * dupx)) / 2;
|
||||||
}
|
}
|
||||||
if (vid.height != BASEVIDHEIGHT * dupy)
|
if (fabsf((float)vid.height - ((float)BASEVIDHEIGHT * dupy)) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
// same thing here
|
// same thing here
|
||||||
if (color & V_SNAPTOBOTTOM)
|
if (color & V_SNAPTOBOTTOM)
|
||||||
|
|
|
@ -4153,7 +4153,7 @@ static void HWR_DrawSpriteShadow(gr_vissprite_t *spr, GLPatch_t *gpatch, float t
|
||||||
swallVerts[0].z = swallVerts[3].z = spr->z1;
|
swallVerts[0].z = swallVerts[3].z = spr->z1;
|
||||||
swallVerts[2].z = swallVerts[1].z = spr->z2;
|
swallVerts[2].z = swallVerts[1].z = spr->z2;
|
||||||
|
|
||||||
if (spr->mobj && this_scale != 1.0f)
|
if (spr->mobj && fabsf(this_scale - 1.0f) > 1.0E-36f)
|
||||||
{
|
{
|
||||||
// Always a pixel above the floor, perfectly flat.
|
// Always a pixel above the floor, perfectly flat.
|
||||||
swallVerts[0].y = swallVerts[1].y = swallVerts[2].y = swallVerts[3].y = spr->ty - gpatch->topoffset * this_scale - (floorheight+3);
|
swallVerts[0].y = swallVerts[1].y = swallVerts[2].y = swallVerts[3].y = spr->ty - gpatch->topoffset * this_scale - (floorheight+3);
|
||||||
|
@ -4321,7 +4321,7 @@ static void HWR_SplitSprite(gr_vissprite_t *spr)
|
||||||
wallVerts[1].z = wallVerts[2].z = spr->z2;
|
wallVerts[1].z = wallVerts[2].z = spr->z2;
|
||||||
|
|
||||||
wallVerts[2].y = wallVerts[3].y = spr->ty;
|
wallVerts[2].y = wallVerts[3].y = spr->ty;
|
||||||
if (spr->mobj && this_scale != 1.0f)
|
if (spr->mobj && fabsf(this_scale - 1.0f) > 1.0E-36f)
|
||||||
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height * this_scale;
|
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height * this_scale;
|
||||||
else
|
else
|
||||||
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height;
|
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height;
|
||||||
|
@ -4350,6 +4350,16 @@ static void HWR_SplitSprite(gr_vissprite_t *spr)
|
||||||
wallVerts[0].tow = wallVerts[1].tow = gpatch->max_t;
|
wallVerts[0].tow = wallVerts[1].tow = gpatch->max_t;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// if it has a dispoffset, push it a little towards the camera
|
||||||
|
if (spr->dispoffset) {
|
||||||
|
float co = -gr_viewcos*(0.05f*spr->dispoffset);
|
||||||
|
float si = -gr_viewsin*(0.05f*spr->dispoffset);
|
||||||
|
wallVerts[0].z = wallVerts[3].z = wallVerts[0].z+si;
|
||||||
|
wallVerts[1].z = wallVerts[2].z = wallVerts[1].z+si;
|
||||||
|
wallVerts[0].x = wallVerts[3].x = wallVerts[0].x+co;
|
||||||
|
wallVerts[1].x = wallVerts[2].x = wallVerts[1].x+co;
|
||||||
|
}
|
||||||
|
|
||||||
realtop = top = wallVerts[3].y;
|
realtop = top = wallVerts[3].y;
|
||||||
realbot = bot = wallVerts[0].y;
|
realbot = bot = wallVerts[0].y;
|
||||||
towtop = wallVerts[3].tow;
|
towtop = wallVerts[3].tow;
|
||||||
|
@ -4602,7 +4612,7 @@ static void HWR_DrawSprite(gr_vissprite_t *spr)
|
||||||
wallVerts[0].x = wallVerts[3].x = spr->x1;
|
wallVerts[0].x = wallVerts[3].x = spr->x1;
|
||||||
wallVerts[2].x = wallVerts[1].x = spr->x2;
|
wallVerts[2].x = wallVerts[1].x = spr->x2;
|
||||||
wallVerts[2].y = wallVerts[3].y = spr->ty;
|
wallVerts[2].y = wallVerts[3].y = spr->ty;
|
||||||
if (spr->mobj && this_scale != 1.0f)
|
if (spr->mobj && fabsf(this_scale - 1.0f) > 1.0E-36f)
|
||||||
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height * this_scale;
|
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height * this_scale;
|
||||||
else
|
else
|
||||||
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height;
|
wallVerts[0].y = wallVerts[1].y = spr->ty - gpatch->height;
|
||||||
|
@ -4652,6 +4662,16 @@ static void HWR_DrawSprite(gr_vissprite_t *spr)
|
||||||
HWR_DrawSpriteShadow(spr, gpatch, this_scale);
|
HWR_DrawSpriteShadow(spr, gpatch, this_scale);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// if it has a dispoffset, push it a little towards the camera
|
||||||
|
if (spr->dispoffset) {
|
||||||
|
float co = -gr_viewcos*(0.05f*spr->dispoffset);
|
||||||
|
float si = -gr_viewsin*(0.05f*spr->dispoffset);
|
||||||
|
wallVerts[0].z = wallVerts[3].z = wallVerts[0].z+si;
|
||||||
|
wallVerts[1].z = wallVerts[2].z = wallVerts[1].z+si;
|
||||||
|
wallVerts[0].x = wallVerts[3].x = wallVerts[0].x+co;
|
||||||
|
wallVerts[1].x = wallVerts[2].x = wallVerts[1].x+co;
|
||||||
|
}
|
||||||
|
|
||||||
// This needs to be AFTER the shadows so that the regular sprites aren't drawn completely black.
|
// This needs to be AFTER the shadows so that the regular sprites aren't drawn completely black.
|
||||||
// sprite lighting by modulating the RGB components
|
// sprite lighting by modulating the RGB components
|
||||||
/// \todo coloured
|
/// \todo coloured
|
||||||
|
@ -4848,7 +4868,7 @@ static void HWR_SortVisSprites(void)
|
||||||
best = ds;
|
best = ds;
|
||||||
}
|
}
|
||||||
// order visprites of same scale by dispoffset, smallest first
|
// order visprites of same scale by dispoffset, smallest first
|
||||||
else if (ds->tz == bestdist && ds->dispoffset < bestdispoffset)
|
else if (fabsf(ds->tz - bestdist) < 1.0E-36f && ds->dispoffset < bestdispoffset)
|
||||||
{
|
{
|
||||||
bestdispoffset = ds->dispoffset;
|
bestdispoffset = ds->dispoffset;
|
||||||
best = ds;
|
best = ds;
|
||||||
|
|
|
@ -31,7 +31,6 @@
|
||||||
void HWR_Startup(void);
|
void HWR_Startup(void);
|
||||||
void HWR_Shutdown(void);
|
void HWR_Shutdown(void);
|
||||||
|
|
||||||
void HWR_clearAutomap(void);
|
|
||||||
void HWR_drawAMline(const fline_t *fl, INT32 color);
|
void HWR_drawAMline(const fline_t *fl, INT32 color);
|
||||||
void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength);
|
void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength);
|
||||||
void HWR_DrawConsoleBack(UINT32 color, INT32 height);
|
void HWR_DrawConsoleBack(UINT32 color, INT32 height);
|
||||||
|
|
|
@ -1,6 +1,14 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -9,6 +17,14 @@
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -22,7 +38,7 @@
|
||||||
<ProjectName>r_opengl</ProjectName>
|
<ProjectName>r_opengl</ProjectName>
|
||||||
<ProjectGuid>{51137D5C-4E81-4955-AACF-EA3092006051}</ProjectGuid>
|
<ProjectGuid>{51137D5C-4E81-4955-AACF-EA3092006051}</ProjectGuid>
|
||||||
<RootNamespace>r_opengl</RootNamespace>
|
<RootNamespace>r_opengl</RootNamespace>
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
@ -30,21 +46,45 @@
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings">
|
<ImportGroup Label="ExtensionSettings">
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
@ -52,37 +92,69 @@
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</LinkIncremental>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</LinkIncremental>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">false</LinkIncremental>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\r_opengl\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">false</LinkIncremental>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<Midl>
|
<Midl>
|
||||||
|
@ -123,6 +195,49 @@
|
||||||
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\r_opengl\r_opengl.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;__WIN32__;__MSC__;USE_WGL_SWAP;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)r_opengl.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)r_opengl.pdb</ProgramDatabaseFile>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
<Bscmake>
|
<Bscmake>
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
@ -168,6 +283,49 @@
|
||||||
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
<TargetMachine>MachineX64</TargetMachine>
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\r_opengl\r_opengl.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;__WIN32__;__MSC__;USE_WGL_SWAP;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)r_opengl.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)r_opengl.pdb</ProgramDatabaseFile>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
<Bscmake>
|
<Bscmake>
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
@ -215,6 +373,52 @@
|
||||||
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\r_opengl\r_opengl.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalOptions>/MP %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;__WIN32__;__MSC__;USE_WGL_SWAP;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)r_opengl.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)r_opengl.pdb</ProgramDatabaseFile>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
<Bscmake>
|
<Bscmake>
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
@ -262,6 +466,52 @@
|
||||||
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
<TargetMachine>MachineX64</TargetMachine>
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\r_opengl\r_opengl.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalOptions>/MP %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;__WIN32__;__MSC__;USE_WGL_SWAP;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)r_opengl.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)r_opengl.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)r_opengl.pdb</ProgramDatabaseFile>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)r_opengl.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<AdditionalDependencies>gdi32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
<Bscmake>
|
<Bscmake>
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
@ -271,15 +521,23 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="ogl_win.c">
|
<ClCompile Include="ogl_win.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="r_opengl.c">
|
<ClCompile Include="r_opengl.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
@ -602,7 +602,8 @@ static void GLPerspective(GLdouble fovy, GLdouble aspect)
|
||||||
const GLdouble deltaZ = zFar - zNear;
|
const GLdouble deltaZ = zFar - zNear;
|
||||||
GLdouble cotangent;
|
GLdouble cotangent;
|
||||||
|
|
||||||
if ((deltaZ == 0.0f) || (sine == 0.0f) || (aspect == 0.0f)) {
|
if ((fabsf((float)deltaZ) < 1.0E-36f) || fpclassify(sine) == FP_ZERO || fpclassify(aspect) == FP_ZERO)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
cotangent = cos(radians) / sine;
|
cotangent = cos(radians) / sine;
|
||||||
|
@ -641,7 +642,7 @@ static void GLProject(GLdouble objX, GLdouble objY, GLdouble objZ,
|
||||||
out[2] * projMatrix[2*4+i] +
|
out[2] * projMatrix[2*4+i] +
|
||||||
out[3] * projMatrix[3*4+i];
|
out[3] * projMatrix[3*4+i];
|
||||||
}
|
}
|
||||||
if (in[3] == 0.0f) return;
|
if (fpclassify(in[3]) == FP_ZERO) return;
|
||||||
in[0] /= in[3];
|
in[0] /= in[3];
|
||||||
in[1] /= in[3];
|
in[1] /= in[3];
|
||||||
in[2] /= in[3];
|
in[2] /= in[3];
|
||||||
|
@ -1989,7 +1990,7 @@ static void DrawMD2Ex(INT32 *gl_cmd_buffer, md2_frame_t *frame, INT32 duration,
|
||||||
|
|
||||||
pglTexCoord2f(s, t);
|
pglTexCoord2f(s, t);
|
||||||
|
|
||||||
if (!nextframe || pol == 0.0f)
|
if (!nextframe || fpclassify(pol) == FP_ZERO)
|
||||||
{
|
{
|
||||||
pglNormal3f(frame->vertices[pindex].normal[0],
|
pglNormal3f(frame->vertices[pindex].normal[0],
|
||||||
frame->vertices[pindex].normal[1],
|
frame->vertices[pindex].normal[1],
|
||||||
|
@ -2058,6 +2059,7 @@ EXPORT void HWRAPI(SetTransform) (FTransform *stransform)
|
||||||
pglLoadIdentity();
|
pglLoadIdentity();
|
||||||
if (stransform)
|
if (stransform)
|
||||||
{
|
{
|
||||||
|
boolean fovx90;
|
||||||
// keep a trace of the transformation for md2
|
// keep a trace of the transformation for md2
|
||||||
memcpy(&md2_transform, stransform, sizeof (md2_transform));
|
memcpy(&md2_transform, stransform, sizeof (md2_transform));
|
||||||
|
|
||||||
|
@ -2074,7 +2076,8 @@ EXPORT void HWRAPI(SetTransform) (FTransform *stransform)
|
||||||
|
|
||||||
pglMatrixMode(GL_PROJECTION);
|
pglMatrixMode(GL_PROJECTION);
|
||||||
pglLoadIdentity();
|
pglLoadIdentity();
|
||||||
special_splitscreen = (stransform->splitscreen == 1 && stransform->fovxangle == 90.0f);
|
fovx90 = stransform->fovxangle > 0.0f && fabsf(stransform->fovxangle - 90.0f) < 0.5f;
|
||||||
|
special_splitscreen = (stransform->splitscreen == 1 && fovx90);
|
||||||
if (special_splitscreen)
|
if (special_splitscreen)
|
||||||
GLPerspective(53.13l, 2*ASPECT_RATIO); // 53.13 = 2*atan(0.5)
|
GLPerspective(53.13l, 2*ASPECT_RATIO); // 53.13 = 2*atan(0.5)
|
||||||
else
|
else
|
||||||
|
|
|
@ -1,6 +1,14 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -9,6 +17,14 @@
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -22,7 +38,7 @@
|
||||||
<ProjectName>s_openal</ProjectName>
|
<ProjectName>s_openal</ProjectName>
|
||||||
<ProjectGuid>{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}</ProjectGuid>
|
<ProjectGuid>{E662D0B3-412D-4D55-A5EC-8CBD680DDCBE}</ProjectGuid>
|
||||||
<RootNamespace>s_openal</RootNamespace>
|
<RootNamespace>s_openal</RootNamespace>
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
@ -31,22 +47,44 @@
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseOfMfc>false</UseOfMfc>
|
<UseOfMfc>false</UseOfMfc>
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings">
|
<ImportGroup Label="ExtensionSettings">
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
@ -54,37 +92,69 @@
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||||
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">false</LinkIncremental>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">false</LinkIncremental>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</LinkIncremental>
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\</OutDir>
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">.\..\..\..\objs\VC10\$(Platform)\$(Configuration)\s_openal\</IntDir>
|
||||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||||
|
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</IgnoreImportLibrary>
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</LinkIncremental>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Midl>
|
<Midl>
|
||||||
|
@ -132,6 +202,50 @@
|
||||||
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\s_openal\s_openal.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalOptions>/MP %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;__WIN32__;__MSC__;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)s_openal.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>OpenAL32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)s_openal.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)s_openal.pdb</ProgramDatabaseFile>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)s_openal.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
@ -178,6 +292,50 @@
|
||||||
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\s_openal\s_openal.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalOptions>/MP %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;__WIN32__;__MSC__;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)s_openal.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>OpenAL32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)s_openal.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)s_openal.pdb</ProgramDatabaseFile>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)s_openal.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
@ -225,6 +383,50 @@
|
||||||
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\s_openal\s_openal.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalOptions>/MP /SAFESEH:OFF %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;__WIN32__;__MSC__;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)s_openal.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>OpenAL32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)s_openal.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)s_openal.pdb</ProgramDatabaseFile>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)s_openal.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<Midl>
|
<Midl>
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
@ -272,12 +474,60 @@
|
||||||
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
</Bscmake>
|
</Bscmake>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TypeLibraryName>.\..\..\..\bin\VC10\$(Platform)\$(Configuration)\s_openal\s_openal.tlb</TypeLibraryName>
|
||||||
|
<HeaderFileName>
|
||||||
|
</HeaderFileName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;__WIN32__;__MSC__;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ProgramDataBaseFileName>$(IntDir)s_openal.pdb</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>true</BrowseInformation>
|
||||||
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<CompileAs>CompileAsC</CompileAs>
|
||||||
|
<AdditionalOptions>/MP /SAFESEH:OFF %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x0409</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>OpenAL32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)s_openal.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)s_openal.pdb</ProgramDatabaseFile>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(IntDir)s_openal.lib</ImportLibrary>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
</Link>
|
||||||
|
<Bscmake>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<OutputFile>$(OutDir)s_openal.bsc</OutputFile>
|
||||||
|
</Bscmake>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="s_openal.c">
|
<ClCompile Include="s_openal.c">
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
536
src/hu_stuff.c
536
src/hu_stuff.c
File diff suppressed because it is too large
Load diff
|
@ -21,7 +21,7 @@
|
||||||
//------------------------------------
|
//------------------------------------
|
||||||
// heads up font
|
// heads up font
|
||||||
//------------------------------------
|
//------------------------------------
|
||||||
#define HU_FONTSTART '\x19' // the first font character
|
#define HU_FONTSTART '\x16' // the first font character
|
||||||
#define HU_FONTEND '~'
|
#define HU_FONTEND '~'
|
||||||
|
|
||||||
#define HU_FONTSIZE (HU_FONTEND - HU_FONTSTART + 1)
|
#define HU_FONTSIZE (HU_FONTEND - HU_FONTSTART + 1)
|
||||||
|
@ -62,6 +62,20 @@ typedef struct
|
||||||
// chat stuff
|
// chat stuff
|
||||||
//------------------------------------
|
//------------------------------------
|
||||||
#define HU_MAXMSGLEN 224
|
#define HU_MAXMSGLEN 224
|
||||||
|
#define CHAT_BUFSIZE 64 // that's enough messages, right? We'll delete the older ones when that gets out of hand.
|
||||||
|
#ifdef NETSPLITSCREEN
|
||||||
|
#define OLDCHAT (cv_consolechat.value == 1 || dedicated || vid.width < 640)
|
||||||
|
#else
|
||||||
|
#define OLDCHAT (cv_consolechat.value == 1 || dedicated || vid.width < 640 || splitscreen)
|
||||||
|
#endif
|
||||||
|
#define CHAT_MUTE (cv_mute.value && !(server || IsPlayerAdmin(consoleplayer))) // this still allows to open the chat but not to type. That's used for scrolling and whatnot.
|
||||||
|
#define OLD_MUTE (OLDCHAT && cv_mute.value && !(server || IsPlayerAdmin(consoleplayer))) // this is used to prevent oldchat from opening when muted.
|
||||||
|
|
||||||
|
// some functions
|
||||||
|
void HU_AddChatText(const char *text, boolean playsound);
|
||||||
|
|
||||||
|
// set true when entering a chat message
|
||||||
|
extern boolean chat_on;
|
||||||
|
|
||||||
extern patch_t *hu_font[HU_FONTSIZE], *kart_font[KART_FONTSIZE], *tny_font[HU_FONTSIZE]; // SRB2kart
|
extern patch_t *hu_font[HU_FONTSIZE], *kart_font[KART_FONTSIZE], *tny_font[HU_FONTSIZE]; // SRB2kart
|
||||||
extern patch_t *tallnum[10];
|
extern patch_t *tallnum[10];
|
||||||
|
@ -77,18 +91,6 @@ extern patch_t *bmatcico;
|
||||||
extern patch_t *tagico;
|
extern patch_t *tagico;
|
||||||
extern patch_t *tallminus;
|
extern patch_t *tallminus;
|
||||||
|
|
||||||
#define CHAT_BUFSIZE 64 // that's enough messages, right? We'll delete the older ones when that gets out of hand.
|
|
||||||
|
|
||||||
#define OLDCHAT (cv_consolechat.value == 1 || dedicated || vid.width < 640)
|
|
||||||
#define CHAT_MUTE (cv_mute.value && !(server || IsPlayerAdmin(consoleplayer))) // this still allows to open the chat but not to type. That's used for scrolling and whatnot.
|
|
||||||
#define OLD_MUTE (OLDCHAT && cv_mute.value && !(server || IsPlayerAdmin(consoleplayer))) // this is used to prevent oldchat from opening when muted.
|
|
||||||
|
|
||||||
// some functions
|
|
||||||
void HU_AddChatText(const char *text, boolean playsound);
|
|
||||||
|
|
||||||
// set true when entering a chat message
|
|
||||||
extern boolean chat_on;
|
|
||||||
|
|
||||||
// set true whenever the tab rankings are being shown for any reason
|
// set true whenever the tab rankings are being shown for any reason
|
||||||
extern boolean hu_showscores;
|
extern boolean hu_showscores;
|
||||||
|
|
||||||
|
@ -101,18 +103,15 @@ void HU_LoadGraphics(void);
|
||||||
void HU_Start(void);
|
void HU_Start(void);
|
||||||
|
|
||||||
boolean HU_Responder(event_t *ev);
|
boolean HU_Responder(event_t *ev);
|
||||||
|
|
||||||
void HU_Ticker(void);
|
void HU_Ticker(void);
|
||||||
void HU_Drawer(void);
|
void HU_Drawer(void);
|
||||||
char HU_dequeueChatChar(void);
|
char HU_dequeueChatChar(void);
|
||||||
void HU_Erase(void);
|
void HU_Erase(void);
|
||||||
void HU_clearChatChars(void);
|
void HU_clearChatChars(void);
|
||||||
void HU_drawPing(INT32 x, INT32 y, INT32 ping, boolean notext); // Lat': Ping drawer for scoreboard.
|
void HU_drawPing(INT32 x, INT32 y, INT32 ping, boolean notext); // Lat': Ping drawer for scoreboard.
|
||||||
void HU_DrawTeamTabRankings(playersort_t *tab, INT32 whiteplayer);
|
|
||||||
void HU_DrawDualTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scorelines, INT32 whiteplayer);
|
|
||||||
void HU_DrawTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scorelines, INT32 whiteplayer, INT32 hilicol);
|
|
||||||
//void HU_DrawTeamTabRankings(playersort_t *tab, INT32 whiteplayer);
|
//void HU_DrawTeamTabRankings(playersort_t *tab, INT32 whiteplayer);
|
||||||
//void HU_DrawDualTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scorelines, INT32 whiteplayer);
|
//void HU_DrawDualTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scorelines, INT32 whiteplayer);
|
||||||
|
void HU_DrawTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scorelines, INT32 whiteplayer, INT32 hilicol);
|
||||||
void HU_DrawEmeralds(INT32 x, INT32 y, INT32 pemeralds);
|
void HU_DrawEmeralds(INT32 x, INT32 y, INT32 pemeralds);
|
||||||
|
|
||||||
INT32 HU_CreateTeamScoresTbl(playersort_t *tab, UINT32 dmtotals[]);
|
INT32 HU_CreateTeamScoresTbl(playersort_t *tab, UINT32 dmtotals[]);
|
||||||
|
|
|
@ -1310,7 +1310,7 @@ void I_ShutdownTcpDriver(void)
|
||||||
static SINT8 SOCK_NetMakeNodewPort(const char *address, const char *port)
|
static SINT8 SOCK_NetMakeNodewPort(const char *address, const char *port)
|
||||||
{
|
{
|
||||||
SINT8 newnode = -1;
|
SINT8 newnode = -1;
|
||||||
struct my_addrinfo *ai, *runp, hints;
|
struct my_addrinfo *ai = NULL, *runp, hints;
|
||||||
int gaie;
|
int gaie;
|
||||||
|
|
||||||
if (!port || !port[0])
|
if (!port || !port[0])
|
||||||
|
|
|
@ -15476,7 +15476,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
S_JAWZ_DEAD1, // deathstate
|
S_JAWZ_DEAD1, // deathstate
|
||||||
S_JAWZ_DEAD2, // xdeathstate
|
S_JAWZ_DEAD2, // xdeathstate
|
||||||
sfx_s3k5d, // deathsound
|
sfx_s3k5d, // deathsound
|
||||||
7*FRACUNIT, // speed
|
64*FRACUNIT, // speed
|
||||||
16*FRACUNIT, // radius
|
16*FRACUNIT, // radius
|
||||||
32*FRACUNIT, // height
|
32*FRACUNIT, // height
|
||||||
0, // display offset
|
0, // display offset
|
||||||
|
@ -15503,7 +15503,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
S_JAWZ_DEAD1, // deathstate
|
S_JAWZ_DEAD1, // deathstate
|
||||||
S_JAWZ_DEAD2, // xdeathstate
|
S_JAWZ_DEAD2, // xdeathstate
|
||||||
sfx_s3k5d, // deathsound
|
sfx_s3k5d, // deathsound
|
||||||
56*FRACUNIT, // speed
|
64*FRACUNIT, // speed
|
||||||
16*FRACUNIT, // radius
|
16*FRACUNIT, // radius
|
||||||
32*FRACUNIT, // height
|
32*FRACUNIT, // height
|
||||||
0, // display offset
|
0, // display offset
|
||||||
|
@ -15773,7 +15773,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
S_BALLHOG_DEAD, // deathstate
|
S_BALLHOG_DEAD, // deathstate
|
||||||
S_NULL, // xdeathstate
|
S_NULL, // xdeathstate
|
||||||
sfx_hogbom, // deathsound
|
sfx_hogbom, // deathsound
|
||||||
0, // speed
|
64*FRACUNIT, // speed
|
||||||
16*FRACUNIT, // radius
|
16*FRACUNIT, // radius
|
||||||
32*FRACUNIT, // height
|
32*FRACUNIT, // height
|
||||||
0, // display offset
|
0, // display offset
|
||||||
|
|
153
src/k_kart.c
153
src/k_kart.c
|
@ -648,7 +648,7 @@ static INT32 K_KartGetItemOdds(UINT8 pos, SINT8 item, fixed_t mashed)
|
||||||
{
|
{
|
||||||
secondist = P_AproxDistance(P_AproxDistance(players[first].mo->x - players[second].mo->x,
|
secondist = P_AproxDistance(P_AproxDistance(players[first].mo->x - players[second].mo->x,
|
||||||
players[first].mo->y - players[second].mo->y),
|
players[first].mo->y - players[second].mo->y),
|
||||||
players[first].mo->z - players[second].mo->z) / mapheaderinfo[gamemap-1]->mobj_scale;
|
players[first].mo->z - players[second].mo->z) / mapobjectscale;
|
||||||
if (franticitems)
|
if (franticitems)
|
||||||
secondist = (15*secondist/14);
|
secondist = (15*secondist/14);
|
||||||
if (pingame < 8 && !G_BattleGametype())
|
if (pingame < 8 && !G_BattleGametype())
|
||||||
|
@ -809,7 +809,7 @@ static INT32 K_FindUseodds(player_t *player, fixed_t mashed, INT32 pingame, INT3
|
||||||
&& players[i].kartstuff[k_position] < player->kartstuff[k_position])
|
&& players[i].kartstuff[k_position] < player->kartstuff[k_position])
|
||||||
pdis += P_AproxDistance(P_AproxDistance(players[i].mo->x - player->mo->x,
|
pdis += P_AproxDistance(P_AproxDistance(players[i].mo->x - player->mo->x,
|
||||||
players[i].mo->y - player->mo->y),
|
players[i].mo->y - player->mo->y),
|
||||||
players[i].mo->z - player->mo->z) / mapheaderinfo[gamemap-1]->mobj_scale
|
players[i].mo->z - player->mo->z) / mapobjectscale
|
||||||
* (pingame - players[i].kartstuff[k_position])
|
* (pingame - players[i].kartstuff[k_position])
|
||||||
/ max(1, ((pingame - 1) * (pingame + 1) / 3));
|
/ max(1, ((pingame - 1) * (pingame + 1) / 3));
|
||||||
}
|
}
|
||||||
|
@ -1121,13 +1121,13 @@ void K_KartBouncing(mobj_t *mobj1, mobj_t *mobj2, boolean bounce, boolean solid)
|
||||||
momdify = mobj1->momy - mobj2->momy;
|
momdify = mobj1->momy - mobj2->momy;
|
||||||
|
|
||||||
// if the speed difference is less than this let's assume they're going proportionately faster from each other
|
// if the speed difference is less than this let's assume they're going proportionately faster from each other
|
||||||
if (P_AproxDistance(momdifx, momdify) < (25*mapheaderinfo[gamemap-1]->mobj_scale))
|
if (P_AproxDistance(momdifx, momdify) < (25*mapobjectscale))
|
||||||
{
|
{
|
||||||
fixed_t momdiflength = P_AproxDistance(momdifx, momdify);
|
fixed_t momdiflength = P_AproxDistance(momdifx, momdify);
|
||||||
fixed_t normalisedx = FixedDiv(momdifx, momdiflength);
|
fixed_t normalisedx = FixedDiv(momdifx, momdiflength);
|
||||||
fixed_t normalisedy = FixedDiv(momdify, momdiflength);
|
fixed_t normalisedy = FixedDiv(momdify, momdiflength);
|
||||||
momdifx = FixedMul((25*mapheaderinfo[gamemap-1]->mobj_scale), normalisedx);
|
momdifx = FixedMul((25*mapobjectscale), normalisedx);
|
||||||
momdify = FixedMul((25*mapheaderinfo[gamemap-1]->mobj_scale), normalisedy);
|
momdify = FixedMul((25*mapobjectscale), normalisedy);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adds the OTHER player's momentum, so that it reduces the chance of you being "inside" the other object
|
// Adds the OTHER player's momentum, so that it reduces the chance of you being "inside" the other object
|
||||||
|
@ -1433,10 +1433,10 @@ void K_RespawnChecker(player_t *player)
|
||||||
{
|
{
|
||||||
if (player->kartstuff[k_growshrinktimer] < 0)
|
if (player->kartstuff[k_growshrinktimer] < 0)
|
||||||
{
|
{
|
||||||
player->mo->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/TICRATE;
|
player->mo->scalespeed = mapobjectscale/TICRATE;
|
||||||
player->mo->destscale = 6*(mapheaderinfo[gamemap-1]->mobj_scale)/8;
|
player->mo->destscale = (6*mapobjectscale)/8;
|
||||||
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
||||||
player->mo->destscale = 6*player->mo->destscale/8;
|
player->mo->destscale = (6*player->mo->destscale)/8;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!P_IsObjectOnGround(player->mo) && !mapreset)
|
if (!P_IsObjectOnGround(player->mo) && !mapreset)
|
||||||
|
@ -1728,7 +1728,7 @@ fixed_t K_GetKartSpeed(player_t *player, boolean doboostpower)
|
||||||
fixed_t finalspeed;
|
fixed_t finalspeed;
|
||||||
|
|
||||||
if (doboostpower && !player->kartstuff[k_pogospring] && !P_IsObjectOnGround(player->mo))
|
if (doboostpower && !player->kartstuff[k_pogospring] && !P_IsObjectOnGround(player->mo))
|
||||||
return (75*mapheaderinfo[gamemap-1]->mobj_scale); // air speed cap
|
return (75*mapobjectscale); // air speed cap
|
||||||
|
|
||||||
switch (gamespeed)
|
switch (gamespeed)
|
||||||
{
|
{
|
||||||
|
@ -1793,7 +1793,7 @@ fixed_t K_3dKartMovement(player_t *player, boolean onground, fixed_t forwardmove
|
||||||
|
|
||||||
if (player->kartstuff[k_pogospring]) // Pogo Spring minimum/maximum thrust
|
if (player->kartstuff[k_pogospring]) // Pogo Spring minimum/maximum thrust
|
||||||
{
|
{
|
||||||
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale /*+ (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale)*/;
|
const fixed_t hscale = mapobjectscale /*+ (mapobjectscale - player->mo->scale)*/;
|
||||||
const fixed_t minspeed = 24*hscale;
|
const fixed_t minspeed = 24*hscale;
|
||||||
const fixed_t maxspeed = 28*hscale;
|
const fixed_t maxspeed = 28*hscale;
|
||||||
|
|
||||||
|
@ -1994,10 +1994,10 @@ static void K_RemoveGrowShrink(player_t *player)
|
||||||
player->kartstuff[k_growshrinktimer] = 0;
|
player->kartstuff[k_growshrinktimer] = 0;
|
||||||
if (player->kartstuff[k_invincibilitytimer] == 0)
|
if (player->kartstuff[k_invincibilitytimer] == 0)
|
||||||
player->mo->color = player->skincolor;
|
player->mo->color = player->skincolor;
|
||||||
player->mo->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/TICRATE;
|
player->mo->scalespeed = mapobjectscale/TICRATE;
|
||||||
player->mo->destscale = mapheaderinfo[gamemap-1]->mobj_scale;
|
player->mo->destscale = mapobjectscale;
|
||||||
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
||||||
player->mo->destscale = 6*player->mo->destscale/8;
|
player->mo->destscale = (6*player->mo->destscale)/8;
|
||||||
P_RestoreMusic(player);
|
P_RestoreMusic(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2161,7 +2161,7 @@ void K_ExplodePlayer(player_t *player, mobj_t *source, mobj_t *inflictor) // A b
|
||||||
if (source && source != player->mo && source->player)
|
if (source && source != player->mo && source->player)
|
||||||
K_PlayHitEmSound(source);
|
K_PlayHitEmSound(source);
|
||||||
|
|
||||||
player->mo->momz = 18*(mapheaderinfo[gamemap-1]->mobj_scale);
|
player->mo->momz = 18*mapobjectscale;
|
||||||
player->mo->momx = player->mo->momy = 0;
|
player->mo->momx = player->mo->momy = 0;
|
||||||
|
|
||||||
player->kartstuff[k_sneakertimer] = 0;
|
player->kartstuff[k_sneakertimer] = 0;
|
||||||
|
@ -2464,25 +2464,25 @@ void K_SpawnMineExplosion(mobj_t *source, UINT8 color)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t angle, INT32 flags2, fixed_t speed)
|
static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t an, INT32 flags2, fixed_t speed)
|
||||||
{
|
{
|
||||||
mobj_t *th;
|
mobj_t *th;
|
||||||
angle_t an;
|
|
||||||
fixed_t x, y, z;
|
fixed_t x, y, z;
|
||||||
fixed_t finalspeed = speed;
|
fixed_t finalspeed = speed;
|
||||||
mobj_t *throwmo;
|
mobj_t *throwmo;
|
||||||
//INT32 dir;
|
|
||||||
|
|
||||||
// angle at which you fire, is player angle
|
|
||||||
an = angle;
|
|
||||||
|
|
||||||
//if (source->player->kartstuff[k_throwdir] != 0)
|
|
||||||
// dir = source->player->kartstuff[k_throwdir];
|
|
||||||
//else
|
|
||||||
// dir = 1;
|
|
||||||
|
|
||||||
if (source->player && source->player->speed > K_GetKartSpeed(source->player, false))
|
if (source->player && source->player->speed > K_GetKartSpeed(source->player, false))
|
||||||
finalspeed = FixedMul(speed, FixedDiv(source->player->speed, K_GetKartSpeed(source->player, false)));
|
{
|
||||||
|
angle_t input = source->angle - an;
|
||||||
|
boolean invert = (input > ANGLE_180);
|
||||||
|
if (invert)
|
||||||
|
input = InvAngle(input);
|
||||||
|
|
||||||
|
finalspeed = max(speed, FixedMul(speed, FixedMul(
|
||||||
|
FixedDiv(source->player->speed, K_GetKartSpeed(source->player, false)), // Multiply speed to be proportional to your own, boosted maxspeed.
|
||||||
|
(((180<<FRACBITS) - AngleFixed(input)) / 180) // multiply speed based on angle diff... i.e: don't do this for firing backward :V
|
||||||
|
)));
|
||||||
|
}
|
||||||
|
|
||||||
x = source->x + source->momx + FixedMul(finalspeed, FINECOSINE(an>>ANGLETOFINESHIFT));
|
x = source->x + source->momx + FixedMul(finalspeed, FINECOSINE(an>>ANGLETOFINESHIFT));
|
||||||
y = source->y + source->momy + FixedMul(finalspeed, FINESINE(an>>ANGLETOFINESHIFT));
|
y = source->y + source->momy + FixedMul(finalspeed, FINESINE(an>>ANGLETOFINESHIFT));
|
||||||
|
@ -2499,15 +2499,8 @@ static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t angle
|
||||||
|
|
||||||
th->threshold = 10;
|
th->threshold = 10;
|
||||||
|
|
||||||
#ifdef WEAPON_SFX
|
|
||||||
//Since rail and bounce have no thrown objects, this hack is necessary.
|
|
||||||
//Is creating thrown objects for rail and bounce more or less desirable than this?
|
|
||||||
if (th->info->seesound && !(th->flags2 & MF2_RAILRING) && !(th->flags2 & MF2_SCATTER))
|
|
||||||
S_StartSound(source, th->info->seesound);
|
|
||||||
#else
|
|
||||||
if (th->info->seesound)
|
if (th->info->seesound)
|
||||||
S_StartSound(source, th->info->seesound);
|
S_StartSound(source, th->info->seesound);
|
||||||
#endif
|
|
||||||
|
|
||||||
P_SetTarget(&th->target, source);
|
P_SetTarget(&th->target, source);
|
||||||
|
|
||||||
|
@ -2537,6 +2530,7 @@ static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t angle
|
||||||
th->color = source->player->skincolor;
|
th->color = source->player->skincolor;
|
||||||
else
|
else
|
||||||
th->color = SKINCOLOR_GREY;
|
th->color = SKINCOLOR_GREY;
|
||||||
|
th->movefactor = finalspeed;
|
||||||
break;
|
break;
|
||||||
case MT_JAWZ:
|
case MT_JAWZ:
|
||||||
if (source && source->player)
|
if (source && source->player)
|
||||||
|
@ -2546,6 +2540,9 @@ static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t angle
|
||||||
/* FALLTHRU */
|
/* FALLTHRU */
|
||||||
case MT_JAWZ_DUD:
|
case MT_JAWZ_DUD:
|
||||||
S_StartSound(th, th->info->activesound);
|
S_StartSound(th, th->info->activesound);
|
||||||
|
/* FALLTHRU */
|
||||||
|
case MT_SPB:
|
||||||
|
th->movefactor = finalspeed;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
@ -2816,7 +2813,7 @@ void K_DriftDustHandling(mobj_t *spawner)
|
||||||
{
|
{
|
||||||
if (spawner->player->pflags & PF_SKIDDOWN)
|
if (spawner->player->pflags & PF_SKIDDOWN)
|
||||||
{
|
{
|
||||||
anglediff = abs(spawner->angle - spawner->player->frameangle);
|
anglediff = abs((signed)(spawner->angle - spawner->player->frameangle));
|
||||||
if (leveltime % 6 == 0)
|
if (leveltime % 6 == 0)
|
||||||
S_StartSound(spawner, sfx_screec); // repeated here because it doesn't always happen to be within the range when this is the case
|
S_StartSound(spawner, sfx_screec); // repeated here because it doesn't always happen to be within the range when this is the case
|
||||||
}
|
}
|
||||||
|
@ -2830,7 +2827,7 @@ void K_DriftDustHandling(mobj_t *spawner)
|
||||||
if (spawner->player->cmd.forwardmove < 0)
|
if (spawner->player->cmd.forwardmove < 0)
|
||||||
playerangle += ANGLE_180;
|
playerangle += ANGLE_180;
|
||||||
|
|
||||||
anglediff = abs(playerangle - R_PointToAngle2(0, 0, spawner->player->rmomx, spawner->player->rmomy));
|
anglediff = abs((signed)(playerangle - R_PointToAngle2(0, 0, spawner->player->rmomx, spawner->player->rmomy)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -2838,7 +2835,7 @@ void K_DriftDustHandling(mobj_t *spawner)
|
||||||
if (P_AproxDistance(spawner->momx, spawner->momy) < 5<<FRACBITS)
|
if (P_AproxDistance(spawner->momx, spawner->momy) < 5<<FRACBITS)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
anglediff = abs(spawner->angle - R_PointToAngle2(0, 0, spawner->momx, spawner->momy));
|
anglediff = abs((signed)(spawner->angle - R_PointToAngle2(0, 0, spawner->momx, spawner->momy)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (anglediff > ANGLE_180)
|
if (anglediff > ANGLE_180)
|
||||||
|
@ -2895,17 +2892,29 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
// Figure out projectile speed by game speed
|
// Figure out projectile speed by game speed
|
||||||
switch (gamespeed)
|
if (missile && mapthing != MT_BALLHOG) // Trying to keep compatability...
|
||||||
{
|
{
|
||||||
case 0:
|
PROJSPEED = mobjinfo[mapthing].speed;
|
||||||
PROJSPEED = 68*(mapheaderinfo[gamemap-1]->mobj_scale); // Avg Speed is 34
|
if (gamespeed == 0)
|
||||||
break;
|
PROJSPEED = FixedMul(PROJSPEED, FRACUNIT-FRACUNIT/4);
|
||||||
case 2:
|
else if (gamespeed == 2)
|
||||||
PROJSPEED = 96*(mapheaderinfo[gamemap-1]->mobj_scale); // Avg Speed is 48
|
PROJSPEED = FixedMul(PROJSPEED, FRACUNIT+FRACUNIT/4);
|
||||||
break;
|
PROJSPEED = FixedMul(PROJSPEED, mapobjectscale);
|
||||||
default:
|
}
|
||||||
PROJSPEED = 82*(mapheaderinfo[gamemap-1]->mobj_scale); // Avg Speed is 41
|
else
|
||||||
break;
|
{
|
||||||
|
switch (gamespeed)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
PROJSPEED = 68*mapobjectscale; // Avg Speed is 34
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
PROJSPEED = 96*mapobjectscale; // Avg Speed is 48
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
PROJSPEED = 82*mapobjectscale; // Avg Speed is 41
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (altthrow)
|
if (altthrow)
|
||||||
|
@ -2965,7 +2974,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
||||||
if (dir == -1 && mapthing != MT_SPB)
|
if (dir == -1 && mapthing != MT_SPB)
|
||||||
{
|
{
|
||||||
// Shoot backward
|
// Shoot backward
|
||||||
mo = K_SpawnKartMissile(player->mo, mapthing, player->mo->angle + ANGLE_180, 0, PROJSPEED/4);
|
mo = K_SpawnKartMissile(player->mo, mapthing, player->mo->angle + ANGLE_180, 0, PROJSPEED/2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -2991,7 +3000,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
||||||
if (mo)
|
if (mo)
|
||||||
{
|
{
|
||||||
angle_t fa = player->mo->angle>>ANGLETOFINESHIFT;
|
angle_t fa = player->mo->angle>>ANGLETOFINESHIFT;
|
||||||
INT32 HEIGHT = (20 + (dir*10))*(mapheaderinfo[gamemap-1]->mobj_scale) + player->mo->momz;
|
INT32 HEIGHT = (20 + (dir*10))*mapobjectscale + player->mo->momz;
|
||||||
|
|
||||||
mo->momx = player->mo->momx + FixedMul(FINECOSINE(fa), (altthrow == 2 ? 2*PROJSPEED/3 : PROJSPEED));
|
mo->momx = player->mo->momx + FixedMul(FINECOSINE(fa), (altthrow == 2 ? 2*PROJSPEED/3 : PROJSPEED));
|
||||||
mo->momy = player->mo->momy + FixedMul(FINESINE(fa), (altthrow == 2 ? 2*PROJSPEED/3 : PROJSPEED));
|
mo->momy = player->mo->momy + FixedMul(FINESINE(fa), (altthrow == 2 ? 2*PROJSPEED/3 : PROJSPEED));
|
||||||
|
@ -3281,10 +3290,10 @@ static void K_DoShrink(player_t *user)
|
||||||
{
|
{
|
||||||
// Start shrinking!
|
// Start shrinking!
|
||||||
K_DropItems(&players[i]);
|
K_DropItems(&players[i]);
|
||||||
players[i].mo->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/TICRATE;
|
players[i].mo->scalespeed = mapobjectscale/TICRATE;
|
||||||
players[i].mo->destscale = 6*(mapheaderinfo[gamemap-1]->mobj_scale)/8;
|
players[i].mo->destscale = (6*mapobjectscale)/8;
|
||||||
if (cv_kartdebugshrink.value && !modeattacking && !players[i].bot)
|
if (cv_kartdebugshrink.value && !modeattacking && !players[i].bot)
|
||||||
players[i].mo->destscale = 6*players[i].mo->destscale/8;
|
players[i].mo->destscale = (6*players[i].mo->destscale)/8;
|
||||||
players[i].kartstuff[k_growshrinktimer] = -(200+(40*(MAXPLAYERS-players[i].kartstuff[k_position])));
|
players[i].kartstuff[k_growshrinktimer] = -(200+(40*(MAXPLAYERS-players[i].kartstuff[k_position])));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3301,7 +3310,7 @@ static void K_DoShrink(player_t *user)
|
||||||
|
|
||||||
void K_DoPogoSpring(mobj_t *mo, fixed_t vertispeed, UINT8 sound)
|
void K_DoPogoSpring(mobj_t *mo, fixed_t vertispeed, UINT8 sound)
|
||||||
{
|
{
|
||||||
const fixed_t vscale = mapheaderinfo[gamemap-1]->mobj_scale + (mo->scale - mapheaderinfo[gamemap-1]->mobj_scale);
|
const fixed_t vscale = mapobjectscale + (mo->scale - mapobjectscale);
|
||||||
|
|
||||||
if (mo->player && mo->player->spectator)
|
if (mo->player && mo->player->spectator)
|
||||||
return;
|
return;
|
||||||
|
@ -3499,8 +3508,8 @@ void K_DropHnextList(player_t *player)
|
||||||
dropwork->z += flip;
|
dropwork->z += flip;
|
||||||
dropwork->momx = player->mo->momx>>1;
|
dropwork->momx = player->mo->momx>>1;
|
||||||
dropwork->momy = player->mo->momy>>1;
|
dropwork->momy = player->mo->momy>>1;
|
||||||
dropwork->momz = 3*flip*mapheaderinfo[gamemap-1]->mobj_scale;
|
dropwork->momz = 3*flip*mapobjectscale;
|
||||||
P_Thrust(dropwork, work->angle - ANGLE_90, 6*(mapheaderinfo[gamemap-1]->mobj_scale));
|
P_Thrust(dropwork, work->angle - ANGLE_90, 6*mapobjectscale);
|
||||||
dropwork->movecount = 2;
|
dropwork->movecount = 2;
|
||||||
dropwork->movedir = work->angle - ANGLE_90;
|
dropwork->movedir = work->angle - ANGLE_90;
|
||||||
P_SetMobjState(dropwork, dropwork->info->deathstate);
|
P_SetMobjState(dropwork, dropwork->info->deathstate);
|
||||||
|
@ -3556,8 +3565,8 @@ void K_DropItems(player_t *player)
|
||||||
drop->angle = player->mo->angle + ANGLE_90;
|
drop->angle = player->mo->angle + ANGLE_90;
|
||||||
P_Thrust(drop,
|
P_Thrust(drop,
|
||||||
FixedAngle(P_RandomFixed()*180) + player->mo->angle + ANGLE_90,
|
FixedAngle(P_RandomFixed()*180) + player->mo->angle + ANGLE_90,
|
||||||
16*(mapheaderinfo[gamemap-1]->mobj_scale));
|
16*mapobjectscale);
|
||||||
drop->momz = P_MobjFlip(player->mo)*3*(mapheaderinfo[gamemap-1]->mobj_scale);
|
drop->momz = P_MobjFlip(player->mo)*3*mapobjectscale;
|
||||||
|
|
||||||
drop->threshold = (thunderhack ? KITEM_THUNDERSHIELD : player->kartstuff[k_itemtype]);
|
drop->threshold = (thunderhack ? KITEM_THUNDERSHIELD : player->kartstuff[k_itemtype]);
|
||||||
drop->movecount = player->kartstuff[k_itemamount];
|
drop->movecount = player->kartstuff[k_itemamount];
|
||||||
|
@ -4014,7 +4023,7 @@ static void K_UpdateEngineSounds(player_t *player, ticcmd_t *cmd)
|
||||||
if ((leveltime >= starttime-(2*TICRATE) && leveltime <= starttime) || (player->kartstuff[k_respawn] == 1)) // Startup boosts
|
if ((leveltime >= starttime-(2*TICRATE) && leveltime <= starttime) || (player->kartstuff[k_respawn] == 1)) // Startup boosts
|
||||||
targetsnd = ((cmd->buttons & BT_ACCELERATE) ? 12 : 0);
|
targetsnd = ((cmd->buttons & BT_ACCELERATE) ? 12 : 0);
|
||||||
else
|
else
|
||||||
targetsnd = (((6*cmd->forwardmove)/25) + ((player->speed / mapheaderinfo[gamemap-1]->mobj_scale)/5))/2;
|
targetsnd = (((6*cmd->forwardmove)/25) + ((player->speed / mapobjectscale)/5))/2;
|
||||||
|
|
||||||
if (targetsnd < 0)
|
if (targetsnd < 0)
|
||||||
targetsnd = 0;
|
targetsnd = 0;
|
||||||
|
@ -4051,7 +4060,7 @@ static void K_UpdateEngineSounds(player_t *player, ticcmd_t *cmd)
|
||||||
dist = P_AproxDistance(P_AproxDistance(player->mo->x-players[i].mo->x,
|
dist = P_AproxDistance(P_AproxDistance(player->mo->x-players[i].mo->x,
|
||||||
player->mo->y-players[i].mo->y), player->mo->z-players[i].mo->z) / 2;
|
player->mo->y-players[i].mo->y), player->mo->z-players[i].mo->z) / 2;
|
||||||
|
|
||||||
dist = FixedDiv(dist, mapheaderinfo[gamemap-1]->mobj_scale);
|
dist = FixedDiv(dist, mapobjectscale);
|
||||||
|
|
||||||
if (dist > 1536<<FRACBITS)
|
if (dist > 1536<<FRACBITS)
|
||||||
continue;
|
continue;
|
||||||
|
@ -4777,22 +4786,22 @@ void K_KartUpdatePosition(player_t *player)
|
||||||
mo->y - players[i].mo->y),
|
mo->y - players[i].mo->y),
|
||||||
mo->z - players[i].mo->z) / FRACUNIT;
|
mo->z - players[i].mo->z) / FRACUNIT;
|
||||||
|
|
||||||
if (mo->health == player->starpostnum)
|
if (mo->health == player->starpostnum && (!mo->movecount || mo->movecount == player->laps+1))
|
||||||
{
|
{
|
||||||
player->kartstuff[k_prevcheck] += pmo;
|
player->kartstuff[k_prevcheck] += pmo;
|
||||||
ppcd++;
|
ppcd++;
|
||||||
}
|
}
|
||||||
if (mo->health == (player->starpostnum + 1))
|
if (mo->health == (player->starpostnum + 1) && (!mo->movecount || mo->movecount == player->laps+1))
|
||||||
{
|
{
|
||||||
player->kartstuff[k_nextcheck] += pmo;
|
player->kartstuff[k_nextcheck] += pmo;
|
||||||
pncd++;
|
pncd++;
|
||||||
}
|
}
|
||||||
if (mo->health == players[i].starpostnum)
|
if (mo->health == players[i].starpostnum && (!mo->movecount || mo->movecount == players[i].laps+1))
|
||||||
{
|
{
|
||||||
players[i].kartstuff[k_prevcheck] += imo;
|
players[i].kartstuff[k_prevcheck] += imo;
|
||||||
ipcd++;
|
ipcd++;
|
||||||
}
|
}
|
||||||
if (mo->health == (players[i].starpostnum + 1))
|
if (mo->health == (players[i].starpostnum + 1) && (!mo->movecount || mo->movecount == players[i].laps+1))
|
||||||
{
|
{
|
||||||
players[i].kartstuff[k_nextcheck] += imo;
|
players[i].kartstuff[k_nextcheck] += imo;
|
||||||
incd++;
|
incd++;
|
||||||
|
@ -5239,10 +5248,10 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
&& player->kartstuff[k_growshrinktimer] <= 0) // Grow holds the item box hostage
|
&& player->kartstuff[k_growshrinktimer] <= 0) // Grow holds the item box hostage
|
||||||
{
|
{
|
||||||
K_PlayPowerGloatSound(player->mo);
|
K_PlayPowerGloatSound(player->mo);
|
||||||
player->mo->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/TICRATE;
|
player->mo->scalespeed = mapobjectscale/TICRATE;
|
||||||
player->mo->destscale = 3*(mapheaderinfo[gamemap-1]->mobj_scale)/2;
|
player->mo->destscale = (3*mapobjectscale)/2;
|
||||||
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
||||||
player->mo->destscale = 6*player->mo->destscale/8;
|
player->mo->destscale = (6*player->mo->destscale)/8;
|
||||||
player->kartstuff[k_growshrinktimer] = itemtime+(4*TICRATE); // 12 seconds
|
player->kartstuff[k_growshrinktimer] = itemtime+(4*TICRATE); // 12 seconds
|
||||||
P_RestoreMusic(player);
|
P_RestoreMusic(player);
|
||||||
if (!P_IsLocalPlayer(player))
|
if (!P_IsLocalPlayer(player))
|
||||||
|
@ -5486,10 +5495,10 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
// Increase your size while charging your engine.
|
// Increase your size while charging your engine.
|
||||||
if (leveltime < starttime+10)
|
if (leveltime < starttime+10)
|
||||||
{
|
{
|
||||||
player->mo->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/12;
|
player->mo->scalespeed = mapobjectscale/12;
|
||||||
player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale) + (player->kartstuff[k_boostcharge]*131);
|
player->mo->destscale = mapobjectscale + (player->kartstuff[k_boostcharge]*131);
|
||||||
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
if (cv_kartdebugshrink.value && !modeattacking && !player->bot)
|
||||||
player->mo->destscale = 6*player->mo->destscale/8;
|
player->mo->destscale = (6*player->mo->destscale)/8;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Determine the outcome of your charge.
|
// Determine the outcome of your charge.
|
||||||
|
@ -7074,17 +7083,17 @@ static void K_drawKartSpeedometer(void)
|
||||||
|
|
||||||
if (cv_kartspeedometer.value == 1) // Kilometers
|
if (cv_kartspeedometer.value == 1) // Kilometers
|
||||||
{
|
{
|
||||||
convSpeed = FixedDiv(FixedMul(stplyr->speed, 142371), mapheaderinfo[gamemap-1]->mobj_scale)/FRACUNIT; // 2.172409058
|
convSpeed = FixedDiv(FixedMul(stplyr->speed, 142371), mapobjectscale)/FRACUNIT; // 2.172409058
|
||||||
V_DrawKartString(SPDM_X, SPDM_Y, V_HUDTRANS|splitflags, va("%3d km/h", convSpeed));
|
V_DrawKartString(SPDM_X, SPDM_Y, V_HUDTRANS|splitflags, va("%3d km/h", convSpeed));
|
||||||
}
|
}
|
||||||
else if (cv_kartspeedometer.value == 2) // Miles
|
else if (cv_kartspeedometer.value == 2) // Miles
|
||||||
{
|
{
|
||||||
convSpeed = FixedDiv(FixedMul(stplyr->speed, 88465), mapheaderinfo[gamemap-1]->mobj_scale)/FRACUNIT; // 1.349868774
|
convSpeed = FixedDiv(FixedMul(stplyr->speed, 88465), mapobjectscale)/FRACUNIT; // 1.349868774
|
||||||
V_DrawKartString(SPDM_X, SPDM_Y, V_HUDTRANS|splitflags, va("%3d mph", convSpeed));
|
V_DrawKartString(SPDM_X, SPDM_Y, V_HUDTRANS|splitflags, va("%3d mph", convSpeed));
|
||||||
}
|
}
|
||||||
else if (cv_kartspeedometer.value == 3) // Fracunits
|
else if (cv_kartspeedometer.value == 3) // Fracunits
|
||||||
{
|
{
|
||||||
convSpeed = FixedDiv(stplyr->speed, mapheaderinfo[gamemap-1]->mobj_scale)/FRACUNIT;
|
convSpeed = FixedDiv(stplyr->speed, mapobjectscale)/FRACUNIT;
|
||||||
V_DrawKartString(SPDM_X, SPDM_Y, V_HUDTRANS|splitflags, va("%3d fu/t", convSpeed));
|
V_DrawKartString(SPDM_X, SPDM_Y, V_HUDTRANS|splitflags, va("%3d fu/t", convSpeed));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7907,7 +7916,7 @@ static void K_drawLapStartAnim(void)
|
||||||
{
|
{
|
||||||
V_DrawFixedPatch((BASEVIDWIDTH/2 + (32*max(0, stplyr->kartstuff[k_lapanimation]-76)))*FRACUNIT,
|
V_DrawFixedPatch((BASEVIDWIDTH/2 + (32*max(0, stplyr->kartstuff[k_lapanimation]-76)))*FRACUNIT,
|
||||||
(48 - (32*max(0, progress-76))
|
(48 - (32*max(0, progress-76))
|
||||||
+ 4 - abs((leveltime % 8) - 4))*FRACUNIT,
|
+ 4 - abs((signed)((leveltime % 8) - 4)))*FRACUNIT,
|
||||||
FRACUNIT, V_SNAPTOTOP|V_HUDTRANS,
|
FRACUNIT, V_SNAPTOTOP|V_HUDTRANS,
|
||||||
kp_lapanim_hand[stplyr->kartstuff[k_laphand]-1], NULL);
|
kp_lapanim_hand[stplyr->kartstuff[k_laphand]-1], NULL);
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
#include "m_random.h"
|
#include "m_random.h"
|
||||||
#include "s_sound.h"
|
#include "s_sound.h"
|
||||||
#include "g_game.h"
|
#include "g_game.h"
|
||||||
#include "hu_stuff.h"
|
#include "hu_stuff.h" // HU_AddChatText
|
||||||
#include "console.h"
|
#include "console.h"
|
||||||
#include "k_kart.h" // SRB2Kart
|
#include "k_kart.h" // SRB2Kart
|
||||||
#include "d_netcmd.h" // IsPlayerAdmin
|
#include "d_netcmd.h" // IsPlayerAdmin
|
||||||
|
@ -96,16 +96,16 @@ static int lib_print(lua_State *L)
|
||||||
static int lib_chatprint(lua_State *L)
|
static int lib_chatprint(lua_State *L)
|
||||||
{
|
{
|
||||||
const char *str = luaL_checkstring(L, 1); // retrieve string
|
const char *str = luaL_checkstring(L, 1); // retrieve string
|
||||||
boolean sound = luaL_checkboolean(L, 2); // retrieve sound boolean
|
boolean sound = lua_optboolean(L, 2); // retrieve sound boolean
|
||||||
int len;
|
int len = strlen(str);
|
||||||
|
|
||||||
if (str == NULL) // error if we don't have a string!
|
if (str == NULL) // error if we don't have a string!
|
||||||
return luaL_error(L, LUA_QL("tostring") " must return a string to " LUA_QL("chatprint"));
|
return luaL_error(L, LUA_QL("tostring") " must return a string to " LUA_QL("chatprint"));
|
||||||
len = strlen(str);
|
|
||||||
if (len > 255) // string is too long!!!
|
if (len > 255) // string is too long!!!
|
||||||
return luaL_error(L, "String exceeds the 255 characters limit of the chat buffer.");
|
return luaL_error(L, "String exceeds the 255 characters limit of the chat buffer.");
|
||||||
|
|
||||||
HU_AddChatText(str, sound);
|
HU_AddChatText(str, sound);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -113,10 +113,11 @@ static int lib_chatprint(lua_State *L)
|
||||||
static int lib_chatprintf(lua_State *L)
|
static int lib_chatprintf(lua_State *L)
|
||||||
{
|
{
|
||||||
int n = lua_gettop(L); /* number of arguments */
|
int n = lua_gettop(L); /* number of arguments */
|
||||||
|
const char *str = luaL_checkstring(L, 2); // retrieve string
|
||||||
|
boolean sound = lua_optboolean(L, 3); // sound?
|
||||||
|
int len = strlen(str);
|
||||||
player_t *plr;
|
player_t *plr;
|
||||||
const char *str;
|
|
||||||
boolean sound = luaL_checkboolean(L, 3);
|
|
||||||
int len;
|
|
||||||
if (n < 2)
|
if (n < 2)
|
||||||
return luaL_error(L, "chatprintf requires at least two arguments: player and text.");
|
return luaL_error(L, "chatprintf requires at least two arguments: player and text.");
|
||||||
|
|
||||||
|
@ -126,15 +127,13 @@ static int lib_chatprintf(lua_State *L)
|
||||||
if (plr != &players[consoleplayer])
|
if (plr != &players[consoleplayer])
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
str = luaL_checkstring(L, 2); // retrieve string
|
|
||||||
if (str == NULL) // error if we don't have a string!
|
if (str == NULL) // error if we don't have a string!
|
||||||
return luaL_error(L, LUA_QL("tostring") " must return a string to " LUA_QL("chatprintf"));
|
return luaL_error(L, LUA_QL("tostring") " must return a string to " LUA_QL("chatprintf"));
|
||||||
len = strlen(str);
|
|
||||||
if (len > 255) // string is too long!!!
|
if (len > 255) // string is too long!!!
|
||||||
return luaL_error(L, "String exceeds the 255 characters limit of the chat buffer.");
|
return luaL_error(L, "String exceeds the 255 characters limit of the chat buffer.");
|
||||||
|
|
||||||
HU_AddChatText(str, sound);
|
HU_AddChatText(str, sound);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1767,7 +1766,7 @@ static int lib_sStartSound(lua_State *L)
|
||||||
const void *origin = NULL;
|
const void *origin = NULL;
|
||||||
sfxenum_t sound_id = luaL_checkinteger(L, 2);
|
sfxenum_t sound_id = luaL_checkinteger(L, 2);
|
||||||
player_t *player = NULL;
|
player_t *player = NULL;
|
||||||
NOHUD
|
//NOHUD // kys @whoever did this.
|
||||||
if (sound_id >= NUMSFX)
|
if (sound_id >= NUMSFX)
|
||||||
return luaL_error(L, "sfx %d out of range (0 - %d)", sound_id, NUMSFX-1);
|
return luaL_error(L, "sfx %d out of range (0 - %d)", sound_id, NUMSFX-1);
|
||||||
if (!lua_isnil(L, 1))
|
if (!lua_isnil(L, 1))
|
||||||
|
@ -1783,7 +1782,12 @@ static int lib_sStartSound(lua_State *L)
|
||||||
return LUA_ErrInvalid(L, "player_t");
|
return LUA_ErrInvalid(L, "player_t");
|
||||||
}
|
}
|
||||||
if (!player || P_IsLocalPlayer(player))
|
if (!player || P_IsLocalPlayer(player))
|
||||||
|
{
|
||||||
|
if (hud_running)
|
||||||
|
origin = NULL; // HUD rendering startsound shouldn't have an origin, just remove it instead of having a retarded error.
|
||||||
|
|
||||||
S_StartSound(origin, sound_id);
|
S_StartSound(origin, sound_id);
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1985,28 +1989,45 @@ static int lib_gDoReborn(lua_State *L)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int lib_gExitLevel(lua_State *L)
|
// Another Lua function that doesn't actually exist!
|
||||||
|
// Sets nextmapoverride & skipstats without instantly ending the level, for instances where other sources should be exiting the level, like normal signposts.
|
||||||
|
static int lib_gSetCustomExitVars(lua_State *L)
|
||||||
{
|
{
|
||||||
int n = lua_gettop(L); // Num arguments
|
int n = lua_gettop(L); // Num arguments
|
||||||
NOHUD
|
NOHUD
|
||||||
|
|
||||||
// LUA EXTENSION: Custom exit like support
|
// LUA EXTENSION: Custom exit like support
|
||||||
// Supported:
|
// Supported:
|
||||||
// G_ExitLevel(); [no modifications]
|
// G_SetCustomExitVars(); [reset to defaults]
|
||||||
// G_ExitLevel(int) [nextmap override only]
|
// G_SetCustomExitVars(int) [nextmap override only]
|
||||||
// G_ExitLevel(bool) [skipstats only]
|
// G_SetCustomExitVars(bool) [skipstats only]
|
||||||
// G_ExitLevel(int, bool) [both of the above]
|
// G_SetCustomExitVars(int, bool) [both of the above]
|
||||||
if (n >= 1)
|
if (n >= 1)
|
||||||
{
|
{
|
||||||
if (lua_isnumber(L, 1) || n >= 2)
|
if (lua_isnumber(L, 1) || n >= 2)
|
||||||
{
|
{
|
||||||
nextmapoverride = (INT16)luaL_checknumber(L, 1);
|
nextmapoverride = (INT16)luaL_checknumber(L, 1);
|
||||||
lua_pop(L, 1); // pop nextmapoverride; skipstats now 1 if available
|
lua_remove(L, 1); // remove nextmapoverride; skipstats now 1 if available
|
||||||
}
|
}
|
||||||
skipstats = lua_optboolean(L, 1);
|
skipstats = lua_optboolean(L, 1);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nextmapoverride = 0;
|
||||||
|
skipstats = false;
|
||||||
|
}
|
||||||
// ---
|
// ---
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int lib_gExitLevel(lua_State *L)
|
||||||
|
{
|
||||||
|
int n = lua_gettop(L); // Num arguments
|
||||||
|
NOHUD
|
||||||
|
// Moved this bit to G_SetCustomExitVars
|
||||||
|
if (n >= 1) // Don't run the reset to defaults option
|
||||||
|
lib_gSetCustomExitVars(L);
|
||||||
G_ExitLevel();
|
G_ExitLevel();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -2655,6 +2676,7 @@ static luaL_Reg lib[] = {
|
||||||
// g_game
|
// g_game
|
||||||
{"G_BuildMapName",lib_gBuildMapName},
|
{"G_BuildMapName",lib_gBuildMapName},
|
||||||
{"G_DoReborn",lib_gDoReborn},
|
{"G_DoReborn",lib_gDoReborn},
|
||||||
|
{"G_SetCustomExitVars",lib_gSetCustomExitVars},
|
||||||
{"G_ExitLevel",lib_gExitLevel},
|
{"G_ExitLevel",lib_gExitLevel},
|
||||||
{"G_IsSpecialStage",lib_gIsSpecialStage},
|
{"G_IsSpecialStage",lib_gIsSpecialStage},
|
||||||
{"G_GametypeUsesLives",lib_gGametypeUsesLives},
|
{"G_GametypeUsesLives",lib_gGametypeUsesLives},
|
||||||
|
|
|
@ -1090,6 +1090,7 @@ static int ffloor_get(lua_State *L)
|
||||||
{
|
{
|
||||||
ffloor_t *ffloor = *((ffloor_t **)luaL_checkudata(L, 1, META_FFLOOR));
|
ffloor_t *ffloor = *((ffloor_t **)luaL_checkudata(L, 1, META_FFLOOR));
|
||||||
enum ffloor_e field = luaL_checkoption(L, 2, ffloor_opt[0], ffloor_opt);
|
enum ffloor_e field = luaL_checkoption(L, 2, ffloor_opt[0], ffloor_opt);
|
||||||
|
INT16 i;
|
||||||
|
|
||||||
if (!ffloor)
|
if (!ffloor)
|
||||||
{
|
{
|
||||||
|
@ -1109,11 +1110,11 @@ static int ffloor_get(lua_State *L)
|
||||||
lua_pushfixed(L, *ffloor->topheight);
|
lua_pushfixed(L, *ffloor->topheight);
|
||||||
return 1;
|
return 1;
|
||||||
case ffloor_toppic: { // toppic
|
case ffloor_toppic: { // toppic
|
||||||
levelflat_t *levelflat;
|
levelflat_t *levelflat = &levelflats[*ffloor->toppic];
|
||||||
INT16 i;
|
for (i = 0; i < 8; i++)
|
||||||
for (i = 0, levelflat = levelflats; i != *ffloor->toppic; i++, levelflat++)
|
if (!levelflat->name[i])
|
||||||
;
|
break;
|
||||||
lua_pushlstring(L, levelflat->name, 8);
|
lua_pushlstring(L, levelflat->name, i);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
case ffloor_toplightlevel:
|
case ffloor_toplightlevel:
|
||||||
|
@ -1123,11 +1124,11 @@ static int ffloor_get(lua_State *L)
|
||||||
lua_pushfixed(L, *ffloor->bottomheight);
|
lua_pushfixed(L, *ffloor->bottomheight);
|
||||||
return 1;
|
return 1;
|
||||||
case ffloor_bottompic: { // bottompic
|
case ffloor_bottompic: { // bottompic
|
||||||
levelflat_t *levelflat;
|
levelflat_t *levelflat = &levelflats[*ffloor->bottompic];
|
||||||
INT16 i;
|
for (i = 0; i < 8; i++)
|
||||||
for (i = 0, levelflat = levelflats; i != *ffloor->bottompic; i++, levelflat++)
|
if (!levelflat->name[i])
|
||||||
;
|
break;
|
||||||
lua_pushlstring(L, levelflat->name, 8);
|
lua_pushlstring(L, levelflat->name, i);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
|
@ -1506,6 +1507,8 @@ static int mapheaderinfo_get(lua_State *L)
|
||||||
lua_pushinteger(L, header->levelselect);
|
lua_pushinteger(L, header->levelselect);
|
||||||
else if (fastcmp(field,"bonustype"))
|
else if (fastcmp(field,"bonustype"))
|
||||||
lua_pushinteger(L, header->bonustype);
|
lua_pushinteger(L, header->bonustype);
|
||||||
|
else if (fastcmp(field,"saveoverride"))
|
||||||
|
lua_pushinteger(L, header->saveoverride);
|
||||||
else if (fastcmp(field,"levelflags"))
|
else if (fastcmp(field,"levelflags"))
|
||||||
lua_pushinteger(L, header->levelflags);
|
lua_pushinteger(L, header->levelflags);
|
||||||
else if (fastcmp(field,"menuflags"))
|
else if (fastcmp(field,"menuflags"))
|
||||||
|
|
99
src/m_menu.c
99
src/m_menu.c
|
@ -548,26 +548,26 @@ typedef enum
|
||||||
// ---------------------
|
// ---------------------
|
||||||
static menuitem_t MPauseMenu[] =
|
static menuitem_t MPauseMenu[] =
|
||||||
{
|
{
|
||||||
{IT_STRING | IT_CALL, NULL, "Add-ons...", M_Addons, 8},
|
{IT_STRING | IT_CALL, NULL, "Add-ons...", M_Addons, 8},
|
||||||
{IT_STRING | IT_SUBMENU, NULL, "Scramble Teams...", &MISC_ScrambleTeamDef, 16},
|
{IT_STRING | IT_SUBMENU, NULL, "Scramble Teams...", &MISC_ScrambleTeamDef, 16},
|
||||||
{IT_STRING | IT_CALL, NULL, "Switch Map..." , M_MapChange, 24},
|
{IT_STRING | IT_CALL, NULL, "Switch Map..." , M_MapChange, 24},
|
||||||
|
|
||||||
{IT_CALL | IT_STRING, NULL, "Continue", M_SelectableClearMenus,40},
|
{IT_CALL | IT_STRING, NULL, "Continue", M_SelectableClearMenus, 40},
|
||||||
{IT_CALL | IT_STRING, NULL, "P1 Setup...", M_SetupMultiPlayer, 48}, // splitscreen
|
{IT_CALL | IT_STRING, NULL, "P1 Setup...", M_SetupMultiPlayer, 48}, // splitscreen
|
||||||
{IT_CALL | IT_STRING, NULL, "P2 Setup...", M_SetupMultiPlayer2, 56}, // splitscreen
|
{IT_CALL | IT_STRING, NULL, "P2 Setup...", M_SetupMultiPlayer2, 56}, // splitscreen
|
||||||
{IT_CALL | IT_STRING, NULL, "P3 Setup...", M_SetupMultiPlayer3, 64}, // splitscreen
|
{IT_CALL | IT_STRING, NULL, "P3 Setup...", M_SetupMultiPlayer3, 64}, // splitscreen
|
||||||
{IT_CALL | IT_STRING, NULL, "P4 Setup...", M_SetupMultiPlayer4, 72}, // splitscreen
|
{IT_CALL | IT_STRING, NULL, "P4 Setup...", M_SetupMultiPlayer4, 72}, // splitscreen
|
||||||
|
|
||||||
{IT_STRING | IT_CALL, NULL, "Spectate", M_ConfirmSpectate, 48}, // alone
|
{IT_STRING | IT_CALL, NULL, "Spectate", M_ConfirmSpectate, 48}, // alone
|
||||||
{IT_STRING | IT_CALL, NULL, "Enter Game", M_ConfirmEnterGame, 48}, // alone
|
{IT_STRING | IT_CALL, NULL, "Enter Game", M_ConfirmEnterGame, 48}, // alone
|
||||||
{IT_STRING | IT_CALL, NULL, "Cancel Join", M_ConfirmSpectate, 48}, // alone
|
{IT_STRING | IT_CALL, NULL, "Cancel Join", M_ConfirmSpectate, 48}, // alone
|
||||||
{IT_STRING | IT_SUBMENU, NULL, "Switch Team...", &MISC_ChangeTeamDef, 48},
|
{IT_STRING | IT_SUBMENU, NULL, "Switch Team...", &MISC_ChangeTeamDef, 48},
|
||||||
{IT_STRING | IT_SUBMENU, NULL, "Enter/Spectate...", &MISC_ChangeSpectateDef,48},
|
{IT_STRING | IT_SUBMENU, NULL, "Enter/Spectate...", &MISC_ChangeSpectateDef,48},
|
||||||
{IT_CALL | IT_STRING, NULL, "Player Setup...", M_SetupMultiPlayer, 56}, // alone
|
{IT_CALL | IT_STRING, NULL, "Player Setup...", M_SetupMultiPlayer, 56}, // alone
|
||||||
{IT_CALL | IT_STRING, NULL, "Options", M_Options, 64},
|
{IT_CALL | IT_STRING, NULL, "Options", M_Options, 64},
|
||||||
|
|
||||||
{IT_CALL | IT_STRING, NULL, "Return to Title", M_EndGame, 80},
|
{IT_CALL | IT_STRING, NULL, "Return to Title", M_EndGame, 80},
|
||||||
{IT_CALL | IT_STRING, NULL, "Quit Game", M_QuitSRB2, 88},
|
{IT_CALL | IT_STRING, NULL, "Quit Game", M_QuitSRB2, 88},
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
|
@ -1350,7 +1350,7 @@ static menuitem_t OP_SoundOptionsMenu[] =
|
||||||
{IT_STRING|IT_CVAR, NULL, "Reverse L/R Channels", &stereoreverse, 50},
|
{IT_STRING|IT_CVAR, NULL, "Reverse L/R Channels", &stereoreverse, 50},
|
||||||
{IT_STRING|IT_CVAR, NULL, "Surround Sound", &surround, 60},
|
{IT_STRING|IT_CVAR, NULL, "Surround Sound", &surround, 60},
|
||||||
|
|
||||||
{IT_STRING|IT_CVAR, NULL, "Chat sounds", &cv_chatnotifications, 75},
|
{IT_STRING|IT_CVAR, NULL, "Chat Notifications", &cv_chatnotifications, 75},
|
||||||
{IT_STRING|IT_CVAR, NULL, "Character voices", &cv_kartvoices, 85},
|
{IT_STRING|IT_CVAR, NULL, "Character voices", &cv_kartvoices, 85},
|
||||||
{IT_STRING|IT_CVAR, NULL, "Powerup Warning", &cv_kartinvinsfx, 95},
|
{IT_STRING|IT_CVAR, NULL, "Powerup Warning", &cv_kartinvinsfx, 95},
|
||||||
|
|
||||||
|
@ -1446,13 +1446,16 @@ static menuitem_t OP_HUDOptionsMenu[] =
|
||||||
static menuitem_t OP_ChatOptionsMenu[] =
|
static menuitem_t OP_ChatOptionsMenu[] =
|
||||||
{
|
{
|
||||||
// will ANYONE who doesn't know how to use the console want to touch this one?
|
// will ANYONE who doesn't know how to use the console want to touch this one?
|
||||||
{IT_STRING | IT_CVAR, NULL, "Chat mode", &cv_consolechat, 10}, // nonetheless...
|
{IT_STRING | IT_CVAR, NULL, "Chat Mode", &cv_consolechat, 10}, // nonetheless...
|
||||||
|
|
||||||
{IT_STRING | IT_CVAR | IT_CV_SLIDER,
|
{IT_STRING | IT_CVAR | IT_CV_SLIDER,
|
||||||
NULL, "Window width", &cv_chatwidth, 25},
|
NULL, "Chat Box Width", &cv_chatwidth, 25},
|
||||||
{IT_STRING | IT_CVAR | IT_CV_SLIDER,
|
{IT_STRING | IT_CVAR | IT_CV_SLIDER,
|
||||||
NULL, "Window height", &cv_chatheight, 35},
|
NULL, "Chat Box Height", &cv_chatheight, 35},
|
||||||
{IT_STRING | IT_CVAR, NULL, "Message fadeout time", &cv_chattime, 50},
|
|
||||||
{IT_STRING | IT_CVAR, NULL, "Show tint behind messages",&cv_chatbacktint, 60},
|
{IT_STRING | IT_CVAR, NULL, "Chat Background Tint", &cv_chatbacktint, 50},
|
||||||
|
{IT_STRING | IT_CVAR, NULL, "Message Fadeout Time", &cv_chattime, 60},
|
||||||
|
{IT_STRING | IT_CVAR, NULL, "Spam Protection", &cv_chatspamprotection, 70},
|
||||||
};
|
};
|
||||||
|
|
||||||
static menuitem_t OP_GameOptionsMenu[] =
|
static menuitem_t OP_GameOptionsMenu[] =
|
||||||
|
@ -1466,12 +1469,12 @@ static menuitem_t OP_GameOptionsMenu[] =
|
||||||
{IT_STRING | IT_CVAR, NULL, "Number of Laps", &cv_basenumlaps, 70},
|
{IT_STRING | IT_CVAR, NULL, "Number of Laps", &cv_basenumlaps, 70},
|
||||||
{IT_STRING | IT_CVAR, NULL, "Exit Countdown Timer", &cv_countdowntime, 80},
|
{IT_STRING | IT_CVAR, NULL, "Exit Countdown Timer", &cv_countdowntime, 80},
|
||||||
|
|
||||||
//{IT_STRING | IT_CVAR, NULL, "Time Limit", &cv_timelimit, 100},
|
{IT_STRING | IT_CVAR, NULL, "Time Limit", &cv_timelimit, 100},
|
||||||
{IT_STRING | IT_CVAR, NULL, "Starting Bumpers", &cv_kartbumpers, 100},
|
{IT_STRING | IT_CVAR, NULL, "Starting Bumpers", &cv_kartbumpers, 110},
|
||||||
{IT_STRING | IT_CVAR, NULL, "Karma Comeback", &cv_kartcomeback, 110},
|
{IT_STRING | IT_CVAR, NULL, "Karma Comeback", &cv_kartcomeback, 120},
|
||||||
|
|
||||||
{IT_STRING | IT_CVAR, NULL, "Force Character #", &cv_forceskin, 130},
|
{IT_STRING | IT_CVAR, NULL, "Force Character", &cv_forceskin, 140},
|
||||||
{IT_STRING | IT_CVAR, NULL, "Restrict Character Changes", &cv_restrictskinchange, 140},
|
{IT_STRING | IT_CVAR, NULL, "Restrict Character Changes", &cv_restrictskinchange, 150},
|
||||||
};
|
};
|
||||||
|
|
||||||
static menuitem_t OP_ServerOptionsMenu[] =
|
static menuitem_t OP_ServerOptionsMenu[] =
|
||||||
|
@ -2007,6 +2010,7 @@ menu_t OP_AdvServerOptionsDef = DEFAULTMENUSTYLE("M_SERVER", OP_AdvServerOptions
|
||||||
|
|
||||||
//menu_t OP_NetgameOptionsDef = DEFAULTMENUSTYLE("M_SERVER", OP_NetgameOptionsMenu, &OP_ServerOptionsDef, 30, 30);
|
//menu_t OP_NetgameOptionsDef = DEFAULTMENUSTYLE("M_SERVER", OP_NetgameOptionsMenu, &OP_ServerOptionsDef, 30, 30);
|
||||||
//menu_t OP_GametypeOptionsDef = DEFAULTMENUSTYLE("M_SERVER", OP_GametypeOptionsMenu, &OP_ServerOptionsDef, 30, 30);
|
//menu_t OP_GametypeOptionsDef = DEFAULTMENUSTYLE("M_SERVER", OP_GametypeOptionsMenu, &OP_ServerOptionsDef, 30, 30);
|
||||||
|
//menu_t OP_ChatOptionsDef = DEFAULTMENUSTYLE("M_GAME", OP_ChatOptionsMenu, &OP_GameOptionsDef, 30, 30);
|
||||||
menu_t OP_MonitorToggleDef =
|
menu_t OP_MonitorToggleDef =
|
||||||
{
|
{
|
||||||
"M_GAME",
|
"M_GAME",
|
||||||
|
@ -4462,7 +4466,9 @@ static void M_Addons(INT32 choice)
|
||||||
addonsp[EXT_TXT] = W_CachePatchName("M_FTXT", PU_STATIC);
|
addonsp[EXT_TXT] = W_CachePatchName("M_FTXT", PU_STATIC);
|
||||||
addonsp[EXT_CFG] = W_CachePatchName("M_FCFG", PU_STATIC);
|
addonsp[EXT_CFG] = W_CachePatchName("M_FCFG", PU_STATIC);
|
||||||
addonsp[EXT_WAD] = W_CachePatchName("M_FWAD", PU_STATIC);
|
addonsp[EXT_WAD] = W_CachePatchName("M_FWAD", PU_STATIC);
|
||||||
|
#ifdef USE_KART
|
||||||
addonsp[EXT_KART] = W_CachePatchName("M_FKART", PU_STATIC);
|
addonsp[EXT_KART] = W_CachePatchName("M_FKART", PU_STATIC);
|
||||||
|
#endif
|
||||||
addonsp[EXT_PK3] = W_CachePatchName("M_FPK3", PU_STATIC);
|
addonsp[EXT_PK3] = W_CachePatchName("M_FPK3", PU_STATIC);
|
||||||
addonsp[EXT_SOC] = W_CachePatchName("M_FSOC", PU_STATIC);
|
addonsp[EXT_SOC] = W_CachePatchName("M_FSOC", PU_STATIC);
|
||||||
addonsp[EXT_LUA] = W_CachePatchName("M_FLUA", PU_STATIC);
|
addonsp[EXT_LUA] = W_CachePatchName("M_FLUA", PU_STATIC);
|
||||||
|
@ -4595,10 +4601,6 @@ static boolean M_AddonsRefresh(void)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef FIXUPO0
|
|
||||||
#pragma GCC optimize ("0")
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void M_DrawAddons(void)
|
static void M_DrawAddons(void)
|
||||||
{
|
{
|
||||||
INT32 x, y;
|
INT32 x, y;
|
||||||
|
@ -4669,16 +4671,14 @@ static void M_DrawAddons(void)
|
||||||
if (m > (ssize_t)sizedirmenu)
|
if (m > (ssize_t)sizedirmenu)
|
||||||
m = sizedirmenu;
|
m = sizedirmenu;
|
||||||
|
|
||||||
// then top...
|
// then compute top and adjust bottom if needed!
|
||||||
i = m - (2*numaddonsshown + 1);
|
if (m < (2*numaddonsshown + 1))
|
||||||
|
|
||||||
// then adjust!
|
|
||||||
if (i < 0)
|
|
||||||
{
|
{
|
||||||
if ((m -= i) > (ssize_t)sizedirmenu)
|
m = min(sizedirmenu, 2*numaddonsshown + 1);
|
||||||
m = sizedirmenu;
|
|
||||||
i = 0;
|
i = 0;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
i = m - (2*numaddonsshown + 1);
|
||||||
|
|
||||||
if (i != 0)
|
if (i != 0)
|
||||||
V_DrawString(19, y+4 - (skullAnimCounter/5), highlightflags, "\x1A");
|
V_DrawString(19, y+4 - (skullAnimCounter/5), highlightflags, "\x1A");
|
||||||
|
@ -4743,10 +4743,6 @@ static void M_DrawAddons(void)
|
||||||
V_DrawSmallScaledPatch(x, y + 4, 0, addonsp[NUM_EXT+2]);
|
V_DrawSmallScaledPatch(x, y + 4, 0, addonsp[NUM_EXT+2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef FIXUPO0
|
|
||||||
#pragma GCC reset_options
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void M_AddonExec(INT32 ch)
|
static void M_AddonExec(INT32 ch)
|
||||||
{
|
{
|
||||||
if (ch != 'y' && ch != KEY_ENTER)
|
if (ch != 'y' && ch != KEY_ENTER)
|
||||||
|
@ -4902,13 +4898,15 @@ static void M_HandleAddons(INT32 choice)
|
||||||
case EXT_LUA:
|
case EXT_LUA:
|
||||||
#ifndef HAVE_BLUA
|
#ifndef HAVE_BLUA
|
||||||
S_StartSound(NULL, sfx_s26d);
|
S_StartSound(NULL, sfx_s26d);
|
||||||
M_StartMessage(va("%c%s\x80\nThis copy of SRB2Kart was compiled\nwithout support for .lua files.\n\n(Press a key)\n", ('\x80' + (highlightflags>>V_CHARCOLORSHIFT)), dirmenu[dir_on[menudepthleft]]+DIR_STRING),NULL,MM_NOTHING);
|
M_StartMessage(va("%c%s\x80\nThis version of SRB2Kart does not\nhave support for .lua files.\n\n(Press a key)\n", ('\x80' + (highlightflags>>V_CHARCOLORSHIFT)), dirmenu[dir_on[menudepthleft]]+DIR_STRING),NULL,MM_NOTHING);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
// else intentional fallthrough
|
// else intentional fallthrough
|
||||||
case EXT_SOC:
|
case EXT_SOC:
|
||||||
case EXT_WAD:
|
case EXT_WAD:
|
||||||
|
#ifdef USE_KART
|
||||||
case EXT_KART:
|
case EXT_KART:
|
||||||
|
#endif
|
||||||
case EXT_PK3:
|
case EXT_PK3:
|
||||||
COM_BufAddText(va("addfile \"%s%s\"", menupath, dirmenu[dir_on[menudepthleft]]+DIR_STRING));
|
COM_BufAddText(va("addfile \"%s%s\"", menupath, dirmenu[dir_on[menudepthleft]]+DIR_STRING));
|
||||||
break;
|
break;
|
||||||
|
@ -9077,7 +9075,7 @@ static void M_DrawControl(void)
|
||||||
#undef controlheight
|
#undef controlheight
|
||||||
|
|
||||||
static INT32 controltochange;
|
static INT32 controltochange;
|
||||||
static char controltochangetext[55];
|
static char controltochangetext[33];
|
||||||
|
|
||||||
static void M_ChangecontrolResponse(event_t *ev)
|
static void M_ChangecontrolResponse(event_t *ev)
|
||||||
{
|
{
|
||||||
|
@ -9148,14 +9146,15 @@ static void M_ChangecontrolResponse(event_t *ev)
|
||||||
found = 0;
|
found = 0;
|
||||||
setupcontrols[control][1] = KEY_NULL; //replace key 1,clear key2
|
setupcontrols[control][1] = KEY_NULL; //replace key 1,clear key2
|
||||||
}
|
}
|
||||||
G_CheckDoubleUsage(ch);
|
(void)G_CheckDoubleUsage(ch, true);
|
||||||
setupcontrols[control][found] = ch;
|
setupcontrols[control][found] = ch;
|
||||||
}
|
}
|
||||||
S_StartSound(NULL, sfx_s221);
|
S_StartSound(NULL, sfx_s221);
|
||||||
}
|
}
|
||||||
else if (ch == KEY_PAUSE)
|
else if (ch == KEY_PAUSE)
|
||||||
{
|
{
|
||||||
static char tmp[155];
|
// This buffer assumes a 125-character message plus a 32-character control name (per controltochangetext buffer size)
|
||||||
|
static char tmp[158];
|
||||||
menu_t *prev = currentMenu->prevMenu;
|
menu_t *prev = currentMenu->prevMenu;
|
||||||
|
|
||||||
if (controltochange == gc_pause)
|
if (controltochange == gc_pause)
|
||||||
|
@ -9179,12 +9178,14 @@ static void M_ChangecontrolResponse(event_t *ev)
|
||||||
|
|
||||||
static void M_ChangeControl(INT32 choice)
|
static void M_ChangeControl(INT32 choice)
|
||||||
{
|
{
|
||||||
static char tmp[55];
|
// This buffer assumes a 35-character message (per below) plus a max control name limit of 32 chars (per controltochangetext)
|
||||||
|
// If you change the below message, then change the size of this buffer!
|
||||||
|
static char tmp[68];
|
||||||
|
|
||||||
controltochange = currentMenu->menuitems[choice].alphaKey;
|
controltochange = currentMenu->menuitems[choice].alphaKey;
|
||||||
sprintf(tmp, M_GetText("Hit the new key for\n%s\nESC for Cancel"),
|
sprintf(tmp, M_GetText("Hit the new key for\n%s\nESC for Cancel"),
|
||||||
currentMenu->menuitems[choice].text);
|
currentMenu->menuitems[choice].text);
|
||||||
strncpy(controltochangetext, currentMenu->menuitems[choice].text, 55);
|
strlcpy(controltochangetext, currentMenu->menuitems[choice].text, 33);
|
||||||
|
|
||||||
M_StartMessage(tmp, M_ChangecontrolResponse, MM_EVENTHANDLER);
|
M_StartMessage(tmp, M_ChangecontrolResponse, MM_EVENTHANDLER);
|
||||||
}
|
}
|
||||||
|
|
46
src/m_misc.c
46
src/m_misc.c
|
@ -440,7 +440,22 @@ void Command_LoadConfig_f(void)
|
||||||
|
|
||||||
strcpy(configfile, COM_Argv(1));
|
strcpy(configfile, COM_Argv(1));
|
||||||
FIL_ForceExtension(configfile, ".cfg");
|
FIL_ForceExtension(configfile, ".cfg");
|
||||||
|
|
||||||
|
// load default control
|
||||||
|
G_ClearAllControlKeys();
|
||||||
|
G_Controldefault(0);
|
||||||
|
|
||||||
|
// temporarily reset execversion to default
|
||||||
|
CV_ToggleExecVersion(true);
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_execversion.name, cv_execversion.defaultvalue));
|
||||||
|
CV_InitFilterVar();
|
||||||
|
|
||||||
|
// exec the config
|
||||||
COM_BufInsertText(va("exec \"%s\"\n", configfile));
|
COM_BufInsertText(va("exec \"%s\"\n", configfile));
|
||||||
|
|
||||||
|
// don't filter anymore vars and don't let this convsvar be changed
|
||||||
|
COM_BufInsertText(va("%s \"%d\"\n", cv_execversion.name, EXECVERSION));
|
||||||
|
CV_ToggleExecVersion(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Saves the current configuration and loads another.
|
/** Saves the current configuration and loads another.
|
||||||
|
@ -477,10 +492,23 @@ void M_FirstLoadConfig(void)
|
||||||
// load default control
|
// load default control
|
||||||
G_Controldefault(0);
|
G_Controldefault(0);
|
||||||
|
|
||||||
|
// register execversion here before we load any configs
|
||||||
|
CV_RegisterVar(&cv_execversion);
|
||||||
|
|
||||||
|
// temporarily reset execversion to default
|
||||||
|
// we shouldn't need to do this, but JUST in case...
|
||||||
|
CV_ToggleExecVersion(true);
|
||||||
|
COM_BufInsertText(va("%s \"%s\"\n", cv_execversion.name, cv_execversion.defaultvalue));
|
||||||
|
CV_InitFilterVar();
|
||||||
|
|
||||||
// load config, make sure those commands doesnt require the screen...
|
// load config, make sure those commands doesnt require the screen...
|
||||||
COM_BufInsertText(va("exec \"%s\"\n", configfile));
|
COM_BufInsertText(va("exec \"%s\"\n", configfile));
|
||||||
// no COM_BufExecute() needed; that does it right away
|
// no COM_BufExecute() needed; that does it right away
|
||||||
|
|
||||||
|
// don't filter anymore vars and don't let this convsvar be changed
|
||||||
|
COM_BufInsertText(va("%s \"%d\"\n", cv_execversion.name, EXECVERSION));
|
||||||
|
CV_ToggleExecVersion(false);
|
||||||
|
|
||||||
// make sure I_Quit() will write back the correct config
|
// make sure I_Quit() will write back the correct config
|
||||||
// (do not write back the config if it crash before)
|
// (do not write back the config if it crash before)
|
||||||
gameconfig_loaded = true;
|
gameconfig_loaded = true;
|
||||||
|
@ -493,6 +521,7 @@ void M_FirstLoadConfig(void)
|
||||||
void M_SaveConfig(const char *filename)
|
void M_SaveConfig(const char *filename)
|
||||||
{
|
{
|
||||||
FILE *f;
|
FILE *f;
|
||||||
|
char *filepath;
|
||||||
|
|
||||||
// make sure not to write back the config until it's been correctly loaded
|
// make sure not to write back the config until it's been correctly loaded
|
||||||
if (!gameconfig_loaded)
|
if (!gameconfig_loaded)
|
||||||
|
@ -507,13 +536,20 @@ void M_SaveConfig(const char *filename)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
f = fopen(filename, "w");
|
// append srb2home to beginning of filename
|
||||||
|
// but check if srb2home isn't already there, first
|
||||||
|
if (!strstr(filename, srb2home))
|
||||||
|
filepath = va(pandf,srb2home, filename);
|
||||||
|
else
|
||||||
|
filepath = Z_StrDup(filename);
|
||||||
|
|
||||||
|
f = fopen(filepath, "w");
|
||||||
// change it only if valid
|
// change it only if valid
|
||||||
if (f)
|
if (f)
|
||||||
strcpy(configfile, filename);
|
strcpy(configfile, filepath);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
CONS_Alert(CONS_ERROR, M_GetText("Couldn't save game config file %s\n"), filename);
|
CONS_Alert(CONS_ERROR, M_GetText("Couldn't save game config file %s\n"), filepath);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -536,6 +572,10 @@ void M_SaveConfig(const char *filename)
|
||||||
// header message
|
// header message
|
||||||
fprintf(f, "// SRB2Kart configuration file.\n");
|
fprintf(f, "// SRB2Kart configuration file.\n");
|
||||||
|
|
||||||
|
// print execversion FIRST, because subsequent consvars need to be filtered
|
||||||
|
// always print current EXECVERSION
|
||||||
|
fprintf(f, "%s \"%d\"\n", cv_execversion.name, EXECVERSION);
|
||||||
|
|
||||||
// FIXME: save key aliases if ever implemented..
|
// FIXME: save key aliases if ever implemented..
|
||||||
|
|
||||||
CV_SaveVariables(f);
|
CV_SaveVariables(f);
|
||||||
|
|
|
@ -3971,7 +3971,7 @@ static inline boolean PIT_GrenadeRing(mobj_t *thing)
|
||||||
void A_GrenadeRing(mobj_t *actor)
|
void A_GrenadeRing(mobj_t *actor)
|
||||||
{
|
{
|
||||||
INT32 bx, by, xl, xh, yl, yh;
|
INT32 bx, by, xl, xh, yl, yh;
|
||||||
explodedist = FixedMul(actor->info->painchance, mapheaderinfo[gamemap-1]->mobj_scale);
|
explodedist = FixedMul(actor->info->painchance, mapobjectscale);
|
||||||
#ifdef HAVE_BLUA
|
#ifdef HAVE_BLUA
|
||||||
if (LUA_CallAction("A_GrenadeRing", actor))
|
if (LUA_CallAction("A_GrenadeRing", actor))
|
||||||
return;
|
return;
|
||||||
|
@ -4039,7 +4039,7 @@ void A_MineExplode(mobj_t *actor)
|
||||||
INT32 d;
|
INT32 d;
|
||||||
INT32 locvar1 = var1;
|
INT32 locvar1 = var1;
|
||||||
mobjtype_t type;
|
mobjtype_t type;
|
||||||
explodedist = FixedMul((3*actor->info->painchance)/2, mapheaderinfo[gamemap-1]->mobj_scale);
|
explodedist = FixedMul((3*actor->info->painchance)/2, mapobjectscale);
|
||||||
#ifdef HAVE_BLUA
|
#ifdef HAVE_BLUA
|
||||||
if (LUA_CallAction("A_MineExplode", actor))
|
if (LUA_CallAction("A_MineExplode", actor))
|
||||||
return;
|
return;
|
||||||
|
@ -4060,7 +4060,7 @@ void A_MineExplode(mobj_t *actor)
|
||||||
P_BlockThingsIterator(bx, by, PIT_MineExplode);
|
P_BlockThingsIterator(bx, by, PIT_MineExplode);
|
||||||
|
|
||||||
for (d = 0; d < 16; d++)
|
for (d = 0; d < 16; d++)
|
||||||
K_SpawnKartExplosion(actor->x, actor->y, actor->z, explodedist + 32*mapheaderinfo[gamemap-1]->mobj_scale, 32, type, d*(ANGLE_45/4), true, false, actor->target); // 32 <-> 64
|
K_SpawnKartExplosion(actor->x, actor->y, actor->z, explodedist + 32*mapobjectscale, 32, type, d*(ANGLE_45/4), true, false, actor->target); // 32 <-> 64
|
||||||
|
|
||||||
if (actor->target && actor->target->player)
|
if (actor->target && actor->target->player)
|
||||||
K_SpawnMineExplosion(actor, actor->target->player->skincolor);
|
K_SpawnMineExplosion(actor, actor->target->player->skincolor);
|
||||||
|
@ -8276,7 +8276,7 @@ void A_JawzChase(mobj_t *actor)
|
||||||
ret->frame |= ((leveltime % 10) / 2) + 5;
|
ret->frame |= ((leveltime % 10) / 2) + 5;
|
||||||
ret->color = actor->cvmem;
|
ret->color = actor->cvmem;
|
||||||
|
|
||||||
P_Thrust(actor, R_PointToAngle2(actor->x, actor->y, actor->tracer->x, actor->tracer->y), actor->info->speed);
|
P_Thrust(actor, R_PointToAngle2(actor->x, actor->y, actor->tracer->x, actor->tracer->y), (7*actor->movefactor)/64);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -8348,11 +8348,7 @@ void A_SPBChase(mobj_t *actor)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Default speed
|
// Default speed
|
||||||
wspeed = FixedMul(actor->info->speed, mapheaderinfo[gamemap-1]->mobj_scale);
|
wspeed = actor->movefactor;
|
||||||
if (gamespeed == 0)
|
|
||||||
wspeed = FixedMul(wspeed, FRACUNIT-FRACUNIT/4);
|
|
||||||
else if (gamespeed == 2)
|
|
||||||
wspeed = FixedMul(wspeed, FRACUNIT+FRACUNIT/4);
|
|
||||||
|
|
||||||
if (actor->threshold) // Just fired, go straight.
|
if (actor->threshold) // Just fired, go straight.
|
||||||
{
|
{
|
||||||
|
@ -10386,7 +10382,7 @@ void A_SetScale(mobj_t *actor)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
locvar1 = FixedMul(locvar1, mapheaderinfo[gamemap-1]->mobj_scale); // SRB2Kart
|
locvar1 = FixedMul(locvar1, mapobjectscale); // SRB2Kart
|
||||||
|
|
||||||
target->destscale = locvar1; // destination scale
|
target->destscale = locvar1; // destination scale
|
||||||
if (!(locvar2 & 65535))
|
if (!(locvar2 & 65535))
|
||||||
|
|
|
@ -3009,7 +3009,7 @@ void EV_CrumbleChain(sector_t *sec, ffloor_t *rover)
|
||||||
fixed_t topz;
|
fixed_t topz;
|
||||||
fixed_t a, b, c;
|
fixed_t a, b, c;
|
||||||
mobjtype_t type = MT_ROCKCRUMBLE1;
|
mobjtype_t type = MT_ROCKCRUMBLE1;
|
||||||
const fixed_t spacing = 48*mapheaderinfo[gamemap-1]->mobj_scale;
|
const fixed_t spacing = 48*mapobjectscale;
|
||||||
|
|
||||||
// If the control sector has a special
|
// If the control sector has a special
|
||||||
// of Section3:7-15, use the custom debris.
|
// of Section3:7-15, use the custom debris.
|
||||||
|
|
|
@ -366,7 +366,7 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
|
||||||
|
|
||||||
P_SetTarget(&special->tracer, toucher);
|
P_SetTarget(&special->tracer, toucher);
|
||||||
special->flags2 |= MF2_NIGHTSPULL;
|
special->flags2 |= MF2_NIGHTSPULL;
|
||||||
special->destscale = mapheaderinfo[gamemap-1]->mobj_scale>>4;
|
special->destscale = mapobjectscale>>4;
|
||||||
special->scalespeed <<= 1;
|
special->scalespeed <<= 1;
|
||||||
|
|
||||||
special->flags &= ~MF_SPECIAL;
|
special->flags &= ~MF_SPECIAL;
|
||||||
|
|
|
@ -41,9 +41,6 @@
|
||||||
// Convenience macro to fix issue with collision along bottom/left edges of blockmap -Red
|
// Convenience macro to fix issue with collision along bottom/left edges of blockmap -Red
|
||||||
#define BMBOUNDFIX(xl, xh, yl, yh) {if (xl > xh) xl = 0; if (yl > yh) yl = 0;}
|
#define BMBOUNDFIX(xl, xh, yl, yh) {if (xl > xh) xl = 0; if (yl > yh) yl = 0;}
|
||||||
|
|
||||||
// player radius used only in am_map.c
|
|
||||||
#define PLAYERRADIUS (16*FRACUNIT)
|
|
||||||
|
|
||||||
// MAXRADIUS is for precalculated sector block boxes
|
// MAXRADIUS is for precalculated sector block boxes
|
||||||
// the spider demon is larger,
|
// the spider demon is larger,
|
||||||
// but we do not have any moving sectors nearby
|
// but we do not have any moving sectors nearby
|
||||||
|
|
27
src/p_map.c
27
src/p_map.c
|
@ -116,8 +116,8 @@ boolean P_TeleportMove(mobj_t *thing, fixed_t x, fixed_t y, fixed_t z)
|
||||||
boolean P_DoSpring(mobj_t *spring, mobj_t *object)
|
boolean P_DoSpring(mobj_t *spring, mobj_t *object)
|
||||||
{
|
{
|
||||||
//INT32 pflags;
|
//INT32 pflags;
|
||||||
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - object->scale);
|
const fixed_t hscale = mapobjectscale + (mapobjectscale - object->scale);
|
||||||
const fixed_t vscale = mapheaderinfo[gamemap-1]->mobj_scale + (object->scale - mapheaderinfo[gamemap-1]->mobj_scale);
|
const fixed_t vscale = mapobjectscale + (object->scale - mapobjectscale);
|
||||||
fixed_t offx, offy;
|
fixed_t offx, offy;
|
||||||
fixed_t vertispeed = spring->info->mass;
|
fixed_t vertispeed = spring->info->mass;
|
||||||
fixed_t horizspeed = spring->info->damage;
|
fixed_t horizspeed = spring->info->damage;
|
||||||
|
@ -1424,9 +1424,9 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
&& !(thing->z + thing->height < tmthing->z || thing->z > tmthing->z + tmthing->height))
|
&& !(thing->z + thing->height < tmthing->z || thing->z > tmthing->z + tmthing->height))
|
||||||
{
|
{
|
||||||
|
|
||||||
if (tmthing->scale > thing->scale + (mapheaderinfo[gamemap-1]->mobj_scale/8)) // SRB2kart - Handle squishes first!
|
if (tmthing->scale > thing->scale + (mapobjectscale/8)) // SRB2kart - Handle squishes first!
|
||||||
K_SquishPlayer(thing->player, tmthing, tmthing);
|
K_SquishPlayer(thing->player, tmthing, tmthing);
|
||||||
else if (thing->scale > tmthing->scale + (mapheaderinfo[gamemap-1]->mobj_scale/8))
|
else if (thing->scale > tmthing->scale + (mapobjectscale/8))
|
||||||
K_SquishPlayer(tmthing->player, thing, tmthing);
|
K_SquishPlayer(tmthing->player, thing, tmthing);
|
||||||
else if (tmthing->player->kartstuff[k_invincibilitytimer] && !thing->player->kartstuff[k_invincibilitytimer]) // SRB2kart - Then invincibility!
|
else if (tmthing->player->kartstuff[k_invincibilitytimer] && !thing->player->kartstuff[k_invincibilitytimer]) // SRB2kart - Then invincibility!
|
||||||
P_DamageMobj(thing, tmthing, tmthing, 1);
|
P_DamageMobj(thing, tmthing, tmthing, 1);
|
||||||
|
@ -1523,9 +1523,9 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
return true; // underneath
|
return true; // underneath
|
||||||
|
|
||||||
if (thing->player->kartstuff[k_squishedtimer] || thing->player->kartstuff[k_hyudorotimer]
|
if (thing->player->kartstuff[k_squishedtimer] || thing->player->kartstuff[k_hyudorotimer]
|
||||||
|| thing->player->kartstuff[k_justbumped] || thing->scale > tmthing->scale + (mapheaderinfo[gamemap-1]->mobj_scale/8)
|
|| thing->player->kartstuff[k_justbumped] || thing->scale > tmthing->scale + (mapobjectscale/8)
|
||||||
|| tmthing->player->kartstuff[k_squishedtimer] || tmthing->player->kartstuff[k_hyudorotimer]
|
|| tmthing->player->kartstuff[k_squishedtimer] || tmthing->player->kartstuff[k_hyudorotimer]
|
||||||
|| tmthing->player->kartstuff[k_justbumped] || tmthing->scale > thing->scale + (mapheaderinfo[gamemap-1]->mobj_scale/8))
|
|| tmthing->player->kartstuff[k_justbumped] || tmthing->scale > thing->scale + (mapobjectscale/8))
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -2706,7 +2706,7 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff)
|
||||||
if (!(thing->flags & MF_NOCLIP))
|
if (!(thing->flags & MF_NOCLIP))
|
||||||
{
|
{
|
||||||
//All things are affected by their scale.
|
//All things are affected by their scale.
|
||||||
fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale);
|
fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapobjectscale);
|
||||||
|
|
||||||
if (thing->player)
|
if (thing->player)
|
||||||
{
|
{
|
||||||
|
@ -2909,7 +2909,7 @@ boolean P_SceneryTryMove(mobj_t *thing, fixed_t x, fixed_t y)
|
||||||
|
|
||||||
if (!(thing->flags & MF_NOCLIP))
|
if (!(thing->flags & MF_NOCLIP))
|
||||||
{
|
{
|
||||||
const fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale);
|
const fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapobjectscale);
|
||||||
|
|
||||||
if (tmceilingz - tmfloorz < thing->height)
|
if (tmceilingz - tmfloorz < thing->height)
|
||||||
return false; // doesn't fit
|
return false; // doesn't fit
|
||||||
|
@ -3133,8 +3133,8 @@ static void P_PlayerHitBounceLine(line_t *ld)
|
||||||
|
|
||||||
movelen = P_AproxDistance(tmxmove, tmymove);
|
movelen = P_AproxDistance(tmxmove, tmymove);
|
||||||
|
|
||||||
if (slidemo->player && movelen < (15*mapheaderinfo[gamemap-1]->mobj_scale))
|
if (slidemo->player && movelen < (15*mapobjectscale))
|
||||||
movelen = (15*mapheaderinfo[gamemap-1]->mobj_scale);
|
movelen = (15*mapobjectscale);
|
||||||
|
|
||||||
tmxmove += FixedMul(movelen, FINECOSINE(lineangle));
|
tmxmove += FixedMul(movelen, FINECOSINE(lineangle));
|
||||||
tmymove += FixedMul(movelen, FINESINE(lineangle));
|
tmymove += FixedMul(movelen, FINESINE(lineangle));
|
||||||
|
@ -3392,7 +3392,7 @@ static boolean PTR_SlideTraverse(intercept_t *in)
|
||||||
if (opentop - slidemo->z < slidemo->height)
|
if (opentop - slidemo->z < slidemo->height)
|
||||||
goto isblocking; // mobj is too high
|
goto isblocking; // mobj is too high
|
||||||
|
|
||||||
if (openbottom - slidemo->z > FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale))
|
if (openbottom - slidemo->z > FixedMul(MAXSTEPMOVE, mapobjectscale))
|
||||||
goto isblocking; // too big a step up
|
goto isblocking; // too big a step up
|
||||||
|
|
||||||
// this line doesn't block movement
|
// this line doesn't block movement
|
||||||
|
@ -3809,6 +3809,7 @@ void P_BouncePlayerMove(mobj_t *mo)
|
||||||
fixed_t leadx, leady;
|
fixed_t leadx, leady;
|
||||||
fixed_t trailx, traily;
|
fixed_t trailx, traily;
|
||||||
fixed_t mmomx = 0, mmomy = 0;
|
fixed_t mmomx = 0, mmomy = 0;
|
||||||
|
fixed_t oldmomx = mo->momx, oldmomy = mo->momy;
|
||||||
|
|
||||||
if (!mo->player)
|
if (!mo->player)
|
||||||
return;
|
return;
|
||||||
|
@ -3897,7 +3898,9 @@ void P_BouncePlayerMove(mobj_t *mo)
|
||||||
mo->player->cmomx = tmxmove;
|
mo->player->cmomx = tmxmove;
|
||||||
mo->player->cmomy = tmymove;
|
mo->player->cmomy = tmymove;
|
||||||
|
|
||||||
P_TryMove(mo, mo->x + tmxmove, mo->y + tmymove, true);
|
if (!P_TryMove(mo, mo->x + tmxmove, mo->y + tmymove, true)) {
|
||||||
|
P_TryMove(mo, mo->x - oldmomx, mo->y - oldmomy, true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
65
src/p_mobj.c
65
src/p_mobj.c
|
@ -1744,7 +1744,7 @@ void P_XYMovement(mobj_t *mo)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (mo->scale < mapheaderinfo[gamemap-1]->mobj_scale/16)
|
if (mo->scale < mapobjectscale/16)
|
||||||
{
|
{
|
||||||
P_RemoveMobj(mo);
|
P_RemoveMobj(mo);
|
||||||
return;
|
return;
|
||||||
|
@ -3675,7 +3675,7 @@ boolean P_CameraThinker(player_t *player, camera_t *thiscam, boolean resetcalled
|
||||||
postimg = postimg_mirror;
|
postimg = postimg_mirror;
|
||||||
else if (player->pflags & PF_FLIPCAM && !(player->pflags & PF_NIGHTSMODE) && player->mo->eflags & MFE_VERTICALFLIP)
|
else if (player->pflags & PF_FLIPCAM && !(player->pflags & PF_NIGHTSMODE) && player->mo->eflags & MFE_VERTICALFLIP)
|
||||||
postimg = postimg_flip;
|
postimg = postimg_flip;
|
||||||
else if (player->awayviewtics && player->awayviewmobj != NULL) // Camera must obviously exist
|
else if (player->awayviewtics && player->awayviewmobj && !P_MobjWasRemoved(player->awayviewmobj)) // Camera must obviously exist
|
||||||
{
|
{
|
||||||
camera_t dummycam;
|
camera_t dummycam;
|
||||||
dummycam.subsector = player->awayviewmobj->subsector;
|
dummycam.subsector = player->awayviewmobj->subsector;
|
||||||
|
@ -7223,7 +7223,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
{
|
{
|
||||||
x = mobj->target->x;
|
x = mobj->target->x;
|
||||||
y = mobj->target->y;
|
y = mobj->target->y;
|
||||||
z = mobj->target->z + 80*(mapheaderinfo[gamemap-1]->mobj_scale);
|
z = mobj->target->z + (80*mapobjectscale);
|
||||||
}
|
}
|
||||||
P_TeleportMove(mobj, x, y, z);
|
P_TeleportMove(mobj, x, y, z);
|
||||||
}
|
}
|
||||||
|
@ -7890,7 +7890,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
mobj->flags &= ~MF_NOGRAVITY;
|
mobj->flags &= ~MF_NOGRAVITY;
|
||||||
if (mobj->z > mobj->watertop && mobj->z - mobj->watertop < FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale))
|
if (mobj->z > mobj->watertop && mobj->z - mobj->watertop < FixedMul(MAXSTEPMOVE, mapobjectscale))
|
||||||
mobj->z = mobj->watertop;
|
mobj->z = mobj->watertop;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -7959,7 +7959,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
if (mobj->flags2 & MF2_NIGHTSPULL)
|
if (mobj->flags2 & MF2_NIGHTSPULL)
|
||||||
{
|
{
|
||||||
if (!mobj->tracer || !mobj->tracer->health
|
if (!mobj->tracer || !mobj->tracer->health
|
||||||
|| mobj->scale <= mapheaderinfo[gamemap-1]->mobj_scale>>4)
|
|| mobj->scale <= mapobjectscale>>4)
|
||||||
{
|
{
|
||||||
P_RemoveMobj(mobj);
|
P_RemoveMobj(mobj);
|
||||||
return;
|
return;
|
||||||
|
@ -7968,7 +7968,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fixed_t adj = FixedMul(FRACUNIT - FINECOSINE((mobj->movedir>>ANGLETOFINESHIFT) & FINEMASK), (mapheaderinfo[gamemap-1]->mobj_scale<<3));
|
fixed_t adj = FixedMul(FRACUNIT - FINECOSINE((mobj->movedir>>ANGLETOFINESHIFT) & FINEMASK), (mapobjectscale<<3));
|
||||||
mobj->movedir += 2*ANG2;
|
mobj->movedir += 2*ANG2;
|
||||||
if (mobj->eflags & MFE_VERTICALFLIP)
|
if (mobj->eflags & MFE_VERTICALFLIP)
|
||||||
mobj->z = mobj->ceilingz - mobj->height - adj;
|
mobj->z = mobj->ceilingz - mobj->height - adj;
|
||||||
|
@ -8025,15 +8025,10 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fixed_t finalspeed = mobj->info->speed;
|
fixed_t finalspeed = mobj->movefactor;
|
||||||
|
|
||||||
P_SpawnGhostMobj(mobj);
|
P_SpawnGhostMobj(mobj);
|
||||||
|
|
||||||
if (gamespeed == 0)
|
|
||||||
finalspeed = FixedMul(finalspeed, FRACUNIT-FRACUNIT/4);
|
|
||||||
else if (gamespeed == 2)
|
|
||||||
finalspeed = FixedMul(finalspeed, FRACUNIT+FRACUNIT/4);
|
|
||||||
|
|
||||||
mobj->angle = R_PointToAngle2(0, 0, mobj->momx, mobj->momy);
|
mobj->angle = R_PointToAngle2(0, 0, mobj->momx, mobj->momy);
|
||||||
if (mobj->health <= 5)
|
if (mobj->health <= 5)
|
||||||
{
|
{
|
||||||
|
@ -8041,7 +8036,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
for (i = 5; i >= mobj->health; i--)
|
for (i = 5; i >= mobj->health; i--)
|
||||||
finalspeed = FixedMul(finalspeed, FRACUNIT-FRACUNIT/4);
|
finalspeed = FixedMul(finalspeed, FRACUNIT-FRACUNIT/4);
|
||||||
}
|
}
|
||||||
finalspeed = FixedMul(finalspeed, mapheaderinfo[gamemap-1]->mobj_scale);
|
|
||||||
P_InstaThrust(mobj, mobj->angle, finalspeed);
|
P_InstaThrust(mobj, mobj->angle, finalspeed);
|
||||||
|
|
||||||
if (grounded)
|
if (grounded)
|
||||||
|
@ -8064,8 +8059,8 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
case MT_JAWZ:
|
case MT_JAWZ:
|
||||||
{
|
{
|
||||||
sector_t *sec2;
|
sector_t *sec2;
|
||||||
fixed_t topspeed = 64*FRACUNIT;
|
fixed_t topspeed = mobj->movefactor;
|
||||||
fixed_t distbarrier = 512*FRACUNIT;
|
fixed_t distbarrier = 512*mapobjectscale;
|
||||||
fixed_t distaway;
|
fixed_t distaway;
|
||||||
|
|
||||||
P_SpawnGhostMobj(mobj);
|
P_SpawnGhostMobj(mobj);
|
||||||
|
@ -8076,18 +8071,9 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
S_StartSound(mobj, mobj->info->activesound);
|
S_StartSound(mobj, mobj->info->activesound);
|
||||||
|
|
||||||
if (gamespeed == 0)
|
if (gamespeed == 0)
|
||||||
{
|
|
||||||
topspeed = FixedMul(topspeed, FRACUNIT-FRACUNIT/4);
|
|
||||||
distbarrier = FixedMul(distbarrier, FRACUNIT-FRACUNIT/4);
|
distbarrier = FixedMul(distbarrier, FRACUNIT-FRACUNIT/4);
|
||||||
}
|
|
||||||
else if (gamespeed == 2)
|
else if (gamespeed == 2)
|
||||||
{
|
|
||||||
topspeed = FixedMul(topspeed, FRACUNIT+FRACUNIT/4);
|
|
||||||
distbarrier = FixedMul(distbarrier, FRACUNIT+FRACUNIT/4);
|
distbarrier = FixedMul(distbarrier, FRACUNIT+FRACUNIT/4);
|
||||||
}
|
|
||||||
|
|
||||||
distbarrier = FixedMul(distbarrier, mapheaderinfo[gamemap-1]->mobj_scale);
|
|
||||||
topspeed = FixedMul(topspeed, mapheaderinfo[gamemap-1]->mobj_scale);
|
|
||||||
|
|
||||||
if (G_RaceGametype() && mobj->tracer)
|
if (G_RaceGametype() && mobj->tracer)
|
||||||
{
|
{
|
||||||
|
@ -8146,7 +8132,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
{
|
{
|
||||||
P_SpawnGhostMobj(mobj);
|
P_SpawnGhostMobj(mobj);
|
||||||
mobj->angle = R_PointToAngle2(0, 0, mobj->momx, mobj->momy);
|
mobj->angle = R_PointToAngle2(0, 0, mobj->momx, mobj->momy);
|
||||||
P_InstaThrust(mobj, mobj->angle, mobj->info->speed);
|
P_InstaThrust(mobj, mobj->angle, mobj->movefactor);
|
||||||
|
|
||||||
if (grounded)
|
if (grounded)
|
||||||
{
|
{
|
||||||
|
@ -8846,7 +8832,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
mobj_t *head = P_SpawnMobj(mobj->x, mobj->y, mobj->z, (blue ? MT_BLUEROBRA_HEAD : MT_ROBRA_HEAD));
|
mobj_t *head = P_SpawnMobj(mobj->x, mobj->y, mobj->z, (blue ? MT_BLUEROBRA_HEAD : MT_ROBRA_HEAD));
|
||||||
P_SetTarget(&mobj->tracer, head);
|
P_SetTarget(&mobj->tracer, head);
|
||||||
|
|
||||||
mobj->destscale = mapheaderinfo[gamemap-1]->mobj_scale;
|
mobj->destscale = mapobjectscale;
|
||||||
P_SetTarget(&mobj->tracer->target, mobj->target);
|
P_SetTarget(&mobj->tracer->target, mobj->target);
|
||||||
P_SetTarget(&mobj->tracer->tracer, mobj);
|
P_SetTarget(&mobj->tracer->tracer, mobj);
|
||||||
mobj->tracer->extravalue2 = mobj->extravalue2;
|
mobj->tracer->extravalue2 = mobj->extravalue2;
|
||||||
|
@ -9296,6 +9282,8 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
// Assumedly in splitscreen players will be on opposing teams
|
// Assumedly in splitscreen players will be on opposing teams
|
||||||
if (players[consoleplayer].ctfteam == 1 || splitscreen)
|
if (players[consoleplayer].ctfteam == 1 || splitscreen)
|
||||||
S_StartSound(NULL, sfx_hoop1);
|
S_StartSound(NULL, sfx_hoop1);
|
||||||
|
else if (players[consoleplayer].ctfteam == 2)
|
||||||
|
S_StartSound(NULL, sfx_hoop3);
|
||||||
|
|
||||||
redflag = flagmo;
|
redflag = flagmo;
|
||||||
}
|
}
|
||||||
|
@ -9307,6 +9295,8 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
// Assumedly in splitscreen players will be on opposing teams
|
// Assumedly in splitscreen players will be on opposing teams
|
||||||
if (players[consoleplayer].ctfteam == 2 || splitscreen)
|
if (players[consoleplayer].ctfteam == 2 || splitscreen)
|
||||||
S_StartSound(NULL, sfx_hoop1);
|
S_StartSound(NULL, sfx_hoop1);
|
||||||
|
else if (players[consoleplayer].ctfteam == 1)
|
||||||
|
S_StartSound(NULL, sfx_hoop3);
|
||||||
|
|
||||||
blueflag = flagmo;
|
blueflag = flagmo;
|
||||||
}
|
}
|
||||||
|
@ -9772,10 +9762,13 @@ mobj_t *P_SpawnMobj(fixed_t x, fixed_t y, fixed_t z, mobjtype_t type)
|
||||||
// All mobjs are created at 100% scale.
|
// All mobjs are created at 100% scale.
|
||||||
mobj->scale = FRACUNIT;
|
mobj->scale = FRACUNIT;
|
||||||
mobj->destscale = mobj->scale;
|
mobj->destscale = mobj->scale;
|
||||||
mobj->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/12;
|
mobj->scalespeed = FRACUNIT/12;
|
||||||
|
|
||||||
if (mapheaderinfo[gamemap-1] && mapheaderinfo[gamemap-1]->mobj_scale != FRACUNIT) //&& !(mobj->type == MT_BLACKEGGMAN)
|
if (mapobjectscale != FRACUNIT) //&& !(mobj->type == MT_BLACKEGGMAN)
|
||||||
mobj->destscale = mapheaderinfo[gamemap-1]->mobj_scale;
|
{
|
||||||
|
mobj->destscale = mapobjectscale;
|
||||||
|
mobj->scalespeed = mapobjectscale/12;
|
||||||
|
}
|
||||||
|
|
||||||
// set subsector and/or block links
|
// set subsector and/or block links
|
||||||
P_SetThingPosition(mobj);
|
P_SetThingPosition(mobj);
|
||||||
|
@ -10219,10 +10212,13 @@ mobj_t *P_SpawnShadowMobj(mobj_t * caster)
|
||||||
// All mobjs are created at 100% scale.
|
// All mobjs are created at 100% scale.
|
||||||
mobj->scale = FRACUNIT;
|
mobj->scale = FRACUNIT;
|
||||||
mobj->destscale = mobj->scale;
|
mobj->destscale = mobj->scale;
|
||||||
mobj->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/12;
|
mobj->scalespeed = FRACUNIT/12;
|
||||||
|
|
||||||
if (mapheaderinfo[gamemap-1] && mapheaderinfo[gamemap-1]->mobj_scale != FRACUNIT) //&& !(mobj->type == MT_BLACKEGGMAN)
|
if (mapobjectscale != FRACUNIT) //&& !(mobj->type == MT_BLACKEGGMAN)
|
||||||
mobj->destscale = mapheaderinfo[gamemap-1]->mobj_scale;
|
{
|
||||||
|
mobj->destscale = mapobjectscale;
|
||||||
|
mobj->scalespeed = mapobjectscale/12;
|
||||||
|
}
|
||||||
|
|
||||||
P_SetScale(mobj, mobj->destscale);
|
P_SetScale(mobj, mobj->destscale);
|
||||||
|
|
||||||
|
@ -11128,7 +11124,7 @@ void P_MovePlayerToSpawn(INT32 playernum, mapthing_t *mthing)
|
||||||
if (mthing->options >> ZSHIFT)
|
if (mthing->options >> ZSHIFT)
|
||||||
z -= ((mthing->options >> ZSHIFT) << FRACBITS);
|
z -= ((mthing->options >> ZSHIFT) << FRACBITS);
|
||||||
if (p->kartstuff[k_respawn])
|
if (p->kartstuff[k_respawn])
|
||||||
z -= 128*FRACUNIT; // Too late for v1, but for later: 128*mapheaderinfo[gamemap-1]->mobj_scale;
|
z -= 128*FRACUNIT; // Too late for v1, but for later: 128*mapobjectscale;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -11136,7 +11132,7 @@ void P_MovePlayerToSpawn(INT32 playernum, mapthing_t *mthing)
|
||||||
if (mthing->options >> ZSHIFT)
|
if (mthing->options >> ZSHIFT)
|
||||||
z += ((mthing->options >> ZSHIFT) << FRACBITS);
|
z += ((mthing->options >> ZSHIFT) << FRACBITS);
|
||||||
if (p->kartstuff[k_respawn])
|
if (p->kartstuff[k_respawn])
|
||||||
z += 128*FRACUNIT; // Too late for v1, but for later: 128*mapheaderinfo[gamemap-1]->mobj_scale;
|
z += 128*FRACUNIT; // Too late for v1, but for later: 128*mapobjectscale;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mthing->options & MTF_OBJECTFLIP) // flip the player!
|
if (mthing->options & MTF_OBJECTFLIP) // flip the player!
|
||||||
|
@ -11910,6 +11906,7 @@ ML_NOCLIMB : Direction not controllable
|
||||||
else if (i == MT_BOSS3WAYPOINT) // SRB2kart 120217 - Used to store checkpoint num
|
else if (i == MT_BOSS3WAYPOINT) // SRB2kart 120217 - Used to store checkpoint num
|
||||||
{
|
{
|
||||||
mobj->health = mthing->angle;
|
mobj->health = mthing->angle;
|
||||||
|
mobj->movecount = mthing->extrainfo;
|
||||||
P_SetTarget(&mobj->tracer, waypointcap);
|
P_SetTarget(&mobj->tracer, waypointcap);
|
||||||
P_SetTarget(&waypointcap, mobj);
|
P_SetTarget(&waypointcap, mobj);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1863,6 +1863,9 @@ void T_PolyObjWaypoint(polywaypoint_t *th)
|
||||||
diffz = po->lines[0]->backsector->floorheight - (target->z - amtz);
|
diffz = po->lines[0]->backsector->floorheight - (target->z - amtz);
|
||||||
po->lines[0]->backsector->floorheight = target->z - amtz;
|
po->lines[0]->backsector->floorheight = target->z - amtz;
|
||||||
po->lines[0]->backsector->ceilingheight = target->z + amtz;
|
po->lines[0]->backsector->ceilingheight = target->z + amtz;
|
||||||
|
// Sal: Remember to check your sectors!
|
||||||
|
P_CheckSector(po->lines[0]->frontsector, (boolean)(po->damage));
|
||||||
|
P_CheckSector(po->lines[0]->backsector, (boolean)(po->damage));
|
||||||
// Apply action to mirroring polyobjects as well
|
// Apply action to mirroring polyobjects as well
|
||||||
start = 0;
|
start = 0;
|
||||||
while ((po = Polyobj_GetChild(oldpo, &start)))
|
while ((po = Polyobj_GetChild(oldpo, &start)))
|
||||||
|
@ -1874,6 +1877,9 @@ void T_PolyObjWaypoint(polywaypoint_t *th)
|
||||||
// TODO: use T_MovePlane
|
// TODO: use T_MovePlane
|
||||||
po->lines[0]->backsector->floorheight += diffz; // move up/down by same amount as the parent did
|
po->lines[0]->backsector->floorheight += diffz; // move up/down by same amount as the parent did
|
||||||
po->lines[0]->backsector->ceilingheight += diffz;
|
po->lines[0]->backsector->ceilingheight += diffz;
|
||||||
|
// Sal: Remember to check your sectors!
|
||||||
|
P_CheckSector(po->lines[0]->frontsector, (boolean)(po->damage));
|
||||||
|
P_CheckSector(po->lines[0]->backsector, (boolean)(po->damage));
|
||||||
}
|
}
|
||||||
|
|
||||||
po = oldpo;
|
po = oldpo;
|
||||||
|
@ -2034,6 +2040,9 @@ void T_PolyObjWaypoint(polywaypoint_t *th)
|
||||||
// TODO: use T_MovePlane
|
// TODO: use T_MovePlane
|
||||||
po->lines[0]->backsector->floorheight += momz;
|
po->lines[0]->backsector->floorheight += momz;
|
||||||
po->lines[0]->backsector->ceilingheight += momz;
|
po->lines[0]->backsector->ceilingheight += momz;
|
||||||
|
// Sal: Remember to check your sectors!
|
||||||
|
P_CheckSector(po->lines[0]->frontsector, (boolean)(po->damage)); // frontsector is NEEDED for crushing
|
||||||
|
P_CheckSector(po->lines[0]->backsector, (boolean)(po->damage)); // backsector may not be necessary, but just in case
|
||||||
|
|
||||||
// Apply action to mirroring polyobjects as well
|
// Apply action to mirroring polyobjects as well
|
||||||
start = 0;
|
start = 0;
|
||||||
|
@ -2046,6 +2055,9 @@ void T_PolyObjWaypoint(polywaypoint_t *th)
|
||||||
// TODO: use T_MovePlane
|
// TODO: use T_MovePlane
|
||||||
po->lines[0]->backsector->floorheight += momz;
|
po->lines[0]->backsector->floorheight += momz;
|
||||||
po->lines[0]->backsector->ceilingheight += momz;
|
po->lines[0]->backsector->ceilingheight += momz;
|
||||||
|
// Sal: Remember to check your sectors!
|
||||||
|
P_CheckSector(po->lines[0]->frontsector, (boolean)(po->damage));
|
||||||
|
P_CheckSector(po->lines[0]->backsector, (boolean)(po->damage));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1132,7 +1132,7 @@ static void SaveMobjThinker(const thinker_t *th, const UINT8 type)
|
||||||
diff |= MD_SCALE;
|
diff |= MD_SCALE;
|
||||||
if (mobj->destscale != mobj->scale)
|
if (mobj->destscale != mobj->scale)
|
||||||
diff |= MD_DSCALE;
|
diff |= MD_DSCALE;
|
||||||
if (mobj->scalespeed != mapheaderinfo[gamemap-1]->mobj_scale/12)
|
if (mobj->scalespeed != mapobjectscale/12)
|
||||||
diff2 |= MD2_SCALESPEED;
|
diff2 |= MD2_SCALESPEED;
|
||||||
|
|
||||||
if (mobj == redflag)
|
if (mobj == redflag)
|
||||||
|
@ -2139,7 +2139,7 @@ static void LoadMobjThinker(actionf_p1 thinker)
|
||||||
if (diff2 & MD2_SCALESPEED)
|
if (diff2 & MD2_SCALESPEED)
|
||||||
mobj->scalespeed = READFIXED(save_p);
|
mobj->scalespeed = READFIXED(save_p);
|
||||||
else
|
else
|
||||||
mobj->scalespeed = mapheaderinfo[gamemap-1]->mobj_scale/12;
|
mobj->scalespeed = mapobjectscale/12;
|
||||||
if (diff2 & MD2_CUSVAL)
|
if (diff2 & MD2_CUSVAL)
|
||||||
mobj->cusval = READINT32(save_p);
|
mobj->cusval = READINT32(save_p);
|
||||||
if (diff2 & MD2_CVMEM)
|
if (diff2 & MD2_CVMEM)
|
||||||
|
@ -3282,6 +3282,7 @@ static void P_NetArchiveMisc(void)
|
||||||
WRITEUINT32(save_p, countdown2);
|
WRITEUINT32(save_p, countdown2);
|
||||||
|
|
||||||
WRITEFIXED(save_p, gravity);
|
WRITEFIXED(save_p, gravity);
|
||||||
|
WRITEFIXED(save_p, mapobjectscale);
|
||||||
|
|
||||||
WRITEUINT32(save_p, countdowntimer);
|
WRITEUINT32(save_p, countdowntimer);
|
||||||
WRITEUINT8(save_p, countdowntimeup);
|
WRITEUINT8(save_p, countdowntimeup);
|
||||||
|
@ -3389,6 +3390,7 @@ static inline boolean P_NetUnArchiveMisc(void)
|
||||||
countdown2 = READUINT32(save_p);
|
countdown2 = READUINT32(save_p);
|
||||||
|
|
||||||
gravity = READFIXED(save_p);
|
gravity = READFIXED(save_p);
|
||||||
|
mapobjectscale = READFIXED(save_p);
|
||||||
|
|
||||||
countdowntimer = (tic_t)READUINT32(save_p);
|
countdowntimer = (tic_t)READUINT32(save_p);
|
||||||
countdowntimeup = (boolean)READUINT8(save_p);
|
countdowntimeup = (boolean)READUINT8(save_p);
|
||||||
|
|
|
@ -229,6 +229,8 @@ static void P_ClearSingleMapHeaderInfo(INT16 i)
|
||||||
mapheaderinfo[num]->levelselect = 0;
|
mapheaderinfo[num]->levelselect = 0;
|
||||||
DEH_WriteUndoline("BONUSTYPE", va("%d", mapheaderinfo[num]->bonustype), UNDO_NONE);
|
DEH_WriteUndoline("BONUSTYPE", va("%d", mapheaderinfo[num]->bonustype), UNDO_NONE);
|
||||||
mapheaderinfo[num]->bonustype = 0;
|
mapheaderinfo[num]->bonustype = 0;
|
||||||
|
DEH_WriteUndoline("SAVEOVERRIDE", va("%d", mapheaderinfo[num]->saveoverride), UNDO_NONE);
|
||||||
|
mapheaderinfo[num]->saveoverride = SAVE_DEFAULT;
|
||||||
DEH_WriteUndoline("LEVELFLAGS", va("%d", mapheaderinfo[num]->levelflags), UNDO_NONE);
|
DEH_WriteUndoline("LEVELFLAGS", va("%d", mapheaderinfo[num]->levelflags), UNDO_NONE);
|
||||||
mapheaderinfo[num]->levelflags = 0;
|
mapheaderinfo[num]->levelflags = 0;
|
||||||
DEH_WriteUndoline("MENUFLAGS", va("%d", mapheaderinfo[num]->menuflags), UNDO_NONE);
|
DEH_WriteUndoline("MENUFLAGS", va("%d", mapheaderinfo[num]->menuflags), UNDO_NONE);
|
||||||
|
@ -395,30 +397,26 @@ static inline void P_LoadVertexes(lumpnum_t lumpnum)
|
||||||
Z_Free(data);
|
Z_Free(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Computes the line length in fracunits, the OpenGL render needs this
|
|
||||||
//
|
|
||||||
|
|
||||||
/** Computes the length of a seg in fracunits.
|
/** Computes the length of a seg in fracunits.
|
||||||
* This is needed for splats.
|
|
||||||
*
|
*
|
||||||
* \param seg Seg to compute length for.
|
* \param seg Seg to compute length for.
|
||||||
* \return Length in fracunits.
|
* \return Length in fracunits.
|
||||||
*/
|
*/
|
||||||
fixed_t P_SegLength(seg_t *seg)
|
fixed_t P_SegLength(seg_t *seg)
|
||||||
{
|
{
|
||||||
fixed_t dx, dy;
|
INT64 dx = (seg->v2->x - seg->v1->x)>>1;
|
||||||
|
INT64 dy = (seg->v2->y - seg->v1->y)>>1;
|
||||||
// make a vector (start at origin)
|
return FixedHypot(dx, dy)<<1;
|
||||||
dx = seg->v2->x - seg->v1->x;
|
|
||||||
dy = seg->v2->y - seg->v1->y;
|
|
||||||
|
|
||||||
return FixedHypot(dx, dy);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HWRENDER
|
#ifdef HWRENDER
|
||||||
static inline float P_SegLengthf(seg_t *seg)
|
/** Computes the length of a seg as a float.
|
||||||
|
* This is needed for OpenGL.
|
||||||
|
*
|
||||||
|
* \param seg Seg to compute length for.
|
||||||
|
* \return Length as a float.
|
||||||
|
*/
|
||||||
|
static inline float P_SegLengthFloat(seg_t *seg)
|
||||||
{
|
{
|
||||||
float dx, dy;
|
float dx, dy;
|
||||||
|
|
||||||
|
@ -454,11 +452,11 @@ static void P_LoadRawSegs(UINT8 *data, size_t i)
|
||||||
li->v1 = &vertexes[SHORT(ml->v1)];
|
li->v1 = &vertexes[SHORT(ml->v1)];
|
||||||
li->v2 = &vertexes[SHORT(ml->v2)];
|
li->v2 = &vertexes[SHORT(ml->v2)];
|
||||||
|
|
||||||
#ifdef HWRENDER // not win32 only 19990829 by Kin
|
li->length = P_SegLength(li);
|
||||||
// used for the hardware render
|
#ifdef HWRENDER
|
||||||
if (rendermode != render_soft && rendermode != render_none)
|
if (rendermode == render_opengl)
|
||||||
{
|
{
|
||||||
li->flength = P_SegLengthf(li);
|
li->flength = P_SegLengthFloat(li);
|
||||||
//Hurdler: 04/12/2000: for now, only used in hardware mode
|
//Hurdler: 04/12/2000: for now, only used in hardware mode
|
||||||
li->lightmaps = NULL; // list of static lightmap for this seg
|
li->lightmaps = NULL; // list of static lightmap for this seg
|
||||||
}
|
}
|
||||||
|
@ -2019,7 +2017,7 @@ static boolean P_LoadRawBlockMap(UINT8 *data, size_t count, const char *lumpname
|
||||||
if (!count || count >= 0x20000)
|
if (!count || count >= 0x20000)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
CONS_Printf("Reading blockmap lump for pk3...\n");
|
//CONS_Printf("Reading blockmap lump for pk3...\n");
|
||||||
|
|
||||||
// no need to malloc anything, assume the data is uncompressed for now
|
// no need to malloc anything, assume the data is uncompressed for now
|
||||||
count /= 2;
|
count /= 2;
|
||||||
|
@ -2714,6 +2712,32 @@ static void P_SetupCamera(UINT8 pnum, camera_t *cam)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static boolean P_CanSave(void)
|
||||||
|
{
|
||||||
|
#if 0
|
||||||
|
// Saving is completely ignored under these conditions:
|
||||||
|
if ((cursaveslot < 0) // Playing without saving
|
||||||
|
|| (modifiedgame && !savemoddata) // Game is modified
|
||||||
|
|| (netgame || multiplayer) // Not in single-player
|
||||||
|
|| (demoplayback || demorecording || metalrecording) // Currently in demo
|
||||||
|
|| (players[consoleplayer].lives <= 0) // Completely dead
|
||||||
|
|| (modeattacking || ultimatemode || G_IsSpecialStage(gamemap))) // Specialized instances
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (mapheaderinfo[gamemap-1]->saveoverride == SAVE_ALWAYS)
|
||||||
|
return true; // Saving should ALWAYS happen!
|
||||||
|
else if (mapheaderinfo[gamemap-1]->saveoverride == SAVE_NEVER)
|
||||||
|
return false; // Saving should NEVER happen!
|
||||||
|
|
||||||
|
// Default condition: In a non-hidden map, at the beginning of a zone or on a completed save-file, and not on save reload.
|
||||||
|
return (!(mapheaderinfo[gamemap-1]->menuflags & LF2_HIDEINMENU)
|
||||||
|
&& (mapheaderinfo[gamemap-1]->actnum < 2 || gamecomplete)
|
||||||
|
&& (gamemap != lastmapsaved));
|
||||||
|
#else
|
||||||
|
return false; // SRB2Kart: no SP, no saving.
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
/** Loads a level from a lump or external wad.
|
/** Loads a level from a lump or external wad.
|
||||||
*
|
*
|
||||||
* \param skipprecip If true, don't spawn precipitation.
|
* \param skipprecip If true, don't spawn precipitation.
|
||||||
|
@ -3154,12 +3178,12 @@ boolean P_SetupLevel(boolean skipprecip)
|
||||||
/*if (!cv_cam_height.changed)
|
/*if (!cv_cam_height.changed)
|
||||||
CV_Set(&cv_cam_height, cv_cam_height.defaultvalue);
|
CV_Set(&cv_cam_height, cv_cam_height.defaultvalue);
|
||||||
|
|
||||||
if (!cv_cam2_height.changed)
|
|
||||||
CV_Set(&cv_cam2_height, cv_cam2_height.defaultvalue);
|
|
||||||
|
|
||||||
if (!cv_cam_dist.changed)
|
if (!cv_cam_dist.changed)
|
||||||
CV_Set(&cv_cam_dist, cv_cam_dist.defaultvalue);
|
CV_Set(&cv_cam_dist, cv_cam_dist.defaultvalue);
|
||||||
|
|
||||||
|
if (!cv_cam2_height.changed)
|
||||||
|
CV_Set(&cv_cam2_height, cv_cam2_height.defaultvalue);
|
||||||
|
|
||||||
if (!cv_cam2_dist.changed)
|
if (!cv_cam2_dist.changed)
|
||||||
CV_Set(&cv_cam2_dist, cv_cam2_dist.defaultvalue);*/
|
CV_Set(&cv_cam2_dist, cv_cam2_dist.defaultvalue);*/
|
||||||
|
|
||||||
|
@ -3253,10 +3277,7 @@ boolean P_SetupLevel(boolean skipprecip)
|
||||||
|
|
||||||
P_RunCachedActions();
|
P_RunCachedActions();
|
||||||
|
|
||||||
if (!(netgame || multiplayer || demoplayback || demorecording || metalrecording || modeattacking || players[consoleplayer].lives <= 0)
|
if (P_CanSave())
|
||||||
&& (!modifiedgame || savemoddata) && cursaveslot >= 0 && !ultimatemode
|
|
||||||
&& !(mapheaderinfo[gamemap-1]->menuflags & LF2_HIDEINMENU)
|
|
||||||
&& (!G_IsSpecialStage(gamemap)) && gamemap != lastmapsaved && (/*mapheaderinfo[gamemap-1]->actnum < 2 ||*/ gamecomplete))
|
|
||||||
G_SaveGame((UINT32)cursaveslot);
|
G_SaveGame((UINT32)cursaveslot);
|
||||||
|
|
||||||
if (savedata.lives > 0)
|
if (savedata.lives > 0)
|
||||||
|
|
|
@ -801,8 +801,8 @@ void P_SlopeLaunch(mobj_t *mo)
|
||||||
|
|
||||||
#ifdef GROWNEVERMISSES
|
#ifdef GROWNEVERMISSES
|
||||||
{
|
{
|
||||||
const fixed_t xyscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - mo->scale);
|
const fixed_t xyscale = mapobjectscale + (mapobjectscale - mo->scale);
|
||||||
const fixed_t zscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - mo->scale);
|
const fixed_t zscale = mapobjectscale + (mapobjectscale - mo->scale);
|
||||||
mo->momx = FixedMul(slopemom.x, xyscale);
|
mo->momx = FixedMul(slopemom.x, xyscale);
|
||||||
mo->momy = FixedMul(slopemom.y, xyscale);
|
mo->momy = FixedMul(slopemom.y, xyscale);
|
||||||
mo->momz = FixedMul(slopemom.z, zscale);
|
mo->momz = FixedMul(slopemom.z, zscale);
|
||||||
|
|
12
src/p_spec.c
12
src/p_spec.c
|
@ -3262,7 +3262,7 @@ void P_SetupSignExit(player_t *player)
|
||||||
// SRB2Kart: FINALLY, add in an alternative if no place is found
|
// SRB2Kart: FINALLY, add in an alternative if no place is found
|
||||||
if (player->mo)
|
if (player->mo)
|
||||||
{
|
{
|
||||||
mobj_t *sign = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + (768*mapheaderinfo[gamemap-1]->mobj_scale), MT_SIGN);
|
mobj_t *sign = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + (768*mapobjectscale), MT_SIGN);
|
||||||
|
|
||||||
P_SetTarget(&sign->target, player->mo);
|
P_SetTarget(&sign->target, player->mo);
|
||||||
P_SetMobjState(sign, S_SIGN1);
|
P_SetMobjState(sign, S_SIGN1);
|
||||||
|
@ -3770,7 +3770,7 @@ DoneSection2:
|
||||||
case 1: // SRB2kart: Spring Panel
|
case 1: // SRB2kart: Spring Panel
|
||||||
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
||||||
{
|
{
|
||||||
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale);
|
const fixed_t hscale = mapobjectscale + (mapobjectscale - player->mo->scale);
|
||||||
const fixed_t minspeed = 24*hscale;
|
const fixed_t minspeed = 24*hscale;
|
||||||
|
|
||||||
if (player->mo->eflags & MFE_SPRUNG)
|
if (player->mo->eflags & MFE_SPRUNG)
|
||||||
|
@ -3790,7 +3790,7 @@ DoneSection2:
|
||||||
case 3: // SRB2kart: Spring Panel (capped speed)
|
case 3: // SRB2kart: Spring Panel (capped speed)
|
||||||
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
if (roversector || P_MobjReadyToTrigger(player->mo, sector))
|
||||||
{
|
{
|
||||||
const fixed_t hscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - player->mo->scale);
|
const fixed_t hscale = mapobjectscale + (mapobjectscale - player->mo->scale);
|
||||||
const fixed_t minspeed = 24*hscale;
|
const fixed_t minspeed = 24*hscale;
|
||||||
const fixed_t maxspeed = 28*hscale;
|
const fixed_t maxspeed = 28*hscale;
|
||||||
|
|
||||||
|
@ -3829,8 +3829,8 @@ DoneSection2:
|
||||||
|
|
||||||
// SRB2Kart: Scale the speed you get from them!
|
// SRB2Kart: Scale the speed you get from them!
|
||||||
// This is scaled differently from other horizontal speed boosts from stuff like springs, because of how this is used for some ramp jumps.
|
// This is scaled differently from other horizontal speed boosts from stuff like springs, because of how this is used for some ramp jumps.
|
||||||
if (player->mo->scale > mapheaderinfo[gamemap-1]->mobj_scale)
|
if (player->mo->scale > mapobjectscale)
|
||||||
linespeed = FixedMul(linespeed, mapheaderinfo[gamemap-1]->mobj_scale + (player->mo->scale - mapheaderinfo[gamemap-1]->mobj_scale));
|
linespeed = FixedMul(linespeed, mapobjectscale + (player->mo->scale - mapobjectscale));
|
||||||
|
|
||||||
if (!demoplayback || P_AnalogMove(player))
|
if (!demoplayback || P_AnalogMove(player))
|
||||||
{
|
{
|
||||||
|
@ -5717,6 +5717,8 @@ void P_SpawnSpecials(INT32 fromnetsave)
|
||||||
else
|
else
|
||||||
curWeather = PRECIP_NONE;
|
curWeather = PRECIP_NONE;
|
||||||
|
|
||||||
|
mapobjectscale = mapheaderinfo[gamemap-1]->mobj_scale;
|
||||||
|
|
||||||
P_InitTagLists(); // Create xref tables for tags
|
P_InitTagLists(); // Create xref tables for tags
|
||||||
P_SearchForDisableLinedefs(); // Disable linedefs are now allowed to disable *any* line
|
P_SearchForDisableLinedefs(); // Disable linedefs are now allowed to disable *any* line
|
||||||
|
|
||||||
|
|
87
src/p_user.c
87
src/p_user.c
|
@ -3033,7 +3033,7 @@ static fixed_t teeteryl, teeteryh;
|
||||||
static boolean PIT_CheckSolidsTeeter(mobj_t *thing) // SRB2kart - unused.
|
static boolean PIT_CheckSolidsTeeter(mobj_t *thing) // SRB2kart - unused.
|
||||||
{
|
{
|
||||||
fixed_t blockdist;
|
fixed_t blockdist;
|
||||||
fixed_t tiptop = FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale);
|
fixed_t tiptop = FixedMul(MAXSTEPMOVE, mapobjectscale);
|
||||||
fixed_t thingtop = thing->z + thing->height;
|
fixed_t thingtop = thing->z + thing->height;
|
||||||
fixed_t teeterertop = teeterer->z + teeterer->height;
|
fixed_t teeterertop = teeterer->z + teeterer->height;
|
||||||
|
|
||||||
|
@ -3150,7 +3150,7 @@ static void P_DoTeeter(player_t *player) // SRB2kart - unused.
|
||||||
boolean roverfloor; // solid 3d floors?
|
boolean roverfloor; // solid 3d floors?
|
||||||
fixed_t floorheight, ceilingheight;
|
fixed_t floorheight, ceilingheight;
|
||||||
fixed_t topheight, bottomheight; // for 3d floor usage
|
fixed_t topheight, bottomheight; // for 3d floor usage
|
||||||
const fixed_t tiptop = FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale); // Distance you have to be above the ground in order to teeter.
|
const fixed_t tiptop = FixedMul(MAXSTEPMOVE, mapobjectscale); // Distance you have to be above the ground in order to teeter.
|
||||||
|
|
||||||
if (player->mo->standingslope && player->mo->standingslope->zdelta >= (FRACUNIT/2)) // Always teeter if the slope is too steep.
|
if (player->mo->standingslope && player->mo->standingslope->zdelta >= (FRACUNIT/2)) // Always teeter if the slope is too steep.
|
||||||
teeter = true;
|
teeter = true;
|
||||||
|
@ -5023,9 +5023,9 @@ static void P_SpectatorMovement(player_t *player)
|
||||||
player->mo->z = player->mo->floorz;
|
player->mo->z = player->mo->floorz;
|
||||||
|
|
||||||
if (cmd->buttons & BT_ACCELERATE)
|
if (cmd->buttons & BT_ACCELERATE)
|
||||||
player->mo->z += 32*mapheaderinfo[gamemap-1]->mobj_scale;
|
player->mo->z += 32*mapobjectscale;
|
||||||
else if (cmd->buttons & BT_BRAKE)
|
else if (cmd->buttons & BT_BRAKE)
|
||||||
player->mo->z -= 32*mapheaderinfo[gamemap-1]->mobj_scale;
|
player->mo->z -= 32*mapobjectscale;
|
||||||
|
|
||||||
// Aiming needed for SEENAMES, etc.
|
// Aiming needed for SEENAMES, etc.
|
||||||
// We may not need to fire as a spectator, but this is still handy!
|
// We may not need to fire as a spectator, but this is still handy!
|
||||||
|
@ -5034,14 +5034,14 @@ static void P_SpectatorMovement(player_t *player)
|
||||||
player->mo->momx = player->mo->momy = player->mo->momz = 0;
|
player->mo->momx = player->mo->momy = player->mo->momz = 0;
|
||||||
if (cmd->forwardmove != 0)
|
if (cmd->forwardmove != 0)
|
||||||
{
|
{
|
||||||
P_Thrust(player->mo, player->mo->angle, cmd->forwardmove*(mapheaderinfo[gamemap-1]->mobj_scale));
|
P_Thrust(player->mo, player->mo->angle, cmd->forwardmove*mapobjectscale);
|
||||||
|
|
||||||
// Quake-style flying spectators :D
|
// Quake-style flying spectators :D
|
||||||
player->mo->momz += FixedMul(cmd->forwardmove*(mapheaderinfo[gamemap-1]->mobj_scale), AIMINGTOSLOPE(player->aiming));
|
player->mo->momz += FixedMul(cmd->forwardmove*mapobjectscale, AIMINGTOSLOPE(player->aiming));
|
||||||
}
|
}
|
||||||
if (cmd->sidemove != 0)
|
if (cmd->sidemove != 0)
|
||||||
{
|
{
|
||||||
P_Thrust(player->mo, player->mo->angle-ANGLE_90, cmd->sidemove*(mapheaderinfo[gamemap-1]->mobj_scale));
|
P_Thrust(player->mo, player->mo->angle-ANGLE_90, cmd->sidemove*mapobjectscale);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6697,7 +6697,7 @@ static void P_MovePlayer(player_t *player)
|
||||||
if (player->mo->state != &states[S_KART_SPIN])
|
if (player->mo->state != &states[S_KART_SPIN])
|
||||||
P_SetPlayerMobjState(player->mo, S_KART_SPIN);
|
P_SetPlayerMobjState(player->mo, S_KART_SPIN);
|
||||||
|
|
||||||
if (speed == 1 && abs(player->mo->angle - player->frameangle) < ANGLE_22h)
|
if (speed == 1 && abs((signed)(player->mo->angle - player->frameangle)) < ANGLE_22h)
|
||||||
player->frameangle = player->mo->angle; // Face forward at the end of the animation
|
player->frameangle = player->mo->angle; // Face forward at the end of the animation
|
||||||
else
|
else
|
||||||
player->frameangle -= (ANGLE_11hh * speed);
|
player->frameangle -= (ANGLE_11hh * speed);
|
||||||
|
@ -7811,8 +7811,8 @@ boolean P_LookForEnemies(player_t *player)
|
||||||
if (mo->type == MT_DETON) // Don't be STUPID, Sonic!
|
if (mo->type == MT_DETON) // Don't be STUPID, Sonic!
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (((mo->z > player->mo->z+FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale)) && !(player->mo->eflags & MFE_VERTICALFLIP))
|
if (((mo->z > player->mo->z+FixedMul(MAXSTEPMOVE, mapobjectscale)) && !(player->mo->eflags & MFE_VERTICALFLIP))
|
||||||
|| ((mo->z+mo->height < player->mo->z+player->mo->height-FixedMul(MAXSTEPMOVE, mapheaderinfo[gamemap-1]->mobj_scale)) && (player->mo->eflags & MFE_VERTICALFLIP))) // Reverse gravity check - Flame.
|
|| ((mo->z+mo->height < player->mo->z+player->mo->height-FixedMul(MAXSTEPMOVE, mapobjectscale)) && (player->mo->eflags & MFE_VERTICALFLIP))) // Reverse gravity check - Flame.
|
||||||
continue; // Don't home upwards!
|
continue; // Don't home upwards!
|
||||||
|
|
||||||
if (P_AproxDistance(P_AproxDistance(player->mo->x-mo->x, player->mo->y-mo->y),
|
if (P_AproxDistance(P_AproxDistance(player->mo->x-mo->x, player->mo->y-mo->y),
|
||||||
|
@ -7938,6 +7938,15 @@ void P_FindEmerald(void)
|
||||||
//
|
//
|
||||||
static void P_DeathThink(player_t *player)
|
static void P_DeathThink(player_t *player)
|
||||||
{
|
{
|
||||||
|
//ticcmd_t *cmd = &player->cmd;
|
||||||
|
//player->deltaviewheight = 0;
|
||||||
|
|
||||||
|
if (player->deadtimer < INT32_MAX)
|
||||||
|
player->deadtimer++;
|
||||||
|
|
||||||
|
if (player->bot) // don't allow bots to do any of the below, B_CheckRespawn does all they need for respawning already
|
||||||
|
goto notrealplayer;
|
||||||
|
|
||||||
if (player->pflags & PF_TIMEOVER)
|
if (player->pflags & PF_TIMEOVER)
|
||||||
{
|
{
|
||||||
player->kartstuff[k_timeovercam]++;
|
player->kartstuff[k_timeovercam]++;
|
||||||
|
@ -7952,9 +7961,6 @@ static void P_DeathThink(player_t *player)
|
||||||
|
|
||||||
K_KartPlayerHUDUpdate(player);
|
K_KartPlayerHUDUpdate(player);
|
||||||
|
|
||||||
if (player->deadtimer < INT32_MAX)
|
|
||||||
player->deadtimer++;
|
|
||||||
|
|
||||||
// Force respawn if idle for more than 30 seconds in shooter modes.
|
// Force respawn if idle for more than 30 seconds in shooter modes.
|
||||||
if (player->lives > 0 /*&& leveltime >= starttime*/) // *could* you respawn?
|
if (player->lives > 0 /*&& leveltime >= starttime*/) // *could* you respawn?
|
||||||
{
|
{
|
||||||
|
@ -7987,6 +7993,8 @@ static void P_DeathThink(player_t *player)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
notrealplayer:
|
||||||
|
|
||||||
if (!player->mo)
|
if (!player->mo)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -8044,18 +8052,21 @@ consvar_t cv_cam_still = {"cam_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL,
|
||||||
consvar_t cv_cam_speed = {"cam_speed", "0.4", CV_FLOAT|CV_SAVE, CV_CamSpeed, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam_speed = {"cam_speed", "0.4", CV_FLOAT|CV_SAVE, CV_CamSpeed, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam_rotate = {"cam_rotate", "0", CV_CALL|CV_NOINIT, CV_CamRotate, CV_CamRotate_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam_rotate = {"cam_rotate", "0", CV_CALL|CV_NOINIT, CV_CamRotate, CV_CamRotate_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam_rotspeed = {"cam_rotspeed", "10", CV_SAVE, rotation_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam_rotspeed = {"cam_rotspeed", "10", CV_SAVE, rotation_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
|
||||||
consvar_t cv_cam2_dist = {"cam2_dist", "160", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam2_dist = {"cam2_dist", "160", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam2_height = {"cam2_height", "50", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam2_height = {"cam2_height", "50", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam2_still = {"cam2_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam2_still = {"cam2_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam2_speed = {"cam2_speed", "0.4", CV_FLOAT|CV_SAVE, CV_CamSpeed, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam2_speed = {"cam2_speed", "0.4", CV_FLOAT|CV_SAVE, CV_CamSpeed, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam2_rotate = {"cam2_rotate", "0", CV_CALL|CV_NOINIT, CV_CamRotate, CV_CamRotate2_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam2_rotate = {"cam2_rotate", "0", CV_CALL|CV_NOINIT, CV_CamRotate, CV_CamRotate2_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam2_rotspeed = {"cam2_rotspeed", "10", CV_SAVE, rotation_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam2_rotspeed = {"cam2_rotspeed", "10", CV_SAVE, rotation_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
|
||||||
consvar_t cv_cam3_dist = {"cam3_dist", "160", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam3_dist = {"cam3_dist", "160", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam3_height = {"cam3_height", "50", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam3_height = {"cam3_height", "50", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam3_still = {"cam3_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam3_still = {"cam3_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam3_speed = {"cam3_speed", "0.4", CV_FLOAT|CV_SAVE, CV_CamSpeed, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam3_speed = {"cam3_speed", "0.4", CV_FLOAT|CV_SAVE, CV_CamSpeed, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam3_rotate = {"cam3_rotate", "0", CV_CALL|CV_NOINIT, CV_CamRotate, CV_CamRotate3_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam3_rotate = {"cam3_rotate", "0", CV_CALL|CV_NOINIT, CV_CamRotate, CV_CamRotate3_OnChange, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam3_rotspeed = {"cam3_rotspeed", "10", CV_SAVE, rotation_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam3_rotspeed = {"cam3_rotspeed", "10", CV_SAVE, rotation_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
|
||||||
consvar_t cv_cam4_dist = {"cam4_dist", "160", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam4_dist = {"cam4_dist", "160", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam4_height = {"cam4_height", "50", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam4_height = {"cam4_height", "50", CV_FLOAT|CV_SAVE, NULL, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
consvar_t cv_cam4_still = {"cam4_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
consvar_t cv_cam4_still = {"cam4_still", "Off", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL};
|
||||||
|
@ -8206,8 +8217,8 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
thiscam->radius = FixedMul(20*FRACUNIT, mapheaderinfo[gamemap-1]->mobj_scale);
|
thiscam->radius = 20*mapobjectscale;
|
||||||
thiscam->height = FixedMul(16*FRACUNIT, mapheaderinfo[gamemap-1]->mobj_scale);
|
thiscam->height = 16*mapobjectscale;
|
||||||
|
|
||||||
// Don't run while respawning from a starpost
|
// Don't run while respawning from a starpost
|
||||||
// Inu 4/8/13 Why not?!
|
// Inu 4/8/13 Why not?!
|
||||||
|
@ -8253,8 +8264,8 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
camspeed = cv_cam_speed.value;
|
camspeed = cv_cam_speed.value;
|
||||||
camstill = cv_cam_still.value;
|
camstill = cv_cam_still.value;
|
||||||
camrotate = cv_cam_rotate.value;
|
camrotate = cv_cam_rotate.value;
|
||||||
camdist = FixedMul(cv_cam_dist.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camdist = FixedMul(cv_cam_dist.value, mapobjectscale);
|
||||||
camheight = FixedMul(cv_cam_height.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camheight = FixedMul(cv_cam_height.value, mapobjectscale);
|
||||||
lookback = camspin;
|
lookback = camspin;
|
||||||
}
|
}
|
||||||
else if (thiscam == &camera2) // Camera 2
|
else if (thiscam == &camera2) // Camera 2
|
||||||
|
@ -8262,8 +8273,8 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
camspeed = cv_cam2_speed.value;
|
camspeed = cv_cam2_speed.value;
|
||||||
camstill = cv_cam2_still.value;
|
camstill = cv_cam2_still.value;
|
||||||
camrotate = cv_cam2_rotate.value;
|
camrotate = cv_cam2_rotate.value;
|
||||||
camdist = FixedMul(cv_cam2_dist.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camdist = FixedMul(cv_cam2_dist.value, mapobjectscale);
|
||||||
camheight = FixedMul(cv_cam2_height.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camheight = FixedMul(cv_cam2_height.value, mapobjectscale);
|
||||||
lookback = camspin2;
|
lookback = camspin2;
|
||||||
}
|
}
|
||||||
else if (thiscam == &camera3) // Camera 3
|
else if (thiscam == &camera3) // Camera 3
|
||||||
|
@ -8271,8 +8282,8 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
camspeed = cv_cam3_speed.value;
|
camspeed = cv_cam3_speed.value;
|
||||||
camstill = cv_cam3_still.value;
|
camstill = cv_cam3_still.value;
|
||||||
camrotate = cv_cam3_rotate.value;
|
camrotate = cv_cam3_rotate.value;
|
||||||
camdist = FixedMul(cv_cam3_dist.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camdist = FixedMul(cv_cam3_dist.value, mapobjectscale);
|
||||||
camheight = FixedMul(cv_cam3_height.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camheight = FixedMul(cv_cam3_height.value, mapobjectscale);
|
||||||
lookback = camspin3;
|
lookback = camspin3;
|
||||||
}
|
}
|
||||||
else // Camera 4
|
else // Camera 4
|
||||||
|
@ -8280,8 +8291,8 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
camspeed = cv_cam4_speed.value;
|
camspeed = cv_cam4_speed.value;
|
||||||
camstill = cv_cam4_still.value;
|
camstill = cv_cam4_still.value;
|
||||||
camrotate = cv_cam4_rotate.value;
|
camrotate = cv_cam4_rotate.value;
|
||||||
camdist = FixedMul(cv_cam4_dist.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camdist = FixedMul(cv_cam4_dist.value, mapobjectscale);
|
||||||
camheight = FixedMul(cv_cam4_height.value, mapheaderinfo[gamemap-1]->mobj_scale);
|
camheight = FixedMul(cv_cam4_height.value, mapobjectscale);
|
||||||
lookback = camspin4;
|
lookback = camspin4;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8294,8 +8305,8 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
{
|
{
|
||||||
const INT32 introcam = (introtime - leveltime);
|
const INT32 introcam = (introtime - leveltime);
|
||||||
camrotate += introcam*5;
|
camrotate += introcam*5;
|
||||||
camdist += (introcam * mapheaderinfo[gamemap-1]->mobj_scale)*3;
|
camdist += (introcam * mapobjectscale)*3;
|
||||||
camheight += (introcam * mapheaderinfo[gamemap-1]->mobj_scale)*2;
|
camheight += (introcam * mapobjectscale)*2;
|
||||||
}
|
}
|
||||||
else if (player->exiting) // SRB2Kart: Leave the camera behind while exiting, for dramatic effect!
|
else if (player->exiting) // SRB2Kart: Leave the camera behind while exiting, for dramatic effect!
|
||||||
camstill = true;
|
camstill = true;
|
||||||
|
@ -8603,7 +8614,7 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
|
||||||
|
|
||||||
// point viewed by the camera
|
// point viewed by the camera
|
||||||
// this point is just 64 unit forward the player
|
// this point is just 64 unit forward the player
|
||||||
dist = 64*mapheaderinfo[gamemap-1]->mobj_scale;
|
dist = 64*mapobjectscale;
|
||||||
viewpointx = mo->x + FixedMul(FINECOSINE((angle>>ANGLETOFINESHIFT) & FINEMASK), dist) + xpan;
|
viewpointx = mo->x + FixedMul(FINECOSINE((angle>>ANGLETOFINESHIFT) & FINEMASK), dist) + xpan;
|
||||||
viewpointy = mo->y + FixedMul(FINESINE((angle>>ANGLETOFINESHIFT) & FINEMASK), dist) + ypan;
|
viewpointy = mo->y + FixedMul(FINESINE((angle>>ANGLETOFINESHIFT) & FINEMASK), dist) + ypan;
|
||||||
|
|
||||||
|
@ -8768,7 +8779,7 @@ static void P_CalcPostImg(player_t *player)
|
||||||
else
|
else
|
||||||
pviewheight = player->mo->z + player->viewheight;
|
pviewheight = player->mo->z + player->viewheight;
|
||||||
|
|
||||||
if (player->awayviewtics)
|
if (player->awayviewtics && player->awayviewmobj && !P_MobjWasRemoved(player->awayviewmobj))
|
||||||
{
|
{
|
||||||
sector = player->awayviewmobj->subsector->sector;
|
sector = player->awayviewmobj->subsector->sector;
|
||||||
pviewheight = player->awayviewmobj->z + 20*FRACUNIT;
|
pviewheight = player->awayviewmobj->z + 20*FRACUNIT;
|
||||||
|
@ -8976,6 +8987,13 @@ void P_PlayerThink(player_t *player)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (player->awayviewmobj && P_MobjWasRemoved(player->awayviewmobj))
|
||||||
|
{
|
||||||
|
P_SetTarget(&player->awayviewmobj, NULL); // remove awayviewmobj asap if invalid
|
||||||
|
player->awayviewtics = 0; // reset to zero
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (player->pflags & PF_GLIDING)
|
if (player->pflags & PF_GLIDING)
|
||||||
{
|
{
|
||||||
|
@ -8989,9 +9007,14 @@ void P_PlayerThink(player_t *player)
|
||||||
if (player->flashcount)
|
if (player->flashcount)
|
||||||
player->flashcount--;
|
player->flashcount--;
|
||||||
|
|
||||||
// By the time P_MoveChaseCamera is called, this might be zero. Do not do it here.
|
// Re-fixed by Jimita (11-12-2018)
|
||||||
//if (player->awayviewtics)
|
if (player->awayviewtics)
|
||||||
// player->awayviewtics--;
|
{
|
||||||
|
player->awayviewtics--;
|
||||||
|
if (!player->awayviewtics)
|
||||||
|
player->awayviewtics = -1;
|
||||||
|
// The timer might've reached zero, but we'll run the remote view camera anyway by setting it to -1.
|
||||||
|
}
|
||||||
|
|
||||||
/// \note do this in the cheat code
|
/// \note do this in the cheat code
|
||||||
if (player->pflags & PF_NOCLIP)
|
if (player->pflags & PF_NOCLIP)
|
||||||
|
@ -9806,8 +9829,8 @@ void P_PlayerAfterThink(player_t *player)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (player->awayviewtics)
|
if (player->awayviewtics < 0)
|
||||||
player->awayviewtics--;
|
player->awayviewtics = 0;
|
||||||
|
|
||||||
// spectator invisibility and nogravity.
|
// spectator invisibility and nogravity.
|
||||||
if ((netgame || multiplayer) && player->spectator)
|
if ((netgame || multiplayer) && player->spectator)
|
||||||
|
|
88
src/r_bsp.c
88
src/r_bsp.c
|
@ -403,17 +403,17 @@ static void R_AddLine(seg_t *line)
|
||||||
{
|
{
|
||||||
INT32 x1, x2;
|
INT32 x1, x2;
|
||||||
angle_t angle1, angle2, span, tspan;
|
angle_t angle1, angle2, span, tspan;
|
||||||
static sector_t tempsec; // ceiling/water hack
|
static sector_t tempsec;
|
||||||
|
|
||||||
|
portalline = false;
|
||||||
|
|
||||||
if (line->polyseg && !(line->polyseg->flags & POF_RENDERSIDES))
|
if (line->polyseg && !(line->polyseg->flags & POF_RENDERSIDES))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
// big room fix
|
||||||
|
angle1 = R_PointToAngleEx(viewx, viewy, line->v1->x, line->v1->y);
|
||||||
|
angle2 = R_PointToAngleEx(viewx, viewy, line->v2->x, line->v2->y);
|
||||||
curline = line;
|
curline = line;
|
||||||
portalline = false;
|
|
||||||
|
|
||||||
// OPTIMIZE: quickly reject orthogonal back sides.
|
|
||||||
angle1 = R_PointToAngle(line->v1->x, line->v1->y);
|
|
||||||
angle2 = R_PointToAngle(line->v2->x, line->v2->y);
|
|
||||||
|
|
||||||
// Clip to view edges.
|
// Clip to view edges.
|
||||||
span = angle1 - angle2;
|
span = angle1 - angle2;
|
||||||
|
@ -602,69 +602,35 @@ INT32 checkcoord[12][4] =
|
||||||
{2, 1, 3, 0}
|
{2, 1, 3, 0}
|
||||||
};
|
};
|
||||||
|
|
||||||
static boolean R_CheckBBox(fixed_t *bspcoord)
|
static boolean R_CheckBBox(const fixed_t *bspcoord)
|
||||||
{
|
{
|
||||||
INT32 boxpos, sx1, sx2;
|
angle_t angle1, angle2;
|
||||||
fixed_t px1, py1, px2, py2;
|
INT32 sx1, sx2, boxpos;
|
||||||
angle_t angle1, angle2, span, tspan;
|
const INT32* check;
|
||||||
cliprange_t *start;
|
cliprange_t *start;
|
||||||
|
|
||||||
// Find the corners of the box that define the edges from current viewpoint.
|
// Find the corners of the box that define the edges from current viewpoint.
|
||||||
if (viewx <= bspcoord[BOXLEFT])
|
if ((boxpos = (viewx <= bspcoord[BOXLEFT] ? 0 : viewx < bspcoord[BOXRIGHT] ? 1 : 2) + (viewy >= bspcoord[BOXTOP] ? 0 : viewy > bspcoord[BOXBOTTOM] ? 4 : 8)) == 5)
|
||||||
boxpos = 0;
|
|
||||||
else if (viewx < bspcoord[BOXRIGHT])
|
|
||||||
boxpos = 1;
|
|
||||||
else
|
|
||||||
boxpos = 2;
|
|
||||||
|
|
||||||
if (viewy >= bspcoord[BOXTOP])
|
|
||||||
boxpos |= 0;
|
|
||||||
else if (viewy > bspcoord[BOXBOTTOM])
|
|
||||||
boxpos |= 1<<2;
|
|
||||||
else
|
|
||||||
boxpos |= 2<<2;
|
|
||||||
|
|
||||||
if (boxpos == 5)
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
px1 = bspcoord[checkcoord[boxpos][0]];
|
check = checkcoord[boxpos];
|
||||||
py1 = bspcoord[checkcoord[boxpos][1]];
|
|
||||||
px2 = bspcoord[checkcoord[boxpos][2]];
|
|
||||||
py2 = bspcoord[checkcoord[boxpos][3]];
|
|
||||||
|
|
||||||
// check clip list for an open space
|
// big room fix
|
||||||
angle1 = R_PointToAngle2(viewx>>1, viewy>>1, px1>>1, py1>>1) - viewangle;
|
angle1 = R_PointToAngleEx(viewx, viewy, bspcoord[check[0]], bspcoord[check[1]]) - viewangle;
|
||||||
angle2 = R_PointToAngle2(viewx>>1, viewy>>1, px2>>1, py2>>1) - viewangle;
|
angle2 = R_PointToAngleEx(viewx, viewy, bspcoord[check[2]], bspcoord[check[3]]) - viewangle;
|
||||||
|
|
||||||
span = angle1 - angle2;
|
if ((signed)angle1 < (signed)angle2)
|
||||||
|
|
||||||
// Sitting on a line?
|
|
||||||
if (span >= ANGLE_180)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
tspan = angle1 + clipangle;
|
|
||||||
|
|
||||||
if (tspan > doubleclipangle)
|
|
||||||
{
|
{
|
||||||
tspan -= doubleclipangle;
|
if ((angle1 >= ANGLE_180) && (angle1 < ANGLE_270))
|
||||||
|
angle1 = ANGLE_180-1;
|
||||||
// Totally off the left edge?
|
else
|
||||||
if (tspan >= span)
|
angle2 = ANGLE_180;
|
||||||
return false;
|
|
||||||
|
|
||||||
angle1 = clipangle;
|
|
||||||
}
|
}
|
||||||
tspan = clipangle - angle2;
|
|
||||||
if (tspan > doubleclipangle)
|
|
||||||
{
|
|
||||||
tspan -= doubleclipangle;
|
|
||||||
|
|
||||||
// Totally off the left edge?
|
if ((signed)angle2 >= (signed)clipangle) return false;
|
||||||
if (tspan >= span)
|
if ((signed)angle1 <= -(signed)clipangle) return false;
|
||||||
return false;
|
if ((signed)angle1 >= (signed)clipangle) angle1 = clipangle;
|
||||||
|
if ((signed)angle2 <= -(signed)clipangle) angle2 = 0-clipangle;
|
||||||
angle2 = -(signed)clipangle;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Find the first clippost that touches the source post (adjacent pixels are touching).
|
// Find the first clippost that touches the source post (adjacent pixels are touching).
|
||||||
angle1 = (angle1+ANGLE_90)>>ANGLETOFINESHIFT;
|
angle1 = (angle1+ANGLE_90)>>ANGLETOFINESHIFT;
|
||||||
|
@ -673,9 +639,7 @@ static boolean R_CheckBBox(fixed_t *bspcoord)
|
||||||
sx2 = viewangletox[angle2];
|
sx2 = viewangletox[angle2];
|
||||||
|
|
||||||
// Does not cross a pixel.
|
// Does not cross a pixel.
|
||||||
if (sx1 == sx2)
|
if (sx1 >= sx2) return false;
|
||||||
return false;
|
|
||||||
sx2--;
|
|
||||||
|
|
||||||
start = solidsegs;
|
start = solidsegs;
|
||||||
while (start->last < sx2)
|
while (start->last < sx2)
|
||||||
|
@ -1115,7 +1079,6 @@ static void R_Subsector(size_t num, UINT8 viewnumber)
|
||||||
&& (viewz < polysec->floorheight))
|
&& (viewz < polysec->floorheight))
|
||||||
{
|
{
|
||||||
light = R_GetPlaneLight(frontsector, polysec->floorheight, viewz < polysec->floorheight);
|
light = R_GetPlaneLight(frontsector, polysec->floorheight, viewz < polysec->floorheight);
|
||||||
light = 0;
|
|
||||||
ffloor[numffloors].plane = R_FindPlane(polysec->floorheight, polysec->floorpic,
|
ffloor[numffloors].plane = R_FindPlane(polysec->floorheight, polysec->floorpic,
|
||||||
polysec->lightlevel, polysec->floor_xoffs, polysec->floor_yoffs,
|
polysec->lightlevel, polysec->floor_xoffs, polysec->floor_yoffs,
|
||||||
polysec->floorpic_angle-po->angle,
|
polysec->floorpic_angle-po->angle,
|
||||||
|
@ -1145,7 +1108,6 @@ static void R_Subsector(size_t num, UINT8 viewnumber)
|
||||||
&& (viewz > polysec->ceilingheight))
|
&& (viewz > polysec->ceilingheight))
|
||||||
{
|
{
|
||||||
light = R_GetPlaneLight(frontsector, polysec->ceilingheight, viewz < polysec->ceilingheight);
|
light = R_GetPlaneLight(frontsector, polysec->ceilingheight, viewz < polysec->ceilingheight);
|
||||||
light = 0;
|
|
||||||
ffloor[numffloors].plane = R_FindPlane(polysec->ceilingheight, polysec->ceilingpic,
|
ffloor[numffloors].plane = R_FindPlane(polysec->ceilingheight, polysec->ceilingpic,
|
||||||
polysec->lightlevel, polysec->ceiling_xoffs, polysec->ceiling_yoffs,
|
polysec->lightlevel, polysec->ceiling_xoffs, polysec->ceiling_yoffs,
|
||||||
polysec->ceilingpic_angle-po->angle,
|
polysec->ceilingpic_angle-po->angle,
|
||||||
|
|
|
@ -1285,7 +1285,7 @@ INT32 R_CreateColormap(char *p1, char *p2, char *p3)
|
||||||
continue;
|
continue;
|
||||||
if (maskcolor == extra_colormaps[i].maskcolor
|
if (maskcolor == extra_colormaps[i].maskcolor
|
||||||
&& fadecolor == extra_colormaps[i].fadecolor
|
&& fadecolor == extra_colormaps[i].fadecolor
|
||||||
&& (float)maskamt == (float)extra_colormaps[i].maskamt
|
&& fabs(maskamt - extra_colormaps[i].maskamt) < DBL_EPSILON
|
||||||
&& fadestart == extra_colormaps[i].fadestart
|
&& fadestart == extra_colormaps[i].fadestart
|
||||||
&& fadeend == extra_colormaps[i].fadeend
|
&& fadeend == extra_colormaps[i].fadeend
|
||||||
&& fog == extra_colormaps[i].fog)
|
&& fog == extra_colormaps[i].fog)
|
||||||
|
|
|
@ -573,6 +573,7 @@ typedef struct seg_s
|
||||||
sector_t *frontsector;
|
sector_t *frontsector;
|
||||||
sector_t *backsector;
|
sector_t *backsector;
|
||||||
|
|
||||||
|
fixed_t length; // precalculated seg length
|
||||||
#ifdef HWRENDER
|
#ifdef HWRENDER
|
||||||
// new pointers so that AdjustSegs doesn't mess with v1/v2
|
// new pointers so that AdjustSegs doesn't mess with v1/v2
|
||||||
void *pv1; // polyvertex_t
|
void *pv1; // polyvertex_t
|
||||||
|
|
98
src/r_main.c
98
src/r_main.c
|
@ -408,6 +408,29 @@ fixed_t R_PointToDist(fixed_t x, fixed_t y)
|
||||||
return R_PointToDist2(viewx, viewy, x, y);
|
return R_PointToDist2(viewx, viewy, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
angle_t R_PointToAngleEx(INT32 x2, INT32 y2, INT32 x1, INT32 y1)
|
||||||
|
{
|
||||||
|
INT64 dx = x1-x2;
|
||||||
|
INT64 dy = y1-y2;
|
||||||
|
if (dx < INT32_MIN || dx > INT32_MAX || dy < INT32_MIN || dy > INT32_MAX)
|
||||||
|
{
|
||||||
|
x1 = (int)(dx / 2 + x2);
|
||||||
|
y1 = (int)(dy / 2 + y2);
|
||||||
|
}
|
||||||
|
return (y1 -= y2, (x1 -= x2) || y1) ?
|
||||||
|
x1 >= 0 ?
|
||||||
|
y1 >= 0 ?
|
||||||
|
(x1 > y1) ? tantoangle[SlopeDivEx(y1,x1)] : // octant 0
|
||||||
|
ANGLE_90-tantoangle[SlopeDivEx(x1,y1)] : // octant 1
|
||||||
|
x1 > (y1 = -y1) ? 0-tantoangle[SlopeDivEx(y1,x1)] : // octant 8
|
||||||
|
ANGLE_270+tantoangle[SlopeDivEx(x1,y1)] : // octant 7
|
||||||
|
y1 >= 0 ? (x1 = -x1) > y1 ? ANGLE_180-tantoangle[SlopeDivEx(y1,x1)] : // octant 3
|
||||||
|
ANGLE_90 + tantoangle[SlopeDivEx(x1,y1)] : // octant 2
|
||||||
|
(x1 = -x1) > (y1 = -y1) ? ANGLE_180+tantoangle[SlopeDivEx(y1,x1)] : // octant 4
|
||||||
|
ANGLE_270-tantoangle[SlopeDivEx(x1,y1)] : // octant 5
|
||||||
|
0;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// R_ScaleFromGlobalAngle
|
// R_ScaleFromGlobalAngle
|
||||||
// Returns the texture mapping scale for the current line (horizontal span)
|
// Returns the texture mapping scale for the current line (horizontal span)
|
||||||
|
@ -604,13 +627,11 @@ void R_SetViewSize(void)
|
||||||
//
|
//
|
||||||
void R_ExecuteSetViewSize(void)
|
void R_ExecuteSetViewSize(void)
|
||||||
{
|
{
|
||||||
fixed_t cosadj;
|
|
||||||
fixed_t dy;
|
fixed_t dy;
|
||||||
INT32 i;
|
INT32 i;
|
||||||
INT32 j;
|
INT32 j;
|
||||||
INT32 level;
|
INT32 level;
|
||||||
INT32 startmapl;
|
INT32 startmapl;
|
||||||
INT32 aspectx; //added : 02-02-98 : for aspect ratio calc. below...
|
|
||||||
|
|
||||||
setsizeneeded = false;
|
setsizeneeded = false;
|
||||||
|
|
||||||
|
@ -656,31 +677,22 @@ void R_ExecuteSetViewSize(void)
|
||||||
for (i = 0; i < viewwidth; i++)
|
for (i = 0; i < viewwidth; i++)
|
||||||
screenheightarray[i] = (INT16)viewheight;
|
screenheightarray[i] = (INT16)viewheight;
|
||||||
|
|
||||||
// setup sky scaling (uses pspriteyscale)
|
// setup sky scaling
|
||||||
R_SetSkyScale();
|
R_SetSkyScale();
|
||||||
|
|
||||||
// planes
|
// planes
|
||||||
//aspectx = (((vid.height*centerx*BASEVIDWIDTH)/BASEVIDHEIGHT)/vid.width);
|
|
||||||
aspectx = centerx;
|
|
||||||
|
|
||||||
if (rendermode == render_soft)
|
if (rendermode == render_soft)
|
||||||
{
|
{
|
||||||
// this is only used for planes rendering in software mode
|
// this is only used for planes rendering in software mode
|
||||||
j = viewheight*8;
|
j = viewheight*16;
|
||||||
for (i = 0; i < j; i++)
|
for (i = 0; i < j; i++)
|
||||||
{
|
{
|
||||||
dy = ((i - viewheight*2)<<FRACBITS) + FRACUNIT/2;
|
dy = ((i - viewheight*8)<<FRACBITS) + FRACUNIT/2;
|
||||||
dy = abs(dy);
|
dy = abs(dy);
|
||||||
yslopetab[i] = FixedDiv(aspectx*FRACUNIT, dy);
|
yslopetab[i] = FixedDiv(centerx*FRACUNIT, dy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < viewwidth; i++)
|
|
||||||
{
|
|
||||||
cosadj = abs(FINECOSINE(xtoviewangle[i]>>ANGLETOFINESHIFT));
|
|
||||||
distscale[i] = FixedDiv(FRACUNIT, cosadj);
|
|
||||||
}
|
|
||||||
|
|
||||||
memset(scalelight, 0xFF, sizeof(scalelight));
|
memset(scalelight, 0xFF, sizeof(scalelight));
|
||||||
|
|
||||||
// Calculate the light levels to use for each level/scale combination.
|
// Calculate the light levels to use for each level/scale combination.
|
||||||
|
@ -793,9 +805,28 @@ static mobj_t *viewmobj;
|
||||||
// WARNING: a should be unsigned but to add with 2048, it isn't!
|
// WARNING: a should be unsigned but to add with 2048, it isn't!
|
||||||
#define AIMINGTODY(a) ((FINETANGENT((2048+(((INT32)a)>>ANGLETOFINESHIFT)) & FINEMASK)*160)>>FRACBITS)
|
#define AIMINGTODY(a) ((FINETANGENT((2048+(((INT32)a)>>ANGLETOFINESHIFT)) & FINEMASK)*160)>>FRACBITS)
|
||||||
|
|
||||||
void R_SkyboxFrame(player_t *player)
|
// recalc necessary stuff for mouseaiming
|
||||||
|
// slopes are already calculated for the full possible view (which is 4*viewheight).
|
||||||
|
// 18/08/18: (No it's actually 16*viewheight, thanks Jimita for finding this out)
|
||||||
|
static void R_SetupFreelook(void)
|
||||||
{
|
{
|
||||||
INT32 dy = 0;
|
INT32 dy = 0;
|
||||||
|
if (rendermode == render_soft)
|
||||||
|
{
|
||||||
|
// clip it in the case we are looking a hardware 90 degrees full aiming
|
||||||
|
// (lmps, network and use F12...)
|
||||||
|
G_SoftwareClipAimingPitch((INT32 *)&aimingangle);
|
||||||
|
dy = AIMINGTODY(aimingangle) * viewwidth/BASEVIDWIDTH;
|
||||||
|
yslope = &yslopetab[viewheight*8 - (viewheight/2 + dy)];
|
||||||
|
}
|
||||||
|
centery = (viewheight/2) + dy;
|
||||||
|
centeryfrac = centery<<FRACBITS;
|
||||||
|
}
|
||||||
|
|
||||||
|
#undef AIMINGTODY
|
||||||
|
|
||||||
|
void R_SkyboxFrame(player_t *player)
|
||||||
|
{
|
||||||
camera_t *thiscam;
|
camera_t *thiscam;
|
||||||
|
|
||||||
if (splitscreen > 2 && player == &players[fourthdisplayplayer])
|
if (splitscreen > 2 && player == &players[fourthdisplayplayer])
|
||||||
|
@ -1022,27 +1053,11 @@ void R_SkyboxFrame(player_t *player)
|
||||||
viewsin = FINESINE(viewangle>>ANGLETOFINESHIFT);
|
viewsin = FINESINE(viewangle>>ANGLETOFINESHIFT);
|
||||||
viewcos = FINECOSINE(viewangle>>ANGLETOFINESHIFT);
|
viewcos = FINECOSINE(viewangle>>ANGLETOFINESHIFT);
|
||||||
|
|
||||||
// recalc necessary stuff for mouseaiming
|
R_SetupFreelook();
|
||||||
// slopes are already calculated for the full possible view (which is 4*viewheight).
|
|
||||||
// 18/08/18: (No it's actually 8*viewheight, thanks MPC aka Jimita for finding this out)
|
|
||||||
|
|
||||||
if (rendermode == render_soft)
|
|
||||||
{
|
|
||||||
// clip it in the case we are looking a hardware 90 degrees full aiming
|
|
||||||
// (lmps, network and use F12...)
|
|
||||||
G_SoftwareClipAimingPitch((INT32 *)&aimingangle);
|
|
||||||
|
|
||||||
dy = AIMINGTODY(aimingangle) * viewwidth/BASEVIDWIDTH;
|
|
||||||
|
|
||||||
yslope = &yslopetab[(3*viewheight/2) - dy];
|
|
||||||
}
|
|
||||||
centery = (viewheight/2) + dy;
|
|
||||||
centeryfrac = centery<<FRACBITS;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void R_SetupFrame(player_t *player, boolean skybox)
|
void R_SetupFrame(player_t *player, boolean skybox)
|
||||||
{
|
{
|
||||||
INT32 dy = 0;
|
|
||||||
camera_t *thiscam;
|
camera_t *thiscam;
|
||||||
boolean chasecam = false;
|
boolean chasecam = false;
|
||||||
|
|
||||||
|
@ -1165,22 +1180,7 @@ void R_SetupFrame(player_t *player, boolean skybox)
|
||||||
viewsin = FINESINE(viewangle>>ANGLETOFINESHIFT);
|
viewsin = FINESINE(viewangle>>ANGLETOFINESHIFT);
|
||||||
viewcos = FINECOSINE(viewangle>>ANGLETOFINESHIFT);
|
viewcos = FINECOSINE(viewangle>>ANGLETOFINESHIFT);
|
||||||
|
|
||||||
// recalc necessary stuff for mouseaiming
|
R_SetupFreelook();
|
||||||
// slopes are already calculated for the full possible view (which is 4*viewheight).
|
|
||||||
// 18/08/18: (No it's actually 8*viewheight, thanks MPC aka Jimita for finding this out)
|
|
||||||
|
|
||||||
if (rendermode == render_soft)
|
|
||||||
{
|
|
||||||
// clip it in the case we are looking a hardware 90 degrees full aiming
|
|
||||||
// (lmps, network and use F12...)
|
|
||||||
G_SoftwareClipAimingPitch((INT32 *)&aimingangle);
|
|
||||||
|
|
||||||
dy = AIMINGTODY(aimingangle) * viewwidth/BASEVIDWIDTH;
|
|
||||||
|
|
||||||
yslope = &yslopetab[(3*viewheight/2) - dy];
|
|
||||||
}
|
|
||||||
centery = (viewheight/2) + dy;
|
|
||||||
centeryfrac = centery<<FRACBITS;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#define ANGLED_PORTALS
|
#define ANGLED_PORTALS
|
||||||
|
|
|
@ -58,6 +58,7 @@ INT32 R_PointOnSide(fixed_t x, fixed_t y, node_t *node);
|
||||||
INT32 R_PointOnSegSide(fixed_t x, fixed_t y, seg_t *line);
|
INT32 R_PointOnSegSide(fixed_t x, fixed_t y, seg_t *line);
|
||||||
angle_t R_PointToAngle(fixed_t x, fixed_t y);
|
angle_t R_PointToAngle(fixed_t x, fixed_t y);
|
||||||
angle_t R_PointToAngle2(fixed_t px2, fixed_t py2, fixed_t px1, fixed_t py1);
|
angle_t R_PointToAngle2(fixed_t px2, fixed_t py2, fixed_t px1, fixed_t py1);
|
||||||
|
angle_t R_PointToAngleEx(INT32 x2, INT32 y2, INT32 x1, INT32 y1);
|
||||||
fixed_t R_PointToDist(fixed_t x, fixed_t y);
|
fixed_t R_PointToDist(fixed_t x, fixed_t y);
|
||||||
fixed_t R_PointToDist2(fixed_t px2, fixed_t py2, fixed_t px1, fixed_t py1);
|
fixed_t R_PointToDist2(fixed_t px2, fixed_t py2, fixed_t px1, fixed_t py1);
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,8 @@
|
||||||
#include "doomdef.h"
|
#include "doomdef.h"
|
||||||
#include "console.h"
|
#include "console.h"
|
||||||
#include "g_game.h"
|
#include "g_game.h"
|
||||||
|
#include "p_setup.h" // levelflats
|
||||||
|
#include "p_slopes.h"
|
||||||
#include "r_data.h"
|
#include "r_data.h"
|
||||||
#include "r_local.h"
|
#include "r_local.h"
|
||||||
#include "r_state.h"
|
#include "r_state.h"
|
||||||
|
@ -26,9 +28,12 @@
|
||||||
#include "z_zone.h"
|
#include "z_zone.h"
|
||||||
#include "p_tick.h"
|
#include "p_tick.h"
|
||||||
|
|
||||||
#include "p_setup.h" // levelflats
|
#ifdef TIMING
|
||||||
|
#include "p5prof.h"
|
||||||
#include "p_slopes.h"
|
INT64 mycount;
|
||||||
|
INT64 mytotal = 0;
|
||||||
|
UINT32 nombre = 100000;
|
||||||
|
#endif
|
||||||
|
|
||||||
//
|
//
|
||||||
// opening
|
// opening
|
||||||
|
@ -51,7 +56,7 @@ visplane_t *floorplane;
|
||||||
visplane_t *ceilingplane;
|
visplane_t *ceilingplane;
|
||||||
static visplane_t *currentplane;
|
static visplane_t *currentplane;
|
||||||
|
|
||||||
planemgr_t ffloor[MAXFFLOORS];
|
visffloor_t ffloor[MAXFFLOORS];
|
||||||
INT32 numffloors;
|
INT32 numffloors;
|
||||||
|
|
||||||
//SoM: 3/23/2000: Boom visplane hashing routine.
|
//SoM: 3/23/2000: Boom visplane hashing routine.
|
||||||
|
@ -89,10 +94,9 @@ static fixed_t planeheight;
|
||||||
// (this is to calculate yslopes only when really needed)
|
// (this is to calculate yslopes only when really needed)
|
||||||
// (when mouselookin', yslope is moving into yslopetab)
|
// (when mouselookin', yslope is moving into yslopetab)
|
||||||
// Check R_SetupFrame, R_SetViewSize for more...
|
// Check R_SetupFrame, R_SetViewSize for more...
|
||||||
fixed_t yslopetab[MAXVIDHEIGHT*8];
|
fixed_t yslopetab[MAXVIDHEIGHT*16];
|
||||||
fixed_t *yslope;
|
fixed_t *yslope;
|
||||||
|
|
||||||
fixed_t distscale[MAXVIDWIDTH];
|
|
||||||
fixed_t basexscale, baseyscale;
|
fixed_t basexscale, baseyscale;
|
||||||
|
|
||||||
fixed_t cachedheight[MAXVIDHEIGHT];
|
fixed_t cachedheight[MAXVIDHEIGHT];
|
||||||
|
@ -155,34 +159,19 @@ void R_PortalRestoreClipValues(INT32 start, INT32 end, INT16 *ceil, INT16 *floor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//profile stuff ---------------------------------------------------------
|
|
||||||
//#define TIMING
|
|
||||||
#ifdef TIMING
|
|
||||||
#include "p5prof.h"
|
|
||||||
INT64 mycount;
|
|
||||||
INT64 mytotal = 0;
|
|
||||||
UINT32 nombre = 100000;
|
|
||||||
#endif
|
|
||||||
//profile stuff ---------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// R_MapPlane
|
// R_MapPlane
|
||||||
//
|
//
|
||||||
// Uses global vars:
|
// Uses global vars:
|
||||||
// planeheight
|
|
||||||
// ds_source
|
|
||||||
// basexscale
|
// basexscale
|
||||||
// baseyscale
|
// baseyscale
|
||||||
|
// centerx
|
||||||
// viewx
|
// viewx
|
||||||
// viewy
|
// viewy
|
||||||
// xoffs
|
// viewsin
|
||||||
// yoffs
|
// viewcos
|
||||||
// planeangle
|
// viewheight
|
||||||
//
|
|
||||||
// BASIC PRIMITIVE
|
|
||||||
//
|
|
||||||
#ifndef NOWATER
|
#ifndef NOWATER
|
||||||
static INT32 bgofs;
|
static INT32 bgofs;
|
||||||
static INT32 wtofs=0;
|
static INT32 wtofs=0;
|
||||||
|
@ -190,10 +179,6 @@ static INT32 waterofs;
|
||||||
static boolean itswater;
|
static boolean itswater;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __mips__
|
|
||||||
//#define NOWATER
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef NOWATER
|
#ifndef NOWATER
|
||||||
static void R_DrawTranslucentWaterSpan_8(void)
|
static void R_DrawTranslucentWaterSpan_8(void)
|
||||||
{
|
{
|
||||||
|
@ -275,8 +260,8 @@ static void R_DrawTranslucentWaterSpan_8(void)
|
||||||
|
|
||||||
void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
||||||
{
|
{
|
||||||
angle_t angle;
|
angle_t angle, planecos, planesin;
|
||||||
fixed_t distance, length;
|
fixed_t distance, span;
|
||||||
size_t pindex;
|
size_t pindex;
|
||||||
|
|
||||||
#ifdef RANGECHECK
|
#ifdef RANGECHECK
|
||||||
|
@ -287,12 +272,22 @@ void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
||||||
// from r_splats's R_RenderFloorSplat
|
// from r_splats's R_RenderFloorSplat
|
||||||
if (x1 >= vid.width) x1 = vid.width - 1;
|
if (x1 >= vid.width) x1 = vid.width - 1;
|
||||||
|
|
||||||
|
angle = (currentplane->viewangle + currentplane->plangle)>>ANGLETOFINESHIFT;
|
||||||
|
planecos = FINECOSINE(angle);
|
||||||
|
planesin = FINESINE(angle);
|
||||||
|
|
||||||
if (planeheight != cachedheight[y])
|
if (planeheight != cachedheight[y])
|
||||||
{
|
{
|
||||||
cachedheight[y] = planeheight;
|
cachedheight[y] = planeheight;
|
||||||
distance = cacheddistance[y] = FixedMul(planeheight, yslope[y]);
|
distance = cacheddistance[y] = FixedMul(planeheight, yslope[y]);
|
||||||
ds_xstep = cachedxstep[y] = FixedMul(distance, basexscale);
|
ds_xstep = cachedxstep[y] = FixedMul(distance, basexscale);
|
||||||
ds_ystep = cachedystep[y] = FixedMul(distance, baseyscale);
|
ds_ystep = cachedystep[y] = FixedMul(distance, baseyscale);
|
||||||
|
|
||||||
|
if ((span = abs(centery-y)))
|
||||||
|
{
|
||||||
|
ds_xstep = cachedxstep[y] = FixedMul(planesin, planeheight) / span;
|
||||||
|
ds_ystep = cachedystep[y] = FixedMul(planecos, planeheight) / span;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -301,13 +296,8 @@ void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
||||||
ds_ystep = cachedystep[y];
|
ds_ystep = cachedystep[y];
|
||||||
}
|
}
|
||||||
|
|
||||||
length = FixedMul (distance,distscale[x1]);
|
ds_xfrac = xoffs + FixedMul(planecos, distance) + (x1 - centerx) * ds_xstep;
|
||||||
angle = (currentplane->viewangle + currentplane->plangle + xtoviewangle[x1])>>ANGLETOFINESHIFT;
|
ds_yfrac = yoffs - FixedMul(planesin, distance) + (x1 - centerx) * ds_ystep;
|
||||||
/// \note Wouldn't it be faster just to add viewx and viewy
|
|
||||||
// to the plane's x/yoffs anyway??
|
|
||||||
|
|
||||||
ds_xfrac = FixedMul(FINECOSINE(angle), length) + xoffs;
|
|
||||||
ds_yfrac = yoffs - FixedMul(FINESINE(angle), length);
|
|
||||||
|
|
||||||
#ifndef NOWATER
|
#ifndef NOWATER
|
||||||
if (itswater)
|
if (itswater)
|
||||||
|
@ -315,8 +305,9 @@ void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
||||||
const INT32 yay = (wtofs + (distance>>9) ) & 8191;
|
const INT32 yay = (wtofs + (distance>>9) ) & 8191;
|
||||||
// ripples da water texture
|
// ripples da water texture
|
||||||
bgofs = FixedDiv(FINESINE(yay), (1<<12) + (distance>>11))>>FRACBITS;
|
bgofs = FixedDiv(FINESINE(yay), (1<<12) + (distance>>11))>>FRACBITS;
|
||||||
|
angle = (currentplane->viewangle + currentplane->plangle + xtoviewangle[x1])>>ANGLETOFINESHIFT;
|
||||||
|
|
||||||
angle = (angle + 2048) & 8191; //90<EFBFBD>
|
angle = (angle + 2048) & 8191; // 90 degrees
|
||||||
ds_xfrac += FixedMul(FINECOSINE(angle), (bgofs<<FRACBITS));
|
ds_xfrac += FixedMul(FINECOSINE(angle), (bgofs<<FRACBITS));
|
||||||
ds_yfrac += FixedMul(FINESINE(angle), (bgofs<<FRACBITS));
|
ds_yfrac += FixedMul(FINESINE(angle), (bgofs<<FRACBITS));
|
||||||
|
|
||||||
|
@ -328,7 +319,6 @@ void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
pindex = distance >> LIGHTZSHIFT;
|
pindex = distance >> LIGHTZSHIFT;
|
||||||
|
|
||||||
if (pindex >= MAXLIGHTZ)
|
if (pindex >= MAXLIGHTZ)
|
||||||
pindex = MAXLIGHTZ - 1;
|
pindex = MAXLIGHTZ - 1;
|
||||||
|
|
||||||
|
@ -367,8 +357,6 @@ void R_MapPlane(INT32 y, INT32 x1, INT32 x2)
|
||||||
// R_ClearPlanes
|
// R_ClearPlanes
|
||||||
// At begining of frame.
|
// At begining of frame.
|
||||||
//
|
//
|
||||||
// NOTE: Uses con_clipviewtop, so that when console is on,
|
|
||||||
// we don't draw the part of the view hidden under the console.
|
|
||||||
void R_ClearPlanes(void)
|
void R_ClearPlanes(void)
|
||||||
{
|
{
|
||||||
INT32 i, p;
|
INT32 i, p;
|
||||||
|
@ -378,12 +366,12 @@ void R_ClearPlanes(void)
|
||||||
for (i = 0; i < viewwidth; i++)
|
for (i = 0; i < viewwidth; i++)
|
||||||
{
|
{
|
||||||
floorclip[i] = (INT16)viewheight;
|
floorclip[i] = (INT16)viewheight;
|
||||||
ceilingclip[i] = (INT16)con_clipviewtop;
|
ceilingclip[i] = -1;
|
||||||
frontscale[i] = INT32_MAX;
|
frontscale[i] = INT32_MAX;
|
||||||
for (p = 0; p < MAXFFLOORS; p++)
|
for (p = 0; p < MAXFFLOORS; p++)
|
||||||
{
|
{
|
||||||
ffloor[p].f_clip[i] = (INT16)viewheight;
|
ffloor[p].f_clip[i] = (INT16)viewheight;
|
||||||
ffloor[p].c_clip[i] = (INT16)con_clipviewtop;
|
ffloor[p].c_clip[i] = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
//
|
//
|
||||||
// Now what is a visplane, anyway?
|
// Now what is a visplane, anyway?
|
||||||
// Simple: kinda floor/ceiling polygon optimised for SRB2 rendering.
|
// Simple: kinda floor/ceiling polygon optimised for SRB2 rendering.
|
||||||
// 7764 bytes! (for win32, anyway)
|
|
||||||
//
|
//
|
||||||
typedef struct visplane_s
|
typedef struct visplane_s
|
||||||
{
|
{
|
||||||
|
@ -39,25 +38,12 @@ typedef struct visplane_s
|
||||||
extracolormap_t *extra_colormap;
|
extracolormap_t *extra_colormap;
|
||||||
|
|
||||||
// leave pads for [minx-1]/[maxx+1]
|
// leave pads for [minx-1]/[maxx+1]
|
||||||
|
UINT16 padtopstart, top[MAXVIDWIDTH], padtopend;
|
||||||
// words sucks .. should get rid of that.. but eats memory
|
UINT16 padbottomstart, bottom[MAXVIDWIDTH], padbottomend;
|
||||||
// THIS IS UNSIGNED! VERY IMPORTANT!!
|
|
||||||
UINT16 pad1;
|
|
||||||
UINT16 top[MAXVIDWIDTH];
|
|
||||||
UINT16 pad2;
|
|
||||||
UINT16 pad3;
|
|
||||||
UINT16 bottom[MAXVIDWIDTH];
|
|
||||||
UINT16 pad4;
|
|
||||||
|
|
||||||
INT32 high, low; // R_PlaneBounds should set these.
|
INT32 high, low; // R_PlaneBounds should set these.
|
||||||
|
|
||||||
fixed_t xoffs, yoffs; // Scrolling flats.
|
fixed_t xoffs, yoffs; // Scrolling flats.
|
||||||
|
|
||||||
// SoM: frontscale should be stored in the first seg of the subsector
|
|
||||||
// where the planes themselves are stored. I'm doing this now because
|
|
||||||
// the old way caused trouble with the drawseg array was re-sized.
|
|
||||||
INT32 scaleseg;
|
|
||||||
|
|
||||||
struct ffloor_s *ffloor;
|
struct ffloor_s *ffloor;
|
||||||
#ifdef POLYOBJECTS_PLANES
|
#ifdef POLYOBJECTS_PLANES
|
||||||
polyobj_t *polyobj;
|
polyobj_t *polyobj;
|
||||||
|
@ -77,17 +63,15 @@ extern INT16 *lastopening, *openings;
|
||||||
extern size_t maxopenings;
|
extern size_t maxopenings;
|
||||||
|
|
||||||
extern INT16 floorclip[MAXVIDWIDTH], ceilingclip[MAXVIDWIDTH];
|
extern INT16 floorclip[MAXVIDWIDTH], ceilingclip[MAXVIDWIDTH];
|
||||||
extern fixed_t frontscale[MAXVIDWIDTH], yslopetab[MAXVIDHEIGHT*8];
|
extern fixed_t frontscale[MAXVIDWIDTH], yslopetab[MAXVIDHEIGHT*16];
|
||||||
extern fixed_t cachedheight[MAXVIDHEIGHT];
|
extern fixed_t cachedheight[MAXVIDHEIGHT];
|
||||||
extern fixed_t cacheddistance[MAXVIDHEIGHT];
|
extern fixed_t cacheddistance[MAXVIDHEIGHT];
|
||||||
extern fixed_t cachedxstep[MAXVIDHEIGHT];
|
extern fixed_t cachedxstep[MAXVIDHEIGHT];
|
||||||
extern fixed_t cachedystep[MAXVIDHEIGHT];
|
extern fixed_t cachedystep[MAXVIDHEIGHT];
|
||||||
extern fixed_t basexscale, baseyscale;
|
extern fixed_t basexscale, baseyscale;
|
||||||
|
|
||||||
extern lighttable_t **planezlight;
|
|
||||||
|
|
||||||
extern fixed_t *yslope;
|
extern fixed_t *yslope;
|
||||||
extern fixed_t distscale[MAXVIDWIDTH];
|
extern lighttable_t **planezlight;
|
||||||
|
|
||||||
void R_InitPlanes(void);
|
void R_InitPlanes(void);
|
||||||
void R_PortalStoreClipValues(INT32 start, INT32 end, INT16 *ceil, INT16 *floor, fixed_t *scale);
|
void R_PortalStoreClipValues(INT32 start, INT32 end, INT16 *ceil, INT16 *floor, fixed_t *scale);
|
||||||
|
@ -136,8 +120,8 @@ typedef struct planemgr_s
|
||||||
#ifdef POLYOBJECTS_PLANES
|
#ifdef POLYOBJECTS_PLANES
|
||||||
polyobj_t *polyobj;
|
polyobj_t *polyobj;
|
||||||
#endif
|
#endif
|
||||||
} planemgr_t;
|
} visffloor_t;
|
||||||
|
|
||||||
extern planemgr_t ffloor[MAXFFLOORS];
|
extern visffloor_t ffloor[MAXFFLOORS];
|
||||||
extern INT32 numffloors;
|
extern INT32 numffloors;
|
||||||
#endif
|
#endif
|
||||||
|
|
89
src/r_segs.c
89
src/r_segs.c
|
@ -1363,24 +1363,12 @@ static void R_RenderSegLoop (void)
|
||||||
|
|
||||||
if (markfloor)
|
if (markfloor)
|
||||||
{
|
{
|
||||||
#if 0 // Old Doom Legacy code
|
top = yh < ceilingclip[rw_x] ? ceilingclip[rw_x] : yh;
|
||||||
bottom = floorclip[rw_x]-1;
|
|
||||||
if (top <= ceilingclip[rw_x])
|
|
||||||
top = ceilingclip[rw_x]+1;
|
|
||||||
if (top <= bottom && floorplane)
|
|
||||||
{
|
|
||||||
floorplane->top[rw_x] = (INT16)top;
|
|
||||||
floorplane->bottom[rw_x] = (INT16)bottom;
|
|
||||||
}
|
|
||||||
#else // Spiffy new PRBoom code
|
|
||||||
top = yh < ceilingclip[rw_x] ? ceilingclip[rw_x] : yh;
|
|
||||||
|
|
||||||
if (++top <= bottom && floorplane)
|
if (++top <= bottom && floorplane)
|
||||||
{
|
{
|
||||||
floorplane->top[rw_x] = (INT16)top;
|
floorplane->top[rw_x] = (INT16)top;
|
||||||
floorplane->bottom[rw_x] = (INT16)bottom;
|
floorplane->bottom[rw_x] = (INT16)bottom;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (numffloors)
|
if (numffloors)
|
||||||
|
@ -1666,26 +1654,11 @@ static void R_RenderSegLoop (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < numffloors; i++)
|
for (i = 0; i < numffloors; i++)
|
||||||
{
|
|
||||||
#ifdef POLYOBJECTS_PLANES
|
|
||||||
if (ffloor[i].polyobj && (!curline->polyseg || ffloor[i].polyobj != curline->polyseg))
|
|
||||||
continue;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
ffloor[i].f_frac += ffloor[i].f_step;
|
ffloor[i].f_frac += ffloor[i].f_step;
|
||||||
}
|
|
||||||
|
|
||||||
for (i = 0; i < numbackffloors; i++)
|
for (i = 0; i < numbackffloors; i++)
|
||||||
{
|
{
|
||||||
INT32 y_w;
|
ffloor[i].f_clip[rw_x] = ffloor[i].c_clip[rw_x] = (INT16)((ffloor[i].b_frac >> HEIGHTBITS) & 0xFFFF);
|
||||||
|
|
||||||
#ifdef POLYOBJECTS_PLANES
|
|
||||||
if (ffloor[i].polyobj && (!curline->polyseg || ffloor[i].polyobj != curline->polyseg))
|
|
||||||
continue;
|
|
||||||
#endif
|
|
||||||
y_w = ffloor[i].b_frac >> HEIGHTBITS;
|
|
||||||
|
|
||||||
ffloor[i].f_clip[rw_x] = ffloor[i].c_clip[rw_x] = (INT16)(y_w & 0xFFFF);
|
|
||||||
ffloor[i].b_frac += ffloor[i].b_step;
|
ffloor[i].b_frac += ffloor[i].b_step;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1695,6 +1668,23 @@ static void R_RenderSegLoop (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Uses precalculated seg->length
|
||||||
|
static INT64 R_CalcSegDist(seg_t* seg, INT64 x2, INT64 y2)
|
||||||
|
{
|
||||||
|
if (!seg->linedef->dy)
|
||||||
|
return llabs(y2 - seg->v1->y);
|
||||||
|
else if (!seg->linedef->dx)
|
||||||
|
return llabs(x2 - seg->v1->x);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
INT64 dx = (seg->v2->x)-(seg->v1->x);
|
||||||
|
INT64 dy = (seg->v2->y)-(seg->v1->y);
|
||||||
|
INT64 vdx = x2-(seg->v1->x);
|
||||||
|
INT64 vdy = y2-(seg->v1->y);
|
||||||
|
return ((dy*vdx)-(dx*vdy))/(seg->length);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// R_StoreWallRange
|
// R_StoreWallRange
|
||||||
// A wall segment will be drawn
|
// A wall segment will be drawn
|
||||||
|
@ -1705,6 +1695,7 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
fixed_t hyp;
|
fixed_t hyp;
|
||||||
fixed_t sineval;
|
fixed_t sineval;
|
||||||
angle_t distangle, offsetangle;
|
angle_t distangle, offsetangle;
|
||||||
|
boolean longboi;
|
||||||
#ifndef ESLOPE
|
#ifndef ESLOPE
|
||||||
fixed_t vtop;
|
fixed_t vtop;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1750,10 +1741,15 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
offsetangle = ANGLE_90;
|
offsetangle = ANGLE_90;
|
||||||
|
|
||||||
distangle = ANGLE_90 - offsetangle;
|
distangle = ANGLE_90 - offsetangle;
|
||||||
hyp = R_PointToDist (curline->v1->x, curline->v1->y);
|
|
||||||
sineval = FINESINE(distangle>>ANGLETOFINESHIFT);
|
sineval = FINESINE(distangle>>ANGLETOFINESHIFT);
|
||||||
rw_distance = FixedMul (hyp, sineval);
|
|
||||||
|
|
||||||
|
hyp = R_PointToDist(curline->v1->x, curline->v1->y);
|
||||||
|
rw_distance = FixedMul(hyp, sineval);
|
||||||
|
longboi = (hyp >= INT32_MAX);
|
||||||
|
|
||||||
|
// big room fix
|
||||||
|
if (longboi)
|
||||||
|
rw_distance = (fixed_t)R_CalcSegDist(curline,viewx,viewy);
|
||||||
|
|
||||||
ds_p->x1 = rw_x = start;
|
ds_p->x1 = rw_x = start;
|
||||||
ds_p->x2 = stop;
|
ds_p->x2 = stop;
|
||||||
|
@ -2613,8 +2609,18 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
if (offsetangle > ANGLE_90)
|
if (offsetangle > ANGLE_90)
|
||||||
offsetangle = ANGLE_90;
|
offsetangle = ANGLE_90;
|
||||||
|
|
||||||
sineval = FINESINE(offsetangle >>ANGLETOFINESHIFT);
|
sineval = FINESINE(offsetangle>>ANGLETOFINESHIFT);
|
||||||
rw_offset = FixedMul (hyp, sineval);
|
rw_offset = FixedMul(hyp, sineval);
|
||||||
|
|
||||||
|
// big room fix
|
||||||
|
if (longboi)
|
||||||
|
{
|
||||||
|
INT64 dx = (curline->v2->x)-(curline->v1->x);
|
||||||
|
INT64 dy = (curline->v2->y)-(curline->v1->y);
|
||||||
|
INT64 vdx = viewx-(curline->v1->x);
|
||||||
|
INT64 vdy = viewy-(curline->v1->y);
|
||||||
|
rw_offset = ((dx*vdx-dy*vdy))/(curline->length);
|
||||||
|
}
|
||||||
|
|
||||||
if (rw_normalangle-rw_angle1 < ANGLE_180)
|
if (rw_normalangle-rw_angle1 < ANGLE_180)
|
||||||
rw_offset = -rw_offset;
|
rw_offset = -rw_offset;
|
||||||
|
@ -2805,11 +2811,6 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
{
|
{
|
||||||
for (i = 0; i < numffloors; i++)
|
for (i = 0; i < numffloors; i++)
|
||||||
{
|
{
|
||||||
#ifdef POLYOBJECTS_PLANES
|
|
||||||
if (ffloor[i].polyobj && (!curline->polyseg || ffloor[i].polyobj != curline->polyseg))
|
|
||||||
continue;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
ffloor[i].f_pos >>= 4;
|
ffloor[i].f_pos >>= 4;
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
ffloor[i].f_pos_slope >>= 4;
|
ffloor[i].f_pos_slope >>= 4;
|
||||||
|
@ -3090,7 +3091,11 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
if (ceilingplane) //SoM: 3/29/2000: Check for null ceiling planes
|
if (ceilingplane) //SoM: 3/29/2000: Check for null ceiling planes
|
||||||
ceilingplane = R_CheckPlane (ceilingplane, rw_x, rw_stopx-1);
|
ceilingplane = R_CheckPlane (ceilingplane, rw_x, rw_stopx-1);
|
||||||
else
|
else
|
||||||
markceiling = 0;
|
markceiling = false;
|
||||||
|
|
||||||
|
// Don't render the ceiling again when rendering polyobjects
|
||||||
|
if (curline->polyseg)
|
||||||
|
markceiling = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// get a new or use the same visplane
|
// get a new or use the same visplane
|
||||||
|
@ -3099,7 +3104,11 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
if (floorplane) //SoM: 3/29/2000: Check for null planes
|
if (floorplane) //SoM: 3/29/2000: Check for null planes
|
||||||
floorplane = R_CheckPlane (floorplane, rw_x, rw_stopx-1);
|
floorplane = R_CheckPlane (floorplane, rw_x, rw_stopx-1);
|
||||||
else
|
else
|
||||||
markfloor = 0;
|
markfloor = false;
|
||||||
|
|
||||||
|
// Don't render the floor again when rendering polyobjects
|
||||||
|
if (curline->polyseg)
|
||||||
|
markfloor = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
ds_p->numffloorplanes = 0;
|
ds_p->numffloorplanes = 0;
|
||||||
|
|
|
@ -365,9 +365,8 @@ static void R_RenderFloorSplat(floorsplat_t *pSplat, vertex_t *verts, UINT8 *pTe
|
||||||
#else
|
#else
|
||||||
lighttable_t **planezlight;
|
lighttable_t **planezlight;
|
||||||
fixed_t planeheight;
|
fixed_t planeheight;
|
||||||
angle_t angle;
|
angle_t angle, planecos, planesin;
|
||||||
fixed_t distance;
|
fixed_t distance, span;
|
||||||
fixed_t length;
|
|
||||||
size_t indexr;
|
size_t indexr;
|
||||||
INT32 light;
|
INT32 light;
|
||||||
#endif
|
#endif
|
||||||
|
@ -473,12 +472,22 @@ static void R_RenderFloorSplat(floorsplat_t *pSplat, vertex_t *verts, UINT8 *pTe
|
||||||
if (x2 >= vid.width)
|
if (x2 >= vid.width)
|
||||||
x2 = vid.width - 1;
|
x2 = vid.width - 1;
|
||||||
|
|
||||||
|
angle = (currentplane->viewangle + currentplane->plangle)>>ANGLETOFINESHIFT;
|
||||||
|
planecos = FINECOSINE(angle);
|
||||||
|
planesin = FINESINE(angle);
|
||||||
|
|
||||||
if (planeheight != cachedheight[y])
|
if (planeheight != cachedheight[y])
|
||||||
{
|
{
|
||||||
cachedheight[y] = planeheight;
|
cachedheight[y] = planeheight;
|
||||||
distance = cacheddistance[y] = FixedMul(planeheight, yslope[y]);
|
distance = cacheddistance[y] = FixedMul(planeheight, yslope[y]);
|
||||||
ds_xstep = cachedxstep[y] = FixedMul(distance,basexscale);
|
ds_xstep = cachedxstep[y] = FixedMul(distance,basexscale);
|
||||||
ds_ystep = cachedystep[y] = FixedMul(distance,baseyscale);
|
ds_ystep = cachedystep[y] = FixedMul(distance,baseyscale);
|
||||||
|
|
||||||
|
if ((span = abs(centery-y)))
|
||||||
|
{
|
||||||
|
ds_xstep = cachedxstep[y] = FixedMul(planesin, planeheight) / span;
|
||||||
|
ds_ystep = cachedystep[y] = FixedMul(planecos, planeheight) / span;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -486,10 +495,9 @@ static void R_RenderFloorSplat(floorsplat_t *pSplat, vertex_t *verts, UINT8 *pTe
|
||||||
ds_xstep = cachedxstep[y];
|
ds_xstep = cachedxstep[y];
|
||||||
ds_ystep = cachedystep[y];
|
ds_ystep = cachedystep[y];
|
||||||
}
|
}
|
||||||
length = FixedMul(distance, distscale[x1]);
|
|
||||||
angle = (viewangle + xtoviewangle[x1])>>ANGLETOFINESHIFT;
|
ds_xfrac = xoffs + FixedMul(planecos, distance) + (x1 - centerx) * ds_xstep;
|
||||||
ds_xfrac = viewx + FixedMul(FINECOSINE(angle), length);
|
ds_yfrac = yoffs - FixedMul(planesin, distance) + (x1 - centerx) * ds_ystep;
|
||||||
ds_yfrac = -viewy - FixedMul(FINESINE(angle), length);
|
|
||||||
ds_xfrac -= offsetx;
|
ds_xfrac -= offsetx;
|
||||||
ds_yfrac += offsety;
|
ds_yfrac += offsety;
|
||||||
|
|
||||||
|
|
|
@ -1927,7 +1927,7 @@ static void R_CreateDrawNodes(void)
|
||||||
plane = ds->curline->polyseg->visplane;
|
plane = ds->curline->polyseg->visplane;
|
||||||
R_PlaneBounds(plane);
|
R_PlaneBounds(plane);
|
||||||
|
|
||||||
if (plane->low < con_clipviewtop || plane->high > vid.height || plane->high > plane->low)
|
if (plane->low < 0 || plane->high > vid.height || plane->high > plane->low)
|
||||||
;
|
;
|
||||||
else {
|
else {
|
||||||
// Put it in!
|
// Put it in!
|
||||||
|
@ -1956,7 +1956,7 @@ static void R_CreateDrawNodes(void)
|
||||||
plane = ds->ffloorplanes[p];
|
plane = ds->ffloorplanes[p];
|
||||||
R_PlaneBounds(plane);
|
R_PlaneBounds(plane);
|
||||||
|
|
||||||
if (plane->low < con_clipviewtop || plane->high > vid.height || plane->high > plane->low || plane->polyobj)
|
if (plane->low < 0 || plane->high > vid.height || plane->high > plane->low || plane->polyobj)
|
||||||
{
|
{
|
||||||
ds->ffloorplanes[p] = NULL;
|
ds->ffloorplanes[p] = NULL;
|
||||||
continue;
|
continue;
|
||||||
|
@ -1993,7 +1993,7 @@ static void R_CreateDrawNodes(void)
|
||||||
plane = PolyObjects[i].visplane;
|
plane = PolyObjects[i].visplane;
|
||||||
R_PlaneBounds(plane);
|
R_PlaneBounds(plane);
|
||||||
|
|
||||||
if (plane->low < con_clipviewtop || plane->high > vid.height || plane->high > plane->low)
|
if (plane->low < 0 || plane->high > vid.height || plane->high > plane->low)
|
||||||
{
|
{
|
||||||
PolyObjects[i].visplane = NULL;
|
PolyObjects[i].visplane = NULL;
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -231,6 +231,7 @@ FUNCMATH FUNCINLINE static ATTRINLINE char R_Frame2Char(UINT8 frame)
|
||||||
FUNCMATH FUNCINLINE static ATTRINLINE UINT8 R_Char2Frame(char cn)
|
FUNCMATH FUNCINLINE static ATTRINLINE UINT8 R_Char2Frame(char cn)
|
||||||
{
|
{
|
||||||
#if 1 // 2.1 compat
|
#if 1 // 2.1 compat
|
||||||
|
if (cn == '+') return '\\' - 'A'; // PK3 can't use backslash, so use + instead
|
||||||
return cn - 'A';
|
return cn - 'A';
|
||||||
#else
|
#else
|
||||||
if (cn >= 'A' && cn <= 'Z') return cn - 'A';
|
if (cn >= 'A' && cn <= 'Z') return cn - 'A';
|
||||||
|
|
|
@ -1218,7 +1218,7 @@ fixed_t S_CalculateSoundDistance(fixed_t sx1, fixed_t sy1, fixed_t sz1, fixed_t
|
||||||
|
|
||||||
approx_dist <<= FRACBITS;
|
approx_dist <<= FRACBITS;
|
||||||
|
|
||||||
return FixedDiv(approx_dist, mapheaderinfo[gamemap-1]->mobj_scale); // approx_dist
|
return FixedDiv(approx_dist, mapobjectscale); // approx_dist
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
|
@ -309,14 +309,6 @@ void SCR_Recalc(void)
|
||||||
if (automapactive)
|
if (automapactive)
|
||||||
AM_Stop();
|
AM_Stop();
|
||||||
|
|
||||||
// r_plane stuff: visplanes, openings, floorclip, ceilingclip, spanstart,
|
|
||||||
// spanstop, yslope, distscale, cachedheight, cacheddistance,
|
|
||||||
// cachedxstep, cachedystep
|
|
||||||
// -> allocated at the maximum vidsize, static.
|
|
||||||
|
|
||||||
// r_main: xtoviewangle, allocated at the maximum size.
|
|
||||||
// r_things: negonearray, screenheightarray allocated max. size.
|
|
||||||
|
|
||||||
// set the screen[x] ptrs on the new vidbuffers
|
// set the screen[x] ptrs on the new vidbuffers
|
||||||
V_Init();
|
V_Init();
|
||||||
|
|
||||||
|
|
|
@ -278,13 +278,13 @@ if(${SDL2_FOUND})
|
||||||
if (${CMAKE_GENERATOR} STREQUAL "MinGW Makefiles")
|
if (${CMAKE_GENERATOR} STREQUAL "MinGW Makefiles")
|
||||||
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
||||||
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/Bin/Resources/x86_64
|
HINTS ${CMAKE_SOURCE_DIR}/libs/dll-binaries/x86_64
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/x86_64-w64-mingw32/bin
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/x86_64-w64-mingw32/bin
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/x86_64-w64-mingw32/bin
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/x86_64-w64-mingw32/bin
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/Bin/Resources/i686
|
HINTS ${CMAKE_SOURCE_DIR}/libs/dll-binaries/i686
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/i686-w64-mingw32/bin
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/i686-w64-mingw32/bin
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/i686-w64-mingw32/bin
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/i686-w64-mingw32/bin
|
||||||
)
|
)
|
||||||
|
@ -292,13 +292,13 @@ if(${SDL2_FOUND})
|
||||||
else()
|
else()
|
||||||
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
||||||
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/Bin/Resources/x86_64
|
HINTS ${CMAKE_SOURCE_DIR}/libs/dll-binaries/x86_64
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/lib/x64
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/lib/x64
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/lib/x64
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/lib/x64
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
find_library(SRB2_SDL2_DLL_${dllname} "${defaultname}"
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/Bin/Resources/i686
|
HINTS ${CMAKE_SOURCE_DIR}/libs/dll-binaries/i686
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/lib/x86
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2/lib/x86
|
||||||
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/lib/x86
|
HINTS ${CMAKE_SOURCE_DIR}/libs/SDL2_mixer/lib/x86
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,10 +1,26 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|ARM">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|ARM64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
<Configuration>Debug</Configuration>
|
<Configuration>Debug</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|ARM64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>ARM64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
|
@ -19,31 +35,54 @@
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<PropertyGroup Label="Globals">
|
<PropertyGroup Label="Globals">
|
||||||
<ProjectName>Srb2Win</ProjectName>
|
<ProjectName>srb2kart</ProjectName>
|
||||||
<ProjectGuid>{61BA7D3C-F77D-4D31-B718-1177FE482CF2}</ProjectGuid>
|
<ProjectGuid>{61BA7D3C-F77D-4D31-B718-1177FE482CF2}</ProjectGuid>
|
||||||
<Keyword>Win32Proj</Keyword>
|
<Keyword>Win32Proj</Keyword>
|
||||||
<RootNamespace>Srb2SDL</RootNamespace>
|
<RootNamespace>Srb2SDL</RootNamespace>
|
||||||
|
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||||
<ProjectName>srb2kart</ProjectName>
|
<ProjectName>srb2kart</ProjectName>
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||||
|
<PlatformToolset>v141</PlatformToolset>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support>
|
||||||
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings">
|
<ImportGroup Label="ExtensionSettings">
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
@ -60,27 +99,58 @@
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="..\..\SRB2_Debug.props" />
|
<Import Project="..\..\SRB2_Debug.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="..\..\SRB2_Debug.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="..\..\SRB2_Release.props" />
|
<Import Project="..\..\SRB2_Release.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="..\..\SRB2_Release.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="..\..\SRB2_Debug.props" />
|
<Import Project="..\..\SRB2_Debug.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="..\..\SRB2_Debug.props" />
|
||||||
|
</ImportGroup>
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
<Import Project="..\..\SRB2_Release.props" />
|
<Import Project="..\..\SRB2_Release.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="..\..\SRB2_Release.props" />
|
||||||
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<TreatWarningAsError>false</TreatWarningAsError>
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<MinimalRebuild>false</MinimalRebuild>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>setupapi.lib;winmm.lib;imm32.lib;version.lib;ole32.lib;advapi32.lib;shell32.lib;gdi32.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||||
|
<ClCompile>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
<MinimalRebuild>false</MinimalRebuild>
|
||||||
|
</ClCompile>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>setupapi.lib;winmm.lib;imm32.lib;version.lib;ole32.lib;advapi32.lib;shell32.lib;gdi32.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\..\libs\libpng-src\projects\visualc10\libpng.vcxproj">
|
<ProjectReference Include="..\..\libs\libpng-src\projects\visualc10\libpng.vcxproj">
|
||||||
|
@ -304,7 +374,7 @@
|
||||||
<ClCompile Include="..\i_tcp.c" />
|
<ClCompile Include="..\i_tcp.c" />
|
||||||
<ClCompile Include="..\k_kart.c" />
|
<ClCompile Include="..\k_kart.c" />
|
||||||
<ClCompile Include="..\lua_baselib.c" />
|
<ClCompile Include="..\lua_baselib.c" />
|
||||||
<ClCompile Include="..\lua_blockmaplib.c" />
|
<ClCompile Include="..\lua_blockmaplib.c" />
|
||||||
<ClCompile Include="..\lua_consolelib.c" />
|
<ClCompile Include="..\lua_consolelib.c" />
|
||||||
<ClCompile Include="..\lua_hooklib.c" />
|
<ClCompile Include="..\lua_hooklib.c" />
|
||||||
<ClCompile Include="..\lua_hudlib.c" />
|
<ClCompile Include="..\lua_hudlib.c" />
|
||||||
|
|
|
@ -201,7 +201,10 @@ static void SDLSetMode(INT32 width, INT32 height, SDL_bool fullscreen)
|
||||||
}
|
}
|
||||||
// Reposition window only in windowed mode
|
// Reposition window only in windowed mode
|
||||||
SDL_SetWindowSize(window, width, height);
|
SDL_SetWindowSize(window, width, height);
|
||||||
SDL_SetWindowPosition(window, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED);
|
SDL_SetWindowPosition(window,
|
||||||
|
SDL_WINDOWPOS_CENTERED_DISPLAY(SDL_GetWindowDisplayIndex(window)),
|
||||||
|
SDL_WINDOWPOS_CENTERED_DISPLAY(SDL_GetWindowDisplayIndex(window))
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -358,6 +361,7 @@ static INT32 Impl_SDL_Scancode_To_Keycode(SDL_Scancode code)
|
||||||
|
|
||||||
static void SDLdoUngrabMouse(void)
|
static void SDLdoUngrabMouse(void)
|
||||||
{
|
{
|
||||||
|
SDL_ShowCursor(SDL_ENABLE);
|
||||||
SDL_SetWindowGrab(window, SDL_FALSE);
|
SDL_SetWindowGrab(window, SDL_FALSE);
|
||||||
wrapmouseok = SDL_FALSE;
|
wrapmouseok = SDL_FALSE;
|
||||||
SDL_SetRelativeMouseMode(SDL_FALSE);
|
SDL_SetRelativeMouseMode(SDL_FALSE);
|
||||||
|
@ -367,6 +371,7 @@ void SDLforceUngrabMouse(void)
|
||||||
{
|
{
|
||||||
if (SDL_WasInit(SDL_INIT_VIDEO)==SDL_INIT_VIDEO && window != NULL)
|
if (SDL_WasInit(SDL_INIT_VIDEO)==SDL_INIT_VIDEO && window != NULL)
|
||||||
{
|
{
|
||||||
|
SDL_ShowCursor(SDL_ENABLE);
|
||||||
SDL_SetWindowGrab(window, SDL_FALSE);
|
SDL_SetWindowGrab(window, SDL_FALSE);
|
||||||
wrapmouseok = SDL_FALSE;
|
wrapmouseok = SDL_FALSE;
|
||||||
SDL_SetRelativeMouseMode(SDL_FALSE);
|
SDL_SetRelativeMouseMode(SDL_FALSE);
|
||||||
|
@ -618,6 +623,8 @@ static void Impl_HandleWindowEvent(SDL_WindowEvent evt)
|
||||||
if (cv_usemouse.value) I_StartupMouse();
|
if (cv_usemouse.value) I_StartupMouse();
|
||||||
}
|
}
|
||||||
//else firsttimeonmouse = SDL_FALSE;
|
//else firsttimeonmouse = SDL_FALSE;
|
||||||
|
|
||||||
|
capslock = !!( SDL_GetModState() & KMOD_CAPS );// in case CL changes
|
||||||
}
|
}
|
||||||
else if (!mousefocus && !kbfocus)
|
else if (!mousefocus && !kbfocus)
|
||||||
{
|
{
|
||||||
|
@ -1892,9 +1899,18 @@ void I_StartupGraphics(void)
|
||||||
realheight = (Uint16)vid.height;
|
realheight = (Uint16)vid.height;
|
||||||
|
|
||||||
VID_Command_Info_f();
|
VID_Command_Info_f();
|
||||||
if (!disable_mouse) SDL_ShowCursor(SDL_DISABLE);
|
|
||||||
SDLdoUngrabMouse();
|
SDLdoUngrabMouse();
|
||||||
|
|
||||||
|
SDL_RaiseWindow(window);
|
||||||
|
|
||||||
|
if (mousegrabok && !disable_mouse)
|
||||||
|
{
|
||||||
|
SDL_ShowCursor(SDL_DISABLE);
|
||||||
|
SDL_SetRelativeMouseMode(SDL_TRUE);
|
||||||
|
wrapmouseok = SDL_TRUE;
|
||||||
|
SDL_SetWindowGrab(window, SDL_TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
graphics_started = true;
|
graphics_started = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1214,7 +1214,7 @@
|
||||||
C01FCF4B08A954540054247B /* Debug */ = {
|
C01FCF4B08A954540054247B /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CURRENT_PROJECT_VERSION = 2.1.21;
|
CURRENT_PROJECT_VERSION = 2.1.23;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
NORMALSRB2,
|
NORMALSRB2,
|
||||||
|
@ -1226,7 +1226,7 @@
|
||||||
C01FCF4C08A954540054247B /* Release */ = {
|
C01FCF4C08A954540054247B /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CURRENT_PROJECT_VERSION = 2.1.21;
|
CURRENT_PROJECT_VERSION = 2.1.23;
|
||||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
|
|
|
@ -92,6 +92,12 @@ void I_StartupSound(void)
|
||||||
{
|
{
|
||||||
I_Assert(!sound_started);
|
I_Assert(!sound_started);
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
// Force DirectSound instead of WASAPI
|
||||||
|
// SDL 2.0.6+ defaults to the latter and it screws up our sound effects
|
||||||
|
SDL_setenv("SDL_AUDIODRIVER", "directsound", 1);
|
||||||
|
#endif
|
||||||
|
|
||||||
// EE inits audio first so we're following along.
|
// EE inits audio first so we're following along.
|
||||||
if (SDL_WasInit(SDL_INIT_AUDIO) == SDL_INIT_AUDIO)
|
if (SDL_WasInit(SDL_INIT_AUDIO) == SDL_INIT_AUDIO)
|
||||||
{
|
{
|
||||||
|
@ -758,6 +764,7 @@ void I_UnloadSong(void)
|
||||||
|
|
||||||
boolean I_PlaySong(boolean looping)
|
boolean I_PlaySong(boolean looping)
|
||||||
{
|
{
|
||||||
|
boolean lpz = fpclassify(loop_point) == FP_ZERO;
|
||||||
#ifdef HAVE_LIBGME
|
#ifdef HAVE_LIBGME
|
||||||
if (gme)
|
if (gme)
|
||||||
{
|
{
|
||||||
|
@ -771,14 +778,15 @@ boolean I_PlaySong(boolean looping)
|
||||||
if (!music)
|
if (!music)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (Mix_PlayMusic(music, looping && loop_point == 0.0f ? -1 : 0) == -1)
|
|
||||||
|
if (Mix_PlayMusic(music, looping && lpz ? -1 : 0) == -1)
|
||||||
{
|
{
|
||||||
CONS_Alert(CONS_ERROR, "Mix_PlayMusic: %s\n", Mix_GetError());
|
CONS_Alert(CONS_ERROR, "Mix_PlayMusic: %s\n", Mix_GetError());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
Mix_VolumeMusic((UINT32)music_volume*128/31);
|
Mix_VolumeMusic((UINT32)music_volume*128/31);
|
||||||
|
|
||||||
if (loop_point != 0.0f)
|
if (!lpz)
|
||||||
Mix_HookMusicFinished(music_loop);
|
Mix_HookMusicFinished(music_loop);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1186,6 +1186,12 @@ void I_StartupSound(void)
|
||||||
// Configure sound device
|
// Configure sound device
|
||||||
CONS_Printf("I_StartupSound:\n");
|
CONS_Printf("I_StartupSound:\n");
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
// Force DirectSound instead of WASAPI
|
||||||
|
// SDL 2.0.6+ defaults to the latter and it screws up our sound effects
|
||||||
|
SDL_setenv("SDL_AUDIODRIVER", "directsound", 1);
|
||||||
|
#endif
|
||||||
|
|
||||||
// EE inits audio first so we're following along.
|
// EE inits audio first so we're following along.
|
||||||
if (SDL_WasInit(SDL_INIT_AUDIO) == SDL_INIT_AUDIO)
|
if (SDL_WasInit(SDL_INIT_AUDIO) == SDL_INIT_AUDIO)
|
||||||
CONS_Printf("SDL Audio already started\n");
|
CONS_Printf("SDL Audio already started\n");
|
||||||
|
|
|
@ -1214,7 +1214,7 @@
|
||||||
C01FCF4B08A954540054247B /* Debug */ = {
|
C01FCF4B08A954540054247B /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CURRENT_PROJECT_VERSION = 2.1.21;
|
CURRENT_PROJECT_VERSION = 2.1.23;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
NORMALSRB2,
|
NORMALSRB2,
|
||||||
|
@ -1226,7 +1226,7 @@
|
||||||
C01FCF4C08A954540054247B /* Release */ = {
|
C01FCF4C08A954540054247B /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CURRENT_PROJECT_VERSION = 2.1.21;
|
CURRENT_PROJECT_VERSION = 2.1.23;
|
||||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
|
|
|
@ -131,11 +131,6 @@ static patch_t *hud_tv2;
|
||||||
|
|
||||||
// SRB2kart
|
// SRB2kart
|
||||||
|
|
||||||
//
|
|
||||||
|
|
||||||
static boolean facefreed[MAXPLAYERS];
|
|
||||||
boolean iconfreed[MAXPLAYERS];
|
|
||||||
|
|
||||||
hudinfo_t hudinfo[NUMHUDITEMS] =
|
hudinfo_t hudinfo[NUMHUDITEMS] =
|
||||||
{
|
{
|
||||||
{ 34, 176}, // HUD_LIVESNAME
|
{ 34, 176}, // HUD_LIVESNAME
|
||||||
|
@ -362,7 +357,6 @@ void ST_LoadFaceGraphics(char *rankstr, char *wantstr, char *mmapstr, INT32 skin
|
||||||
facerankprefix[skinnum] = W_CachePatchName(rankstr, PU_HUDGFX);
|
facerankprefix[skinnum] = W_CachePatchName(rankstr, PU_HUDGFX);
|
||||||
facewantprefix[skinnum] = W_CachePatchName(wantstr, PU_HUDGFX);
|
facewantprefix[skinnum] = W_CachePatchName(wantstr, PU_HUDGFX);
|
||||||
facemmapprefix[skinnum] = W_CachePatchName(mmapstr, PU_HUDGFX);
|
facemmapprefix[skinnum] = W_CachePatchName(mmapstr, PU_HUDGFX);
|
||||||
facefreed[skinnum] = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ST_ReloadSkinFaceGraphics(void)
|
void ST_ReloadSkinFaceGraphics(void)
|
||||||
|
@ -411,14 +405,6 @@ lumpnum_t st_borderpatchnum;
|
||||||
|
|
||||||
void ST_Init(void)
|
void ST_Init(void)
|
||||||
{
|
{
|
||||||
INT32 i;
|
|
||||||
|
|
||||||
for (i = 0; i < MAXPLAYERS; i++)
|
|
||||||
{
|
|
||||||
facefreed[i] = true;
|
|
||||||
iconfreed[i] = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dedicated)
|
if (dedicated)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
|
@ -71,7 +71,6 @@ extern patch_t *facewantprefix[MAXSKINS]; // wanted
|
||||||
extern patch_t *facemmapprefix[MAXSKINS]; // minimap
|
extern patch_t *facemmapprefix[MAXSKINS]; // minimap
|
||||||
extern patch_t *livesback;
|
extern patch_t *livesback;
|
||||||
extern patch_t *ngradeletters[7];
|
extern patch_t *ngradeletters[7];
|
||||||
extern boolean iconfreed[MAXPLAYERS];
|
|
||||||
|
|
||||||
/** HUD location information (don't move this comment)
|
/** HUD location information (don't move this comment)
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -37,6 +37,15 @@ unsigned SlopeDiv(unsigned num, unsigned den)
|
||||||
return ans <= SLOPERANGE ? ans : SLOPERANGE;
|
return ans <= SLOPERANGE ? ans : SLOPERANGE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
UINT64 SlopeDivEx(unsigned int num, unsigned int den)
|
||||||
|
{
|
||||||
|
UINT64 ans;
|
||||||
|
if (den < 512)
|
||||||
|
return SLOPERANGE;
|
||||||
|
ans = ((UINT64)num<<3)/(den>>8);
|
||||||
|
return ans <= SLOPERANGE ? ans : SLOPERANGE;
|
||||||
|
}
|
||||||
|
|
||||||
fixed_t AngleFixed(angle_t af)
|
fixed_t AngleFixed(angle_t af)
|
||||||
{
|
{
|
||||||
angle_t wa = ANGLE_180;
|
angle_t wa = ANGLE_180;
|
||||||
|
|
|
@ -87,6 +87,8 @@ extern angle_t tantoangle[SLOPERANGE+1];
|
||||||
|
|
||||||
// Utility function, called by R_PointToAngle.
|
// Utility function, called by R_PointToAngle.
|
||||||
FUNCMATH unsigned SlopeDiv(unsigned num, unsigned den);
|
FUNCMATH unsigned SlopeDiv(unsigned num, unsigned den);
|
||||||
|
// Only called by R_PointToAngleEx
|
||||||
|
UINT64 SlopeDivEx(unsigned int num, unsigned int den);
|
||||||
|
|
||||||
// 360 - angle_t(ANGLE_45) = ANGLE_315
|
// 360 - angle_t(ANGLE_45) = ANGLE_315
|
||||||
FUNCMATH FUNCINLINE static ATTRINLINE angle_t InvAngle(angle_t a)
|
FUNCMATH FUNCINLINE static ATTRINLINE angle_t InvAngle(angle_t a)
|
||||||
|
|
285
src/v_video.c
285
src/v_video.c
|
@ -860,6 +860,149 @@ void V_DrawFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 c)
|
||||||
memset(dest, c, w * vid.bpp);
|
memset(dest, c, w * vid.bpp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HWRENDER
|
||||||
|
// This is now a function since it's otherwise repeated 2 times and honestly looks retarded:
|
||||||
|
static UINT32 V_GetHWConsBackColor(void)
|
||||||
|
{
|
||||||
|
UINT32 hwcolor;
|
||||||
|
switch (cons_backcolor.value)
|
||||||
|
{
|
||||||
|
case 0: hwcolor = 0xffffff00; break; // White
|
||||||
|
case 1: hwcolor = 0x80808000; break; // Gray
|
||||||
|
case 2: hwcolor = 0xdeb88700; break; // Sepia
|
||||||
|
case 3: hwcolor = 0x40201000; break; // Brown
|
||||||
|
case 4: hwcolor = 0xfa807200; break; // Pink
|
||||||
|
case 5: hwcolor = 0xff69b400; break; // Raspberry
|
||||||
|
case 6: hwcolor = 0xff000000; break; // Red
|
||||||
|
case 7: hwcolor = 0xffd68300; break; // Creamsicle
|
||||||
|
case 8: hwcolor = 0xff800000; break; // Orange
|
||||||
|
case 9: hwcolor = 0xdaa52000; break; // Gold
|
||||||
|
case 10: hwcolor = 0x80800000; break; // Yellow
|
||||||
|
case 11: hwcolor = 0x00ff0000; break; // Emerald
|
||||||
|
case 12: hwcolor = 0x00800000; break; // Green
|
||||||
|
case 13: hwcolor = 0x4080ff00; break; // Cyan
|
||||||
|
case 14: hwcolor = 0x4682b400; break; // Steel
|
||||||
|
case 15: hwcolor = 0x1e90ff00; break; // Periwinkle
|
||||||
|
case 16: hwcolor = 0x0000ff00; break; // Blue
|
||||||
|
case 17: hwcolor = 0xff00ff00; break; // Purple
|
||||||
|
case 18: hwcolor = 0xee82ee00; break; // Lavender
|
||||||
|
// Default green
|
||||||
|
default: hwcolor = 0x00800000; break;
|
||||||
|
}
|
||||||
|
return hwcolor;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// THANK YOU MPC!!!
|
||||||
|
|
||||||
|
void V_DrawFillConsoleMap(INT32 x, INT32 y, INT32 w, INT32 h, INT32 c)
|
||||||
|
{
|
||||||
|
UINT8 *dest;
|
||||||
|
INT32 u, v;
|
||||||
|
UINT32 alphalevel = 0;
|
||||||
|
|
||||||
|
if (rendermode == render_none)
|
||||||
|
return;
|
||||||
|
|
||||||
|
#ifdef HWRENDER
|
||||||
|
if (rendermode != render_soft && rendermode != render_none)
|
||||||
|
{
|
||||||
|
UINT32 hwcolor = V_GetHWConsBackColor();
|
||||||
|
HWR_DrawConsoleFill(x, y, w, h, hwcolor, c); // we still use the regular color stuff but only for flags. actual draw color is "hwcolor" for this.
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!(c & V_NOSCALESTART))
|
||||||
|
{
|
||||||
|
INT32 dupx = vid.dupx, dupy = vid.dupy;
|
||||||
|
|
||||||
|
if (x == 0 && y == 0 && w == BASEVIDWIDTH && h == BASEVIDHEIGHT)
|
||||||
|
{ // Clear the entire screen, from dest to deststop. Yes, this really works.
|
||||||
|
memset(screens[0], (UINT8)(c&255), vid.width * vid.height * vid.bpp);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
x *= dupx;
|
||||||
|
y *= dupy;
|
||||||
|
w *= dupx;
|
||||||
|
h *= dupy;
|
||||||
|
|
||||||
|
// Center it if necessary
|
||||||
|
if (vid.width != BASEVIDWIDTH * dupx)
|
||||||
|
{
|
||||||
|
// dupx adjustments pretend that screen width is BASEVIDWIDTH * dupx,
|
||||||
|
// so center this imaginary screen
|
||||||
|
if (c & V_SNAPTORIGHT)
|
||||||
|
x += (vid.width - (BASEVIDWIDTH * dupx));
|
||||||
|
else if (!(c & V_SNAPTOLEFT))
|
||||||
|
x += (vid.width - (BASEVIDWIDTH * dupx)) / 2;
|
||||||
|
}
|
||||||
|
if (vid.height != BASEVIDHEIGHT * dupy)
|
||||||
|
{
|
||||||
|
// same thing here
|
||||||
|
if (c & V_SNAPTOBOTTOM)
|
||||||
|
y += (vid.height - (BASEVIDHEIGHT * dupy));
|
||||||
|
else if (!(c & V_SNAPTOTOP))
|
||||||
|
y += (vid.height - (BASEVIDHEIGHT * dupy)) / 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (x >= vid.width || y >= vid.height)
|
||||||
|
return; // off the screen
|
||||||
|
if (x < 0) {
|
||||||
|
w += x;
|
||||||
|
x = 0;
|
||||||
|
}
|
||||||
|
if (y < 0) {
|
||||||
|
h += y;
|
||||||
|
y = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (w <= 0 || h <= 0)
|
||||||
|
return; // zero width/height wouldn't draw anything
|
||||||
|
if (x + w > vid.width)
|
||||||
|
w = vid.width-x;
|
||||||
|
if (y + h > vid.height)
|
||||||
|
h = vid.height-y;
|
||||||
|
|
||||||
|
dest = screens[0] + y*vid.width + x;
|
||||||
|
|
||||||
|
if ((alphalevel = ((c & V_ALPHAMASK) >> V_ALPHASHIFT)))
|
||||||
|
{
|
||||||
|
if (alphalevel == 13)
|
||||||
|
alphalevel = hudminusalpha[cv_translucenthud.value];
|
||||||
|
else if (alphalevel == 14)
|
||||||
|
alphalevel = 10 - cv_translucenthud.value;
|
||||||
|
else if (alphalevel == 15)
|
||||||
|
alphalevel = hudplusalpha[cv_translucenthud.value];
|
||||||
|
|
||||||
|
if (alphalevel >= 10)
|
||||||
|
return; // invis
|
||||||
|
}
|
||||||
|
|
||||||
|
c &= 255;
|
||||||
|
|
||||||
|
if (!alphalevel) {
|
||||||
|
for (v = 0; v < h; v++, dest += vid.width) {
|
||||||
|
for (u = 0; u < w; u++) {
|
||||||
|
dest[u] = consolebgmap[dest[u]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else { // mpc 12-04-2018
|
||||||
|
const UINT8 *fadetable = ((UINT8 *)transtables + ((alphalevel-1)<<FF_TRANSSHIFT) + (c*256));
|
||||||
|
#define clip(x,y) (x>y) ? y : x
|
||||||
|
w = clip(w,vid.width);
|
||||||
|
h = clip(h,vid.height);
|
||||||
|
#undef clip
|
||||||
|
for (v = 0; v < h; v++, dest += vid.width) {
|
||||||
|
for (u = 0; u < w; u++) {
|
||||||
|
dest[u] = fadetable[consolebgmap[dest[u]]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Fills a triangle of pixels with a single color, NOTE: scaled to screen size
|
// Fills a triangle of pixels with a single color, NOTE: scaled to screen size
|
||||||
//
|
//
|
||||||
|
@ -961,148 +1104,6 @@ void V_DrawDiag(INT32 x, INT32 y, INT32 wh, INT32 c)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HWRENDER
|
|
||||||
// This is now a function since it's otherwise repeated 2 times and honestly looks retarded:
|
|
||||||
static UINT32 V_GetHWConsBackColor(void)
|
|
||||||
{
|
|
||||||
UINT32 hwcolor;
|
|
||||||
switch (cons_backcolor.value)
|
|
||||||
{
|
|
||||||
case 0: hwcolor = 0xffffff00; break; // White
|
|
||||||
case 1: hwcolor = 0x80808000; break; // Gray
|
|
||||||
case 2: hwcolor = 0xdeb88700; break; // Sepia
|
|
||||||
case 3: hwcolor = 0x40201000; break; // Brown
|
|
||||||
case 4: hwcolor = 0xfa807200; break; // Pink
|
|
||||||
case 5: hwcolor = 0xff69b400; break; // Raspberry
|
|
||||||
case 6: hwcolor = 0xff000000; break; // Red
|
|
||||||
case 7: hwcolor = 0xffd68300; break; // Creamsicle
|
|
||||||
case 8: hwcolor = 0xff800000; break; // Orange
|
|
||||||
case 9: hwcolor = 0xdaa52000; break; // Gold
|
|
||||||
case 10: hwcolor = 0x80800000; break; // Yellow
|
|
||||||
case 11: hwcolor = 0x00ff0000; break; // Emerald
|
|
||||||
case 12: hwcolor = 0x00800000; break; // Green
|
|
||||||
case 13: hwcolor = 0x4080ff00; break; // Cyan
|
|
||||||
case 14: hwcolor = 0x4682b400; break; // Steel
|
|
||||||
case 15: hwcolor = 0x1e90ff00; break; // Periwinkle
|
|
||||||
case 16: hwcolor = 0x0000ff00; break; // Blue
|
|
||||||
case 17: hwcolor = 0xff00ff00; break; // Purple
|
|
||||||
case 18: hwcolor = 0xee82ee00; break; // Lavender
|
|
||||||
// Default green
|
|
||||||
default: hwcolor = 0x00800000; break;
|
|
||||||
}
|
|
||||||
return hwcolor;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// THANK YOU MPC!!!
|
|
||||||
|
|
||||||
void V_DrawFillConsoleMap(INT32 x, INT32 y, INT32 w, INT32 h, INT32 c)
|
|
||||||
{
|
|
||||||
UINT8 *dest;
|
|
||||||
INT32 u, v;
|
|
||||||
UINT32 alphalevel = 0;
|
|
||||||
|
|
||||||
if (rendermode == render_none)
|
|
||||||
return;
|
|
||||||
|
|
||||||
#ifdef HWRENDER
|
|
||||||
if (rendermode != render_soft && rendermode != render_none)
|
|
||||||
{
|
|
||||||
UINT32 hwcolor = V_GetHWConsBackColor();
|
|
||||||
HWR_DrawConsoleFill(x, y, w, h, hwcolor, c); // we still use the regular color stuff but only for flags. actual draw color is "hwcolor" for this.
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!(c & V_NOSCALESTART))
|
|
||||||
{
|
|
||||||
INT32 dupx = vid.dupx, dupy = vid.dupy;
|
|
||||||
|
|
||||||
if (x == 0 && y == 0 && w == BASEVIDWIDTH && h == BASEVIDHEIGHT)
|
|
||||||
{ // Clear the entire screen, from dest to deststop. Yes, this really works.
|
|
||||||
memset(screens[0], (UINT8)(c&255), vid.width * vid.height * vid.bpp);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
x *= dupx;
|
|
||||||
y *= dupy;
|
|
||||||
w *= dupx;
|
|
||||||
h *= dupy;
|
|
||||||
|
|
||||||
// Center it if necessary
|
|
||||||
if (vid.width != BASEVIDWIDTH * dupx)
|
|
||||||
{
|
|
||||||
// dupx adjustments pretend that screen width is BASEVIDWIDTH * dupx,
|
|
||||||
// so center this imaginary screen
|
|
||||||
if (c & V_SNAPTORIGHT)
|
|
||||||
x += (vid.width - (BASEVIDWIDTH * dupx));
|
|
||||||
else if (!(c & V_SNAPTOLEFT))
|
|
||||||
x += (vid.width - (BASEVIDWIDTH * dupx)) / 2;
|
|
||||||
}
|
|
||||||
if (vid.height != BASEVIDHEIGHT * dupy)
|
|
||||||
{
|
|
||||||
// same thing here
|
|
||||||
if (c & V_SNAPTOBOTTOM)
|
|
||||||
y += (vid.height - (BASEVIDHEIGHT * dupy));
|
|
||||||
else if (!(c & V_SNAPTOTOP))
|
|
||||||
y += (vid.height - (BASEVIDHEIGHT * dupy)) / 2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (x >= vid.width || y >= vid.height)
|
|
||||||
return; // off the screen
|
|
||||||
if (x < 0) {
|
|
||||||
w += x;
|
|
||||||
x = 0;
|
|
||||||
}
|
|
||||||
if (y < 0) {
|
|
||||||
h += y;
|
|
||||||
y = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (w <= 0 || h <= 0)
|
|
||||||
return; // zero width/height wouldn't draw anything
|
|
||||||
if (x + w > vid.width)
|
|
||||||
w = vid.width-x;
|
|
||||||
if (y + h > vid.height)
|
|
||||||
h = vid.height-y;
|
|
||||||
|
|
||||||
dest = screens[0] + y*vid.width + x;
|
|
||||||
|
|
||||||
if ((alphalevel = ((c & V_ALPHAMASK) >> V_ALPHASHIFT)))
|
|
||||||
{
|
|
||||||
if (alphalevel == 13)
|
|
||||||
alphalevel = hudminusalpha[cv_translucenthud.value];
|
|
||||||
else if (alphalevel == 14)
|
|
||||||
alphalevel = 10 - cv_translucenthud.value;
|
|
||||||
else if (alphalevel == 15)
|
|
||||||
alphalevel = hudplusalpha[cv_translucenthud.value];
|
|
||||||
|
|
||||||
if (alphalevel >= 10)
|
|
||||||
return; // invis
|
|
||||||
}
|
|
||||||
|
|
||||||
c &= 255;
|
|
||||||
|
|
||||||
if (!alphalevel) {
|
|
||||||
for (v = 0; v < h; v++, dest += vid.width) {
|
|
||||||
for (u = 0; u < w; u++) {
|
|
||||||
dest[u] = consolebgmap[dest[u]];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else { // mpc 12-04-2018
|
|
||||||
const UINT8 *fadetable = ((UINT8 *)transtables + ((alphalevel-1)<<FF_TRANSSHIFT) + (c*256));
|
|
||||||
#define clip(x,y) (x>y) ? y : x
|
|
||||||
w = clip(w,vid.width);
|
|
||||||
h = clip(h,vid.height);
|
|
||||||
for (v = 0; v < h; v++, dest += vid.width) {
|
|
||||||
for (u = 0; u < w; u++) {
|
|
||||||
dest[u] = fadetable[consolebgmap[dest[u]]];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Fills a box of pixels using a flat texture as a pattern, scaled to screen size.
|
// Fills a box of pixels using a flat texture as a pattern, scaled to screen size.
|
||||||
//
|
//
|
||||||
|
|
|
@ -162,6 +162,7 @@ void V_DrawFadeConsBack(INT32 plines);
|
||||||
void V_DrawCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed);
|
void V_DrawCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed);
|
||||||
// draw a single character, but for the chat
|
// draw a single character, but for the chat
|
||||||
void V_DrawChatCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed, UINT8 *colormap);
|
void V_DrawChatCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed, UINT8 *colormap);
|
||||||
|
|
||||||
UINT8 *V_GetStringColormap(INT32 colorflags);
|
UINT8 *V_GetStringColormap(INT32 colorflags);
|
||||||
|
|
||||||
void V_DrawLevelTitle(INT32 x, INT32 y, INT32 option, const char *string);
|
void V_DrawLevelTitle(INT32 x, INT32 y, INT32 option, const char *string);
|
||||||
|
|
|
@ -1728,11 +1728,15 @@ int W_VerifyNMUSlumps(const char *filename)
|
||||||
{"TRANS", 5}, // Translucency map
|
{"TRANS", 5}, // Translucency map
|
||||||
|
|
||||||
{"LTFNT", 5}, // Level title font changes
|
{"LTFNT", 5}, // Level title font changes
|
||||||
|
{"TTL", 3}, // Act number changes
|
||||||
{"STCFN", 5}, // Console font changes
|
{"STCFN", 5}, // Console font changes
|
||||||
{"TNYFN", 5}, // Tiny console font changes
|
{"TNYFN", 5}, // Tiny console font changes
|
||||||
{"MKFNT", 5}, // Kart font changes
|
{"SBO", 3}, // Acceptable HUD changes (Score Time Rings)
|
||||||
|
{"RRINGS", 6}, // Rings HUD (not named as SBO)
|
||||||
|
{"YB_", 3}, // Intermission graphics, goes with the above
|
||||||
|
{"M_", 2}, // As does menu stuff
|
||||||
|
|
||||||
{"M_", 2}, // Menu changes
|
{"MKFNT", 5}, // Kart font changes
|
||||||
{"K_", 2}, // Kart graphic changes
|
{"K_", 2}, // Kart graphic changes
|
||||||
|
|
||||||
{NULL, 0},
|
{NULL, 0},
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
ifdef MINGW64
|
ifdef MINGW64
|
||||||
NOASM=1
|
|
||||||
NONX86=1
|
|
||||||
HAVE_LIBGME=1
|
HAVE_LIBGME=1
|
||||||
LIBGME_CFLAGS=-I../libs/gme/include
|
LIBGME_CFLAGS=-I../libs/gme/include
|
||||||
LIBGME_LDFLAGS=-L../libs/gme/win64 -lgme
|
LIBGME_LDFLAGS=-L../libs/gme/win64 -lgme
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue