Commit graph

31 commits

Author SHA1 Message Date
PoweredByPie
5af15fba7c Add geode::prelude to replace USE_GEODE_NAMESPACE()
Don't use macros where not necessary!
This deprecates the old macro by way of a weird alias namespace.
2023-03-10 12:09:48 -08:00
HJfod
7089194be9 fix setting value changes not being broadcast 2023-02-24 21:30:36 +02:00
HJfod
f32aaa8b12 add better support for dependencies
- create_geode_file now redirects to a new function called setup_geode_mod
 - setup_geode_mod auto-links loader
 - setup_geode_mod invokes CLI (if v1.4.0+) to automatically check your dependencies and install them + link their headers and libs to your project
 - fix Result::expect not working on non-copiable types
 - add in-memory functions for file::Zip and file::Unzip
 - ComparableVersionInfo now always returns false if major versions dont match
2023-01-31 14:48:34 +02:00
matcool
deab672bc2 json rewrite, use custom lib instead of nlohmann::json
This is in attempt to make compile times better, as the old json library
was quite slow to compile due to many template instantiations and such a
large header.

macOS tests have shown build times from 610s to ~390s, about a 1.5x
speedup

Co-authored-by: camila314 <47485054+camila314@users.noreply.github.com>
2023-01-27 21:14:26 -03:00
altalk23
dc0da9fc56 make it compile on macos 2023-01-15 02:00:59 +03:00
HJfod
f42fdfcf55 fix merge + make sure test mods aren't installed again 2022-12-13 22:51:09 +02:00
HJfod
afd9258995 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2022-12-13 22:42:49 +02:00
HJfod
9ffb15b616 rework settings
- Settings no longer abuse templates
 - Custom settings are now supported (finally)
 - Bumped version to v1.0.0-alpha
2022-12-13 22:39:45 +02:00
altalk23
5e1d1eccdb remove schedules, also make Mod::get() lazy 2022-12-13 12:23:37 +03:00
altalk23
a554f93b93 use cxx_std_XX instead of CXX_STANDARD 2022-12-13 08:36:50 +03:00
altalk23
6a9046d406 port geode loader hooks to non macro modify 2022-11-09 21:07:20 +03:00
HJfod
796a5103f6 remove support for versions prefixed with "v" 2022-11-09 18:01:22 +02:00
HJfod
f9cda74b58 automatic resource repair
- loader checks if resources are correct at startup, if not, downloads them and replaces
 - add sha256 to hash
 - change hash to use paths instead of strings
 - cmake rework; GeodeFile.cmake now checks CLI version
 - add optional `DONT_INSTALL` argument to `create_geode_file`
 - test mods are now not installed by default
 - add package_geode_resources_now command for packaging resources at configure time and creating a header with their calculated hashes
2022-10-14 16:26:16 -03:00
altalk23
070474dd18 some header fixings and more compile time improvements 2022-10-13 14:00:41 +03:00
altalk23
97456db101 more removal of geode.hpp headers 2022-10-13 13:07:37 +03:00
altalk23
1cfc793f7c seperation of modify and bindings 2022-10-13 11:31:23 +03:00
HJfod
9607c898b9 bump test mod target versions + fix msvc warning about ast.hpp finally 2022-10-08 13:34:04 +03:00
altalk23
48ab98a115 macos fixes and implemented the bootstrapper without testing 2022-10-08 12:41:36 +03:00
altalk23
d9a1fae5b0 compiles on macos, though there are still some crashes 2022-10-04 13:32:40 +03:00
HJfod
915e2f6966 update for new cli 2022-10-03 13:51:48 +03:00
HJfod
0118945a39 bump version to v0.2.1 + change optional members in ModInfo to actually
use std::optional + JsonValidation support for std::optional
2022-09-29 22:34:28 +03:00
HJfod
6d2718ce09 rename utils namespaces to be consistent + add file picking function +
implement it on windows via NFD + settings are pretty much finished
2022-09-26 13:53:40 +03:00
HJfod
8e629cb2cf preserve settings order (note: still need to change all uses of json to
ordered_json) + preliminary work on file setting
2022-09-23 22:25:20 +03:00
HJfod
19293e2fdf now with color settings 2022-09-21 14:50:23 +03:00
HJfod
25fb983cb4 support disabling input 2022-09-19 23:17:39 +03:00
HJfod
5fd6c187d0 controls in setting nodes + update reset sprites + add more control
over setting controls
2022-09-19 23:03:50 +03:00
HJfod
98684a62e5 add touch dispatcher fix + move built-in settings' nodes to their own
internal header & source + regex match validation for string settings +
further work on settings UI now featuring a cooler reset button
2022-09-19 00:07:08 +03:00
HJfod
71bd0fec83 now with a settings value getter in Mod so settings are actually usable
+ more settings UI stuff, preliminary control parsing (no UI for them
yet though) + fix InputNode not working
2022-09-14 19:21:35 +03:00
HJfod
0ab32b3e25 update json validation to no longer use exceptions and be enjoyable to
work with + preliminary settings & UI work + various other fixes and
changes
2022-09-13 00:37:25 +03:00
HJfod
efed426532 fully bump version to 0.2.0 + fix cmake platform binary name on windows 2022-08-09 01:13:21 +03:00
HJfod
46e3a071d3 whole of geode except without history 2022-07-30 19:24:03 +03:00