The last segment of the path is shortened to avoid going too close
and risk bumping into the object that it was meant to approach.
The same position could also be found by finding the roots of a second
order polynomial analytically but this solution is simple and sufficient.
This is a bit redundant because the current usage of goto
does not trigger it. It can be triggered by:
* increasing goalRadius
* decreasing NUMQUEUEBUCKETS
* decreasing BM_DIM_STEP
* increasing edge costs
Split the test into several parametrised tests for each data type.
Add more tests with different values.
Fix the ReadBinary() function in order to fix the ReadDouble() function
for negative values (the sign bit was being lost).
We currently use CMake 3.16 for compatibility with Ubuntu 18.04 LTS.
The `NAME_MISMATCHED` argument which turns off a CMake warning
when using `FIND_PACKAGE_HANDLE_STANDARD_ARGS`, is not available
in CMake 3.16 and can prevent a successful build.
See
https://github.com/colobot/colobot/pull/1478#issuecomment-986204233
Update the `data` and `lib/googletest` submodules.
`git submodule update --remote` command should now
update the data submodule by rebasing on the remote branch named
the same as the current branch.
Changes in the `lib/googletest` submodule should now be ignored
in `git status`.
Fail occurred due to wrong read of min double.
`unsigned long` has been changed in Write/ReadDouble functions to
`uint64_t`.
`unsigned int` has been changed in Write/ReadFloat functions to
`uint32_t`.
According to the standard
`int` is at least 16-bit so it might be too small for 32-bit `float`,
`long` is at least 32-bit so it might be too small for 64-bit `double`,
and `long long` is at least 64-bit.
Fix mistakes after previous merge and make it compile.
Rewrite the function interpolating between time stamps as it was
written after the original pull request was created. Add unit tests
for it.
I couldn't help myself and also changed some enums to enum classes and
did some renames.
There exists `CreateDirectory` `#define` somewhere and it results in
failed compilation of `resourcemanager.cpp`.
Similarly for `RemoveDirectory`. See
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createdirectorya
Rename the two methods to remove the conflict.
The fail occurs at least when using Visual Studio 2022 Preview.