Commit graph

37 commits

Author SHA1 Message Date
mat
b9a09f73d5 update json library, changes namespace to matjson
very breaking change! though not annoying to upgrade. this change was
done because matjson is not really meant to be a "do everything" json
library, so taking up the very common `json` identifier was troublesome.
2024-01-03 18:04:43 -03:00
altalk23
5d07b2ab7d Geode android compiles gg girls and girls 2023-12-21 19:42:01 +03:00
altalk23
7b793a4d1d get codegen sources to compile 2023-12-21 17:13:39 +03:00
HJfod
2aa9f561f5 bump minimum cmake version 2023-12-20 12:47:04 +02:00
altalk23
4cec5d7eb0 Add copy ctors to event filters 2023-04-10 16:54:58 +03:00
hjfod
f8b32cdc88 add event tests 2023-04-03 10:04:56 +03:00
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