Commit Graph
1295 Commits
Author SHA1 Message Date
altrisi 0a972d6c56 Settings rework and encapsulation (#1330)
* Settings rework and encapsulation

* Settings overhaul 3

Move everything in the new system to a new API package

Require rules using the new system to specify descriptions in their translation files

Implement temporary system on top of current translations to allow that to work properly

* Fix getRules fallback

* Final touches to settings refactor

* Mention that set shouldn't throw and remove comment

* Change translation keys to unify with translation PR

* Deprecate printAllRulesToLog to allow using any PrintStream

* Remove restriction of CarpetRules being Comparable

And fix overreaction in a deprecation message

* Bring back user input to rule observers

* Make Validator deprecation warning not spam on use

* Remove unneeded abstract methods in CarpetRule already inherited from CarpetRule

They literally do nothing, don't even force them to be implemented, and may be confusing as to why they're there or as if they are needed to be implemented

* Fix legacy SettingsManager field not being assigned correctly

* Finish fixing conflicts from future merge

* Actually fix remaining conflicts from future merge (missing imports)

* Import the newer rule in SettingsManager

* Refactor Validators

* Don't spam deprecation warnings on custom managers

* Get out the var

* Fix missing warning in old rule observers

* Update src/main/java/carpet/api/settings/Rule.java

* Remove `@ApiStatus.Experimental` annotations

* Fix incorrect `@deprecated` javadoc tags

By removing them given the class is deprecated anyway and else there's too much noise

* Add missing static import

* Remove TypedField and use a regular field

I liked that class tbh, but it's true that it wasn't really needed

* Move `field` assignment out of for removal

* Fix not following contract of `type()` returning boxed value

Previously handled by TypedField

* Fix few incorrect translation keys

* Remove resaving of comments when saving config files

Comments ignoring is still a thing when reading, so `locked` configs for example will keep comments

* Condense rule load messages in one

* Only print loaded settings message when at least one setting was changed

* Fix legacy validator detector

* Tweak and add more context to response to invalid values

* Fix strict validator not actually erroring on invalid input
2022-06-27 13:12:15 +02:00
gnembon 40af4f2200 1.4.78 for 1.19-pre5 2022-06-01 21:58:32 +02:00
Luca Bertozzi 8c7dfa133e Added __on_chunk_unloaded scarpet event (#1451)
* Fixes #1403

* Use concrete type
2022-05-27 20:24:25 +02:00
altrisi f18cfb09d2 Fix more warnings and do some small optimizations (#1356)
* Fix more warnings and do some small optimizations

* Fix more warnings in ValueConversions

* Clean up some decompiler names and fix an unnecessary transformation around commands

* Use (way) more compact data structure for slot map

* Minor tweaks
Such as map directly in the collector

* I hate vanilla javac
Revert map changes in latest commit
2022-05-27 19:43:45 +02:00
altrisi 668f309f23 Change missed usage of deprecated methods from #1383 2022-05-17 21:55:22 +02:00
altrisi a60bc386cb Refactor Module into a single record type and fix system globals (#1383) 2022-05-17 20:11:49 +02:00
gnembon 1a6b1df534 22w19a 2022-05-13 11:26:47 +02:00
gnembon 217567c037 22w18a 2022-05-04 21:34:22 +02:00
altrisi 6111dece61 Ease concrete restrictions on Annotated Scarpet API and make instantiating lazy
Prevents instantiating classes with all annotated methods static, making it also more flexible in that you can put annotated functions near to other API that may be initialized
2022-04-24 13:40:09 +02:00
gnembon 746c8548e9 22w16b with massive Component changes 2022-04-21 00:26:39 +02:00
altrisi 83b0fb1f4d Show local type in exception hover tooltips (#1397) 2022-04-20 13:29:31 +02:00
altrisi 80a5342776 Make scarpet internal and control flow exceptions stackless (#1392) 2022-04-20 13:27:25 +02:00
altrisi 76861479e0 Add support for formatted names in create_marker (#1413) 2022-04-20 13:01:58 +02:00
altrisi f590e9d109 Fix latest commit 2022-04-11 12:59:51 +02:00
altrisi 96bb1072c4 Remove chest boat from living entities
Fixes #1405.
2022-04-11 12:51:55 +02:00
gnembon 812d361af2 22w14a 2022-04-06 22:16:05 +02:00
BisUmTo fca98c7b37 Fixed execution offset in screens callback context (#1353)
Wrong origin in screen callbacks
2022-04-04 12:34:48 +02:00
gnembon ef3e71b9b6 22w13a 2022-03-31 20:23:49 +02:00
gnembon 79f994f2da enable_hidden_dimensions is ded :( 2022-03-30 07:52:44 +02:00
gnembon 842370f68d Merge branch 'master' into future
# Conflicts:
#	src/main/java/carpet/script/api/Auxiliary.java
2022-03-30 07:49:07 +02:00
gnembon c33c53c8c2 enable_hidden_dimensions is ded :( 2022-03-30 07:44:37 +02:00
gnembon ab07a6807a 22w12a 2022-03-24 21:48:29 +01:00
gnembon 2743908887 use proper registires, still issues. 2022-03-24 21:20:19 +01:00
gnembon 7c353d40f8 Merge branch 'master' into future 2022-03-24 21:18:53 +01:00
gnembon d1f3886845 use proper registires, still issues. 2022-03-24 21:18:32 +01:00
gnembon cd1854a734 Merge branch 'master' into future 2022-03-23 18:21:45 +01:00
gnembon aab3de671e add reload resources after reload, still not fixing the issues 2022-03-23 18:21:15 +01:00
gnembon 679045b289 Merge branch 'master' into future
# Conflicts:
#	src/main/java/carpet/script/api/Auxiliary.java
2022-03-21 21:19:35 +01:00
gnembon f213a79639 adapt to 1.18.2 for enable dimensions fix 2022-03-21 21:14:20 +01:00
gnembon c4ab2467ba fixes biomes not saving fixes #1322 2022-03-20 15:16:31 +01:00
gnembon f4bccfb594 fix 2022-03-18 16:45:47 +01:00
gnembon 7003ea8cf0 Merge branch 'master' into future
# Conflicts:
#	src/main/java/carpet/helpers/FeatureGenerator.java
2022-03-18 16:42:44 +01:00
gnembon 6ed33ecc50 structures save to world, fixes #1346, attempt to fix biome and dimension recreation, but the other ones need more testing. 2022-03-18 16:41:21 +01:00
gnembon 193cf3777f fixes for 22w11a 2022-03-17 23:57:42 +01:00
gnembon 302a7b4817 fixes for 22w11a 2022-03-17 20:21:55 +01:00
gnembon 43f5da90a8 fixes #1328 2022-02-23 22:55:44 +01:00
gnembon d24f711e27 1.18.2-pre3 2022-02-23 22:15:48 +01:00
altrisi 1f0c609dc0 Remove log4j as much as possible (#1334) 2022-02-22 01:35:56 +01:00
altrisi b1c934da28 Fix a few IDE warnings (#1345) 2022-02-20 19:16:12 +01:00
altrisi e011f65e75 Fix unhandled exceptions when evaluating operators (#1344) 2022-02-20 19:15:54 +01:00
gnembon c01ad9ce9d 1.18.2-pre 2022-02-20 01:50:46 +01:00
gnembon fa1e6ce086 22w07a
- disabled "sample_noise"
2022-02-16 22:23:52 +01:00
gnembon aaea11d82d removed ability to query for entire system_info in one go. 2022-02-16 00:25:35 +01:00
replaceitemandgnembon bf00051482 Added __on_player_message event (#1312)
* Added __on_player_sends_message event

* Docs for chat message event

* Rename to __on_player_message

* Editor support

* Added event to event_test app

* Update docs/scarpet/api/Events.md

Co-authored-by: gnembon <41132274+gnembon@users.noreply.github.com>
2022-02-16 00:07:53 +01:00
altrisi 53f456320c Implement missing method in BlockValue.PlacementContext to fix exceptions in place_item (#1329) 2022-02-16 00:03:44 +01:00
gnembon 212814f46d 22w06a 2022-02-10 03:15:53 +01:00
gnembon 695b569977 remove instanceof NullValues fixes #1313 2022-02-06 00:18:42 +01:00
gnembon ac7da0c2ca 22w05a 2022-02-02 19:55:54 +01:00
gnembon 0be0fd1eff swap default variable values to null/undef 2022-02-01 01:25:47 +01:00
gnembon 893c3b984f added strict configuration 2022-02-01 01:25:19 +01:00