Commit Graph

5583 Commits

Author SHA1 Message Date
Tamás Bálint Misius
b5f6ec0f6c
Build nolua, nohttp, nogravfft variants on ghactions 2023-01-27 09:26:40 +01:00
Tamás Bálint Misius
a2a079356a
Preprocessor purge round 14: NOHTTP 2023-01-27 09:26:40 +01:00
Tamás Bálint Misius
7ea839feb8
Move Lua HTTP out of LSI 2023-01-27 09:26:40 +01:00
Tamás Bálint Misius
91a9973bfd
Refactor HTTP
Request ownership is no longer flaky. Requests are now owned by the code that makes requests, and Requests and the RequestManager co-own RequestHandles. RequestManager disowns a RequestHandle if it's done with it or if Request code reports that it's no longer needed.

All libcurl code has been moved to RequestManager. This is nice because once NOHTTP is removed, we can add any number of RequestManager implementations, for example one for Android.

Client outliving RequestManager is still a problem, this will have to be addressed later.
2023-01-27 09:26:40 +01:00
Tamás Bálint Misius
29d4d4e91c
Preprocessor purge round 13: X86 2023-01-27 09:26:40 +01:00
Tamás Bálint Misius
b16cbf86fc
Preprocessor purge round 12: BETA, SNAPSHOT, MOD 2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
9068920de3
Preprocessor purge round 11: GRAVFFT
By splitting gravity implementations into separate translation units.
2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
dc8d63fb15
Preprocessor purge round 10: LUACONSOLE 2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
7fca2433cd
Derive LuaScriptInterface from TPTScriptInterface
Also convert stray references to LSI to stray references to CommandInterface. Not a lot better as it's still a global >_> but it's easier to follow.
2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
1f22e209f1
Localize Simulation::Before/AfterSim control to GameModel 2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
169aa47685
Hide CommandInterface creation behind a factory
Which is then provided by either a Lua-ful or a Lua-less translation unit.
2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
33edb2e0e4
Refactor GameController events
More precisely, refactor the code responsible for routing these GameController events to the Lua side. The issue with the previous solution was it relied on preprocessor macros to switch between Lua-ful and Lua-less builds.
2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
27ddf78e0c
Preprocessor purge round 9: XCELLS and YCELLS 2023-01-27 09:26:39 +01:00
Tamás Bálint Misius
1efafb8d30
Preprocessor purge round 8: trivial binary macros 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
9542f98b82
Preprocessor purge round 7: Config.template.h 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
e97fd74503
Preprocessor purge round 6: intro text and user agent 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
fdfa206a3c
Preprocessor purge round 5: M_PI 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
3eb1609934
Preprocessor purge round 4: misc function macros 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
b2b06bf009
Preprocessor purge round 3: spaghetti headers 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
e4c2ec5a00
Preprocessor purge round 2: #pragma once 2023-01-27 09:26:38 +01:00
Tamás Bálint Misius
3a591b8539
Preprocessor purge round 1: simulation constants 2023-01-27 09:26:36 +01:00
jacob1
44d53082eb
Fix memory leak in SaveRenderer (not cleaned up on exit) 2023-01-26 22:41:38 -05:00
jacob1
4c74d25840
Fix graphical artifacts sometimes showing up with ptsave startup arg 2023-01-26 22:40:58 -05:00
jacob1
e824e023f1
Fix WIND tool not reacting to zoom window properly, fixes #899 2023-01-23 20:32:37 -05:00
suve
8ce7a37070 Add missing cstdint includes
Some files have been using various fixed-size types (uint32_t etc.),
which are defined in stdint.h / cstdint, without including said header
file. While this code worked with GCC12 (likely a transitive include),
under GCC13 it fails to build due to "unknown type" errors.
2023-01-21 19:50:55 -05:00
Ksawi
62129e3d34 Add BIZR/BIZG/BIZS ctype serialization 2023-01-17 13:10:10 -05:00
jacob1
4c8cbf49be
Fix Gravity.cpp permission bits, fixes #893 2023-01-16 23:58:50 -05:00
Tamás Bálint Misius
d02242714e
Fix particle maps sometimes being stale when pasting
This restrict effects of paste-time de-stacking to positions under particles being pasted. If this is not done, particles beyond the paste area can be wrongfully killed, see #889.
2023-01-10 08:06:47 +01:00
Tamás Bálint Misius
853c47b0bd
Fix potential crashes due to overeager operator[]s
Some operator[]s that know the size of the container they wrap like to assert(index >= 0 && index < size), which is bad for us because we sometimes use &container[size]. This is not undefined behaviour until that pointer is dereferenced, but certain operator[]s choose to ignore this fact and err on the side of caution. The solution is to use &container[0] + size instead of &container[size].
2023-01-07 15:08:50 +01:00
Tamás Bálint Misius
c6d6a7d0bf
Cap FPS in a more stable way
Time-related variables are now on the nanosecond scale. See #886.
2023-01-05 18:25:41 +01:00
jacob1
225293cc80
Update build number and readme date 2023-01-03 21:02:45 -05:00
jacob1
3a7cdeefd9
Add sim.temperatureScale 2023-01-02 13:25:00 -05:00
Tamás Bálint Misius
55524bc27a
Fix proxy, cafile, capath command line options
Broken by edab57887d.
2023-01-02 18:48:02 +01:00
Tamás Bálint Misius
6e140b580c
Fix vote buttons being wrong on own saves
The buttons are disabled on such saves, and the disabled background colours weren't set.
2023-01-02 16:33:47 +01:00
jacob1
e3355c988d
Add disable-bluescreen to README, update copyright date 2023-01-01 20:45:15 -05:00
jacob1
3519dfa83a
Fix pmap not being updated when setting x / y from Lua 2023-01-01 20:42:03 -05:00
Tamás Bálint Misius
fcc259e9b9
Update tpt-libs
Also make it easier to test tpt-libs builds locally by making it possible to point build.sh at a local tpt-libs repo and move installation of build dependencies to build.sh.
2023-01-01 19:00:05 +01:00
Tamás Bálint Misius
80448440e9
Redo Platform::ExecutableName 2023-01-01 18:36:21 +01:00
Tamás Bálint Misius
edab57887d
Redo command line parsing 2022-12-31 10:48:44 +01:00
Tamás Bálint Misius
1da7438e39
Add ability to disable blue screens
This will let us produce crash dumps on user machines.
2022-12-30 08:21:12 +01:00
Tamás Bálint Misius
2bcf32e2cf
Stop relying on _DEBUG 2022-12-30 08:12:12 +01:00
jacob1
4907b84a84
Fix white LIFE being created in some cases, such as from EXOT+NEUT
The default for v is -1, which gets interpreted as a GoL rule with all bits set. Now, it will default to builtin-type GOL when v is -1.
2022-12-29 23:56:50 -05:00
Tamás Bálint Misius
1ffc2055ca
Extend the BETA part of the intro text
So it now includes a warning about local saves and stamps made in a beta potentially being incompatible with older versions.
2022-12-29 12:57:49 +01:00
Tamás Bálint Misius
c5c9c046aa
Fix an uninitialized variable warning
Not an issue in practice because that value is never used unless the accompanying isValid is true, but the compiler can't know that.
2022-12-29 08:46:35 +01:00
Tamás Bálint Misius
26eabca9de
Tweak "Small 3" character (\uE032) in the font
This should make it easier to tell apart from Small 9.
2022-12-29 08:31:51 +01:00
jacob1
932f28bcd7
Fix property tool converting x / y values as temperatures 2022-12-28 22:57:03 -05:00
Tamás Bálint Misius
476be15e77
Get build.sh app constants from prepare.py 2022-12-27 18:41:23 +01:00
jacob1
d318424038
Update readme date and version numbers 2022-12-27 12:08:47 -05:00
jacob1
f1cf0ade70
Merge pull request #847 from xphere07/temperaturescales
Add temperature scales option
2022-12-27 11:59:16 -05:00
jacob1
2a83d49979
Make CRMC immune to ACID, fixes #851 2022-12-27 11:48:15 -05:00