No description
Find a file
toaster b61701a1bc Tidier conversion of string properties to UDMF
Previously, concatenated texture field strings were turned to text, then had that string run through get_number, then had it converted back into a string to become a stringarg.

Now, the concatenated string is copied directly to the relevant stringarg.

This fixes an issue where a map with object or state properties would have "context drift" - breaking when the object or state list changed, due to differently ordered freeslots, or new hardcoded objects.

This is also made consistent and with less repeated code via the addition of multile P_Write functions to replace both P_WriteConstant and multiple copypasted blocks of zone allocation and memcpy.
- P_WriteDuplicateText -- fresh zone memory copy with PU_LEVEL
- P_WriteSkinColor -- converts ID to SKINCOLOR_ name, then runs it through P_WriteDuplicateText
- P_WriteSfx -- converts ID to SFX_ name, then runs it through P_WriteDuplicateText

In order to avoid making p_setup.c dependent on `deh_tables.h`, object type 1202 simply artifically produces the expected range of MT_ROCKCRUMBLE1 to MT_ROCKCRUMBLE16. It was technically possible to produce unexpected effects with extremely high offsets, but if your map was doing something like that, you're intelligent enough to go back and swap the MT_ constant out with your intended goal.
2023-07-12 17:13:38 +01:00
.circleci
android
assets
cmake
debian-template
deployer
doc
extras
libs
src Tidier conversion of string properties to UDMF 2023-07-12 17:13:38 +01:00
thirdparty thirdparty: add nlohmann/json 2023-04-28 12:50:43 -07:00
tools
.clang-format
.editorconfig
.gitattributes
.gitignore
.travis.yml
alias-bootstrap.sh
Android.mk
appveyor.yml
CMakeLists.txt cmake: add SRB2_CONFIG_ASAN, enable AddressSanitizer 2023-04-22 18:35:22 -07:00
CMakePresets.json
comptime.bat
comptime.mk
comptime.props
comptime.sh
cpdebug.mk
debian_template.sh
Doxyfile
LICENSE
LICENSE-3RD-PARTY.txt
README.md
srb2-vc9.sln
srb2-vc10.sln
SRB2.cbp
Srb2.dev
srb2.png
SRB2_common.props
SRB2_Debug.props
SRB2_Release.props
srb2banner.png

SRB2Kart

SRB2Kart is a kart racing mod based on the 3D Sonic the Hedgehog fangame Sonic Robo Blast 2, based on a modified version of Doom Legacy.

Dependencies

  • NASM (x86 builds only)
  • SDL2 (Linux/OS X only)
  • SDL2-Mixer (Linux/OS X only)
  • libupnp (Linux/OS X only)
  • libgme (Linux/OS X only)
  • libopenmpt (Linux/OS X only)

Compiling

See SRB2 Wiki/Source code compiling. The compiling process for SRB2Kart is largely identical to SRB2.

Disclaimer

Kart Krew is in no way affiliated with SEGA or Sonic Team. We do not claim ownership of any of SEGA's intellectual property used in SRB2.