Commit graph

347 commits

Author SHA1 Message Date
altalk23
d9c65b37ea better geode version comparison & handling 2024-01-31 00:47:30 +03:00
matcool
c16cac0707 add missing GEODE_DLL to these functions 2024-01-28 18:20:27 -03:00
ConfiG
17467d129b
better thread names api 2024-01-28 17:41:33 +03:00
matcool
ee97e2daac deprecate blocking file utils, will remove later 2024-01-28 10:37:51 -03:00
ConfiG
ce53fb3135
add api for getting/setting thread names 2024-01-28 15:33:33 +03:00
dankmeme01
9ff919118e
Add methods for requesting and querying permissions (#461)
* add methods for requesting and querying permissions

* change requestPermission to void and handle jni errors

* move permissions to utils

* how could i forget the mac operating system

* genuinely blind

* make a permission enum

* call permission callbacks on unimpl platforms
2024-01-27 16:02:34 -03:00
altalk23
bb1fcbe678 inputnode has been very fun 2024-01-27 21:09:57 +03:00
mat
4cafd145b5
Update general.hpp 2024-01-25 13:45:12 -03:00
alk
73707610db
Merge pull request #447 from geode-sdk/prio-revert
Revert priority changes hook
2024-01-24 20:14:29 +03:00
altalk23
620c1bb04d forgot to remove AsyncResponseHeader 2024-01-24 19:33:18 +03:00
altalk23
df07409532 implement the last modified since & responseHeaders in async web 2024-01-24 19:31:51 +03:00
altalk23
4cd08e1ca9 remove try blocks 2024-01-24 17:17:42 +03:00
altalk23
44976b4348 Make the force a param instead 2024-01-24 13:39:07 +03:00
altalk23
e3d0b30d70 force touch priority for overwriting priorities 2024-01-24 13:37:10 +03:00
altalk23
303d7cede4 force prio hook no more 2024-01-24 11:57:10 +03:00
altalk23
709e3cab48 first impl of revert 2024-01-24 11:30:38 +03:00
matcool
98f4e7e817 no need to overload addressOfNonVirtual 2024-01-18 16:09:39 -03:00
altalk23
165f05fcb4 funny shared_ptr implementation 2024-01-15 17:57:43 +03:00
ConfiG
28c91f762e
refactor Hook/Patch 2024-01-15 00:42:04 +03:00
matcool
8ccc61febb new util methods, rename postFields and customRequest 2024-01-09 20:10:58 -03:00
matcool
8081860055 Merge branch 'main' of github.com:geode-sdk/geode into web-request-refactor 2024-01-09 15:40:45 -03:00
matcool
947dcf7f26 add concepts to validate the types for the ext classes 2024-01-09 10:47:23 -03:00
matcool
32cd4c40f1 fix ccdictionaryext yet again 2024-01-09 09:41:22 -03:00
matcool
aecd7cc186 oops missed this one 2024-01-09 02:20:10 -03:00
matcool
e1b7b1f4be change ccdictionaryext api sorry 2024-01-09 02:13:44 -03:00
mat
13ac3359f7 add AsyncWebRequest::timeout 2024-01-03 23:12:23 -03:00
mat
1ee1352d70 make AsyncWebRequest pimpl 2024-01-03 22:17:27 -03:00
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
mat
c57db81910 remove log components, just format directly with fmtlib 2023-12-25 15:18:38 -03:00
altalk23
7b793a4d1d get codegen sources to compile 2023-12-21 17:13:39 +03:00
altalk23
d853f2240e move node ids 2023-12-20 20:21:23 +03:00
HJfod
442789e61a Merge branch '1.4.0-dev' into 2.0.0-dev 2023-12-20 12:19:29 +02:00
camila314
b17ca9ae4b docs change lmao 2023-10-22 11:01:14 -05:00
altalk23
f57601d0b5 file picker 2023-10-08 16:38:17 +03:00
altalk23
a43dcc84cb Revert "Add MenuItemSprite"
This reverts commit 152dc7edcf.
2023-09-20 17:37:42 +03:00
altalk23
152dc7edcf Add MenuItemSprite 2023-09-20 17:07:25 +03:00
altalk23
34398b86e9 Merge branch 'main' into 1.4.0-dev 2023-09-20 15:30:29 +03:00
ConfiG
07c6278253
fix CCArrayExt::operator[] return type 2023-09-18 10:09:53 +03:00
altalk23
0f67435685 Merge branch '1.4.0-dev' into 2.0.0-dev 2023-09-13 10:43:47 +03:00
ConfiG
a738320e2c
add uninstall button to geode mod 2023-09-11 16:36:35 +03:00
altalk23
92ca99b82c fix broken web request stuff 2023-09-08 18:05:20 +03:00
altalk23
83e48fa8dc Fix AsyncWebRequest backwards compat 2023-09-08 18:02:59 +03:00
altalk23
c256207457 Add post & custom requests and user agents to AsyncWebRequest 2023-09-08 17:17:45 +03:00
ConfiG
17a5ac93ea
remove all deprecated functions 2023-08-31 15:27:30 +03:00
altalk23
7836e60b86 Merge branch 'main' into 1.2.0-dev 2023-08-27 19:16:32 +03:00
matcool
8b9860be5b
fix addresser for some cocos funcs 2023-08-27 11:10:43 -03:00
altalk23
a31d07237f Add objc hooking utilities 2023-08-18 10:51:00 +03:00
ConfiG
9a3f1c9e7b
change GEODE_UNWRAP to require ; at the end 2023-08-18 01:39:02 +03:00
ConfiG
7f449b996e
add utils::game::restart, reset => forceReset 2023-08-10 23:49:29 +03:00
ConfiG
2b1dc178a4
add any (*) to ComparableVersionInfo 2023-08-09 21:58:44 +03:00
ConfiG
82e128bb57
add utils::string::join 2023-08-07 01:47:14 +03:00
qimiko
041a98ee4d
implement loader for android
compilation still won't work, pending implementations for gdstl/codegen/tuliphook. the first two should be mostly done already. may also be good to get FileWatcher, crashlog, and the file picker implemented but they aren't necessary

the libcurl.a and libssl.a files were built using
https://github.com/ibaoger/libcurl-android. they are placed in the link/android folder because putting them in the link folder confused the macOS build.

once built, the geode binary should be loaded after nativeSetApkPath is ran (otherwise the directory setup crashes). in the future it would be nice if the internal mod also did save data path redirection, as base GD is incapable of doing this

Co-authored-by: mat <26722564+matcool@users.noreply.github.com>
2023-06-05 17:42:22 -07:00
HJfod
5dfff3693f add default case for version comparisons 2023-06-04 17:23:31 +03:00
HJfod
d0c2394a1e fix GEODE_UNWRAP macros not using fully qualified names 2023-06-04 17:23:13 +03:00
altalk23
1323debea7 remove file::current_path, add less and more version compares 2023-05-01 16:06:06 +03:00
altalk23
e3bda2a544 Fix resources because of broken working directory 2023-05-01 12:11:32 +03:00
HJfod
a45032ae2c Merge branch 'main' of https://github.com/geode-sdk/geode into main 2023-04-27 18:51:08 +03:00
HJfod
e7ab46cfdb add logging for gd::string and fix version comparisons being inverted 2023-04-27 18:50:45 +03:00
altalk23
f7edc81df4 fix macos includes for file.hpp 2023-04-27 10:41:07 +03:00
hjfod
50ff15c356 add public file watching api 2023-04-27 09:22:56 +03:00
hjfod
1c699c3b04 fix file::writeToJson 2023-04-24 08:59:38 +03:00
HJfod
2dbad94e52 add utils for loading and saving structs as json files 2023-04-22 21:37:57 +03:00
HJfod
cf69fa3b2f fix WeakRef 2023-04-07 20:07:16 +03:00
alk
5924901d2d
Make SentAsyncWebRequest dllexported 2023-04-05 21:01:32 +03:00
HJfod
e92541a655 add WeakRef 2023-03-30 22:07:57 +03:00
HJfod
a5e33668aa add filter to EventListenerNode 2023-03-23 19:14:09 +02:00
HJfod
11299df20c remove uses of RT_ADD + more bindings 2023-03-22 21:49:29 +02:00
HJfod
09341840f8 more bindings 2023-03-15 22:36:13 +02:00
matcool
306fde70d0
add util geode::cocos::getMousePos 2023-03-11 11:40:03 -03:00
mat
174136ce0b
Make CCDictionaryExt::operator= return type not const 2023-03-10 09:22:48 -03:00
dogotrigger
8310485fc0 Fix CCDictionary's = operator
that was easy and working fix
2023-03-10 09:19:24 -03:00
hjfod
b88eda0fde Merge branch 'main' of https://github.com/geode-sdk/geode 2023-03-08 08:38:25 +02:00
alk
1b2c7606b6
Fix recursive comparison in VersionTag 2023-03-07 11:56:36 +03:00
hjfod
ebfa7b2af4 fix loader min mod version 2023-03-07 08:50:20 +02:00
HJfod
0f19f09a32 fix version comparisons 2023-03-06 20:59:30 +02:00
HJfod
ad98823438 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2023-03-06 19:53:01 +02:00
HJfod
2e485d88a9 add CurrencyRewardLayer::create and its related enums 2023-03-06 19:52:49 +02:00
altalk23
c89df7b992 rename monostate ctors to zero ctors & make it platform independent 2023-03-06 00:52:39 +03:00
hjfod
4a15afc7a7 add EditorUI::sliderChanged + Result::ok + bump version 2023-02-27 18:36:36 +02:00
HJfod
5c9ee08922 fix file open dialog default path not having a way to specify filename 2023-02-26 20:37:13 +02:00
matcool
c183a3566f
fix addresser for CCFileUtils 2023-02-25 15:25:12 -03:00
HJfod
9f60091fbb add file::readDirectory as a sane alternative to file::listFiles 2023-02-25 11:21:43 +02:00
HJfod
75be0b6502
Merge pull request #137 from geode-sdk/better-layouts
Better layouts
2023-02-23 22:34:14 +02:00
hjfod
bbbf3324eb versions now support tag numbers + tags are now used in comparisons 2023-02-22 12:19:17 +02:00
altalk23
5dfef0c352 revert friend create for getting address 2023-02-21 10:41:11 +03:00
HJfod
511938fe1c Merge branch 'main' into better-layouts 2023-02-19 19:58:47 +02:00
matcool
37361269ec move Addresser::followThunkFunction to source 2023-02-14 18:28:13 -03:00
HJfod
ffd50eb0f1 fix ranges::reverse + add break line option to AxisLayoutOptions
also EditorPauseLayer ids but didn't finish the layouts yet
2023-02-14 21:54:45 +02:00
HJfod
cb1a6f15ee update a lot of ids 2023-02-12 13:01:12 +02:00
HJfod
06bc6fda91 move GEODE_DLL to the structs themselves in JsonValidation 2023-02-10 17:09:05 +02:00
matcool
65f2cbb286
follow thunk functions for non virtuals 2023-02-09 13:54:30 -03:00
camila314
0cfb064631 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2023-02-09 09:45:11 -06:00
camila314
41aef57758 make >= default prevent issues 2023-02-09 09:45:06 -06:00
altalk23
04dd151f0e minifunction replacing compiles 2023-02-08 18:25:07 +03:00
altalk23
4bf6344def Merge branch 'main' of https://github.com/geode-sdk/geode 2023-02-08 16:44:23 +03:00
altalk23
4f259c6e3a forward filesystem 2023-02-08 16:42:34 +03:00
HJfod
049ff650e4 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2023-01-31 21:20:05 +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
altalk23
5c2db47104 add concepts lib to addresser 2023-01-30 17:29:41 +03:00
altalk23
7c646c21df add special care for CCScrollView 2023-01-30 14:10:39 +03:00
altalk23
e44a4bb513 make cached instance 2023-01-30 11:36:31 +03:00
altalk23
63e9b4c5f7 fix create overloads not recognising 2023-01-30 11:07:18 +03:00
altalk23
4aa09c085b use std::enable_if for create checking 2023-01-30 11:02:32 +03:00
altalk23
68e75eafb5 fix HasCreate 2023-01-30 10:24:59 +03:00
altalk23
2f0c36f007 allow protected and private create funcs 2023-01-30 10:16:55 +03:00
altalk23
f385cc9d43 use ::create wherever you can 2023-01-30 10:06:58 +03:00
altalk23
1e9faac5aa add exception for ccset 2023-01-30 09:53:20 +03: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
befcf8ecfd add icon for docs 2023-01-24 21:50:40 +02:00
HJfod
a418828394 fix resources not being downloaded by fallbacking to github api
- also add an overload to AsyncWebRequest::expect that gives you the http status code
2023-01-24 18:17:03 +02:00
HJfod
9e52089a01 whoops turns out union cast is required to make it work 2023-01-23 19:51:51 +02:00
HJfod
e65f1184e7 remove use of union_cast 2023-01-23 19:45:29 +02:00
HJfod
21e25ff382 fix thunk adjust 2023-01-23 19:31:38 +02:00
HJfod
c8e627d921 Merge branch 'main' into tulip-hook 2023-01-21 14:17:58 +02:00
HJfod
8d08ca07a0 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2023-01-21 14:17:45 +02:00
HJfod
f8737dde43 docs stuff i think 2023-01-21 14:17:33 +02:00
matcool
1a51754e65
Merge branch 'main' into tulip-hook 2023-01-19 20:18:24 -03:00
alk
018a42a258
Update MiniFunction.hpp 2023-01-18 23:40:33 +03:00
alk
50eecc2c0b
Update MiniFunction.hpp 2023-01-18 23:10:00 +03:00
alk
db109bfdf2
Fix recursive ctor in minifunction 2023-01-18 23:05:37 +03:00
altalk23
a1c7139e53 I only changed the headers and not the sources to improve compile times a bit 2023-01-15 00:45:58 +03:00
altalk23
b97bb0cc98 Merge branch 'main' into tulip-hook 2023-01-06 22:09:53 +03:00
altalk23
eb3b84113c i wasnt content with previous seedvalue impl 2022-12-31 18:02:48 +03:00
altalk23
a49f01b14f remove templates from SeedValue 2022-12-31 17:50:11 +03:00
altalk23
318ec7864f Add SeedValue utility for handling robtop's funny seed rand values 2022-12-31 17:28:05 +03:00
altalk23
45032a4511 Don't link the entirety of geode-sdk for membertest 2022-12-31 15:33:15 +03:00
altalk23
1bdc8f408c Update TulipHook and fix some really minor stuff 2022-12-14 17:17:52 +03:00
altalk23
5666c8f356 separate mod and impl 2022-12-14 14:11:19 +03: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
63671c9618 compilation test 2022-12-13 10:35:26 +03:00
matcool
25fcc35dad
define NOMINMAX 2022-12-12 21:30:15 -03:00
matcool
2c3520f454 Add CPM.cmake, use it for external libraries
this removes submodules and external libraries in the code in favor of
importing them as CPM packages. CPM_SOURCE_CACHE is recommended as
codegen has to readd two of the same dependencies
2022-12-12 18:20:24 -03:00
mat
8342b7fc7c
fix ranges.hpp once again
i am killing someone
2022-12-12 18:07:34 -03:00
mat
f97dbd96ed
move convertible_to polyfill to ranges.hpp 2022-12-12 17:36:19 -03:00
mat
1d0a59ca38
include concepts in ranges.hpp 2022-12-12 16:43:40 -03:00
HJfod
189040ac78 thingies
- rename LayerBG.hpp to General.cpp
 - add addListBorders UI function for adding comment borders to a list
 - change VersionInfo parsing to use streams
 - remove VersionInfo::validate and instead just have VersionInfo::parse
 - remove scnlib
2022-12-12 18:44:17 +02:00
HJfod
c8e7ce0b18 Merge branch 'main' of https://github.com/geode-sdk/geode into main 2022-12-12 15:45:43 +02:00
HJfod
4c4674da93 add suffixes to versions 2022-12-12 15:45:27 +02:00
altalk23
a47937c379 remove spinlocks & make sent async response pimpl 2022-12-12 15:40:05 +03:00
HJfod
ef55605b5b remove SafeCreate for being pointless 2022-12-12 14:11:14 +02:00
altalk23
ca61385f0d Merge branch 'main' of https://github.com/geode-sdk/geode 2022-12-12 14:42:47 +03:00
altalk23
a449225d60 Merge branch 'altalk' 2022-12-12 14:09:16 +03:00
HJfod
3897293862 add file::Zip utility for creating Zip files 2022-12-12 12:45:20 +02:00
HJfod
500e6f2d26 remove use of operator<=>
it doesn't work on mac
2022-12-11 21:01:52 +02:00
HJfod
8a1ecbe5ab try to fix mac build
- add <tuple> include to VersionInfo
2022-12-11 20:44:38 +02:00
altalk23
3a31efe113 implement pimpl for loader 2022-12-10 19:30:14 +03:00
HJfod
7397193e57 index is looking good
- mod dependencies reworked to be much less bad and actually good now
 - mod dependencies finally check the version
 - support for dynamic versions for dependencies (<=vX.X.X, ==vX.X.X, >=vX.X.X)
 - index is now ready for implementing mod installation, then we're done with this massive sausage package
2022-12-09 00:28:05 +02:00
HJfod
28b413d636 make VersionInfo constexpr 2022-12-08 22:04:02 +02:00
HJfod
311eb2e356 work
- fix file::listFiles
 - temporarily make loader mod min version very low to work with index
 - index now properly updates
2022-12-08 13:35:02 +02:00