1. Adds a `libdevilution_so` target when tests are enabled.
2. Each test file is now a separate binary target linked against `libdevilutionx_so` (can now run tests in parallel).
3. Tests are now defined in a separate `test/CMakeLists.txt` file.
4. Building the tests is now controlled by the standard `BUILD_TESTING` option (defined by CTest).
5. Tests are now built by default.
6. On CI, test errors are now reported.
Also:
* `.clang-format`: Enable SortIncludes in tests
* `path_test.cpp`: Fix -Wsign-compare
NewPlrAnim: Use default arguments instead of overloads
StartPlrHit: Fix skippedAnimationFrames - Frames starts with 1
Add missing comment for StartPlrHit
Fix GotHit-Animation: Skipping Frames corrected and adjusted _pAnimGameTicksSinceSequenceStarted for animations that don't start with a additional tick.
Thanks @StephenCWills for the gothit skipping frame calculation logic :-)
Update StartWalk: calculated numSkippedFrames in own line.
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
StartPlrHit: always initialize skippedAnimationFrames
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
Update nthread_GetProgressToNextGameTick comment
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
fix spelling "lenght" instead of "length"
Update NewPlrAnim comment
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
GetFrameToUseForPlayerRendering: avoid one "else"
Fixes the following error when compiling as C with Clang:
Source/dthread.cpp:92:46: error: parameter name omitted
unsigned int __stdcall dthread_handler(void *)
^
Related to #2017.
- Add file documentation to about 1/4 of the files in Source
- Copy over a lot of the documentation from the sanctuary/notes repo
- Standardise all the existing documentation
- Create a configuration for Doxygen
- Add more documentation (engine.cpp is now fully documented)
* Clean up msg_wait_for_turns
* Clean up msg_get_next_packet
* Clean up msg_pre_packet
* Clean up DeltaSaveLevel
* Simple clean ups for msg.cpp
* Clean up NetSendCmdQuest
* Clean up NetSendCmdGItem
* Clean up NetSendCmdGItem2
* Clean up NetSendCmdPItem
* Clean up NetSendCmdChItem
* Clean up NetSendCmdDItem
* Clean up multi_send_packet
* Clean up msg_errorf
* Clean up i_own_level
* Clean up msg_free_packets