Blankart OpenXR VR fork
Find a file
Eidolon 496fced43c Add SRB2_ASSERT, srb2::NotNull<T>
Add SRB2_ASSERT, superceding I_Assert

This assertion macro always expands to a call of srb2::do_assert, which
is overloaded with two templates: one which applies if the provided
Level is less than or equal to the SRB2_ASSERTION_LEVEL, and one which
is a no-op. When optimizations are enabled, this will verifiably remove
the evaluation of the expression in all cases, instead of evaluating the
expression and doing nothing with it.

Add srb2::NotNull wrapper utility

This is meant to be used in places where pointers are used as
parameters. It can be used with any pointer-like type, not just raw
pointers. During construction of NotNull, the pointer will be asserted
not-null in debug and paranoia builds, and in release optimizations with
no assertions, the code decays gracefully to standard pointer-passing.
2024-12-26 11:22:22 -05:00
.circleci Merge remote-tracking branch 'srb2/master' into the-scary-22-merge 2020-10-24 19:28:06 -04:00
android
assets Merge branch 'cmake-overhaul' into 'master' 2024-10-15 03:40:29 -04:00
cmake Fix uncommited messages 2024-10-15 14:58:22 -04:00
debian-template Fix Debian (.deb) build from making (Project_root)/bin/Linux 2022-03-18 19:36:45 +00:00
deployer Get this working 2024-07-28 22:37:38 -04:00
doc
extras Add ACS functions that can replicate line triggers 2024-10-15 13:57:06 -04:00
libs Remove unnecessary ACSVM files from libs 2024-10-15 07:53:31 -04:00
src Add SRB2_ASSERT, srb2::NotNull<T> 2024-12-26 11:22:22 -05:00
thirdparty Add Tracy client library and build preset 2024-12-26 11:09:48 -05:00
tools Remove FMOD files 2022-07-23 12:57:46 -05:00
.gitattributes
.gitignore .gitignore: add CMakeUserPresets.json 2024-10-15 04:44:14 -04:00
.travis.yml Merge branch 'master' into the-scary-22-merge 2020-08-12 20:59:09 -04:00
Android.mk
appveyor.yml Backport 2021 SRB2 makefile overhaul 2021-11-25 03:56:23 -08:00
CMakeLists.txt Add Tracy client library and build preset 2024-12-26 11:09:48 -05:00
comptime.bat use fallback complast to fix compile issues 2024-09-11 09:57:11 -04:00
comptime.mk
comptime.props
comptime.sh readd exec permission 2024-09-11 14:42:04 -04:00
cpdebug.mk fix up makefiles + support newer gcc versions 2024-10-23 13:58:48 +02:00
debian_template.sh
Doxyfile Remove some more DOS related stuff 2020-07-25 19:15:54 -04:00
LICENSE
README.md The start of the scary 2.2 merge 2020-05-29 13:43:38 -04:00
srb2-vc9.sln
srb2-vc10.sln
SRB2.cbp
Srb2.dev
srb2.png Remove rest pf RingRacers Refs 2024-08-16 12:09:50 -04:00
SRB2_common.props
SRB2_Debug.props
SRB2_Release.props
srb2banner.png Remove rest pf RingRacers Refs 2024-08-16 12:09:50 -04:00

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.