Commit graph

101 commits

Author SHA1 Message Date
hjfod
7963469f1e make attributes use json::Value instead of std::any 2023-03-29 15:23:57 +03:00
matcool
7e60770c9b
some members 2023-03-25 19:28:55 -03:00
matcool
9fb1c4dcdb
add AudioEffectsLayer members and rename some PlayerObject ones 2023-03-19 16:39:37 -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
altalk23
f5983a251e fix editorpauselayer guideline button missing 2023-02-26 16:28:02 +03:00
HJfod
7089194be9 fix setting value changes not being broadcast 2023-02-24 21:30:36 +02:00
camila314
14d0eadb4b change member 2023-02-22 14:23:02 -06: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
HJfod
f089afc27c fix includes + add some doccing 2023-01-21 16:00:14 +02:00
altalk23
dc0da9fc56 make it compile on macos 2023-01-15 02:00:59 +03:00
altalk23
8c7be45226 fix TeleportPortalObject 2023-01-06 21:43:22 +03:00
altalk23
bfe05a77e2 add some gameobject offsets as anchors 2023-01-06 21:39:11 +03:00
altalk23
8fb5a84117 fix PlayLayer for macos 2023-01-06 21:30:06 +03:00
matcool
1f789ae53b add windows offsets and fix some classes 2022-12-31 17:32:31 -03:00
altalk23
fab8c1eae3 add some generic member tests to macos 2022-12-31 16:06:05 +03:00
altalk23
c8765adb5b fix PlayerObject for macos 2022-12-31 15:48:05 +03:00
altalk23
1e58896a26 Merge branch 'main' of https://github.com/geode-sdk/geode 2022-12-31 15:33:33 +03:00
altalk23
45032a4511 Don't link the entirety of geode-sdk for membertest 2022-12-31 15:33:15 +03:00
matcool
09b127527b Add CI for member tests, fix PlayerObject
also adds some offsets for windows
2022-12-31 09:09:39 -03:00
altalk23
b87883903c add member offset checker test 2022-12-30 22:13:45 +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
HJfod
72af8b95e6 GGCP
- remove datastore
 - remove binary parsing in mod.json
 - try to fix mac build again
2022-11-28 20:17:58 +02:00
HJfod
d701563534 lots of stuff
- add TableView virtuals on windows
 - rework events to match new events system
 - rename NodeStringIDManager to NodeIDs and add a syntactically sugary NodeIDs::provideFor function
 - change test mod to use event callbacks instead of exported ones
2022-11-12 14:55:25 +02: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
altalk23
6d5e02a6b4 completely remove interface + implement scheduling stuff 2022-10-08 16:53:09 +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
aed28fc240 rename GEODE_DONT_PACKAGE_RESOURCES to GEODE_DISABLE_CLI_CALLS in cmake
+ fix build
2022-10-03 14:01:08 +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