Commit Graph

621 Commits

Author SHA1 Message Date
ceze88
54ef2c0b29 Fixes getNextId method for empty databases. Adds some new saving methods. TODO: clean up this class 2023-07-24 12:23:10 +02:00
ceze88
9d94232ab5 Fixes NPE when the entity is not stacked 2023-07-24 11:58:39 +02:00
ceze88
3ff333d1b4 Adds loadBatch with conditions and delete with custom uuid column 2023-07-20 16:35:15 +02:00
ceze88
abd51e0e82 Fix item stacking when using large numbers 2023-07-17 12:20:48 +02:00
ceze88
98e03a2861 Fix drop issues in some cases where mobs don't drop loot 2023-07-16 20:29:00 +02:00
ceze88
8a31f3e0c2 Update method for the latest api method 2023-07-16 19:41:30 +02:00
ceze88
4955954bd6 Fix package name 2023-07-16 17:59:24 +02:00
dependabot[bot]
f24f250d36
Bump decentholograms from 2.2.5 to 2.8.3 (#58)
Bumps [decentholograms](https://github.com/DecentSoftware-eu/DecentHolograms) from 2.2.5 to 2.8.3.
- [Release notes](https://github.com/DecentSoftware-eu/DecentHolograms/releases)
- [Commits](https://github.com/DecentSoftware-eu/DecentHolograms/compare/2.2.5...2.8.3)

---
updated-dependencies:
- dependency-name: com.github.decentsoftware-eu:decentholograms
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-01 17:39:25 +02:00
dependabot[bot]
885c64435d
Bump inject-maven-plugin from 1.3 to 1.4 (#56)
Bumps [inject-maven-plugin](https://github.com/marcelmay/inject-maven-plugin) from 1.3 to 1.4.
- [Release notes](https://github.com/marcelmay/inject-maven-plugin/releases)
- [Commits](https://github.com/marcelmay/inject-maven-plugin/compare/inject-maven-plugin-1.3...inject-maven-plugin-1.4)

---
updated-dependencies:
- dependency-name: de.m3y.maven:inject-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-01 17:38:41 +02:00
Christian Koop
3575bd25b9
Use non-shaded class name when loading the H2 driver 2023-07-01 13:39:44 +02:00
Christian Koop
199840f845
Minor code style fixes/refactoring in H2Connector 2023-07-01 13:39:44 +02:00
Christian Koop
fafc4baaa3
Fixes username and password in H2Connector being mixed up 2023-07-01 13:39:44 +02:00
ceze88
2962a5cef8 Improve data loading to make it easier for plugins to create new data instances when deserialized 2023-07-01 09:54:09 +02:00
Christian Koop
1b2b2a41a3
Updates UltimateStacker-API dependency to use the new name+version 2023-06-30 22:53:43 +02:00
Christian Koop
8c80d86cc5
pom.xml: Adds some empty lines for clarification/grouping of shade arti. 2023-06-30 16:38:40 +02:00
Christian Koop
b8c14253ad
Fix version for UltimateStackerAPI dependency from 1.0 to 1.0.0 2023-06-30 16:17:56 +02:00
Christian Koop
2aa367c8e3
Merge branch 'feature/new-improved-database-system' into development 2023-06-29 17:14:28 +02:00
ceze88
84c7d1da4b Fix database converter, fix uuid data support. Adds test for database 2023-06-29 16:04:12 +02:00
Christian Koop
9ac1da984d
Renamed method argument l to location in LocationUtils#isInArea 2023-06-29 09:37:42 +02:00
ceze88
5d0b0409da Updates jooq to latest java 8 and hikaricp 2023-06-28 12:13:39 +02:00
ceze88
5d9cab5613 Merge branch 'development' into feature/new-improved-database-system
# Conflicts:
#	Core/pom.xml
#	Core/src/main/java/com/craftaro/core/SongodaPlugin.java
2023-06-28 11:58:09 +02:00
Christian Koop
2becc27bda
Include all of XSeries in the core instead of specific classes 2023-06-25 12:09:27 +02:00
Christian Koop
572cf3d805
Adds a lot of this. in GUI releated classes 2023-06-24 16:00:57 +02:00
Christian Koop
7ce74de993
Deprecates CompatibleSound in favor of XSound from the XSeries library 2023-06-24 15:58:38 +02:00
Christian Koop
b09338f78f
Adds a lot of this. in some files 2023-06-24 12:57:57 +02:00
Christian Koop
49eb5437e9
Updates item-nbt-api dependency to v2.11.3 2023-06-24 12:55:15 +02:00
Christian Koop
bac3c1b16e
Re-implemented CompatibleMaterial + changed usages to XMaterial 2023-06-20 20:22:29 +02:00
Christian Koop
d4fe43fd35
Adds XSeries's XMaterial class to the shaded dependencies 2023-06-18 01:01:28 +02:00
Christian Koop
fbf6531f08
Updates maven-shade-plugin from v3.3.0 to v3.5.0 2023-06-18 01:00:48 +02:00
Christian Koop
b6e1d0afca
Exclude license files etc. when shading third-party libraries 2023-06-18 01:00:23 +02:00
Christian Koop
9e73e2a87d
Fixes some code style issues 2023-06-18 00:33:07 +02:00
Christian Koop
3b92b69cc6
Fixes some code style issues 2023-06-17 16:34:50 +02:00
Christian Koop
3203e4b799
Deprecate some utility classes that still need some additional work 2023-06-17 16:31:13 +02:00
Christian Koop
f1fa34f891
Deprecates most parts of NumberUtils and refactors #isInt(String)
Trying to parse an empty or null String throws an `NumberFormatException` so we don't need that check.
2023-06-17 16:30:27 +02:00
Christian Koop
24007b5d17
Slight refactor of PlayerUtils and marking some methods as Deprecated
The Deprecations need to be taken care of at a later point in time.
Most methods do have a strong use-case in relation to commands and should be placed
in a more appropriate class.
2023-06-17 16:30:27 +02:00
Christian Koop
f348ddef45
Deprecate some unused or no-longer-needed utility classes 2023-06-17 16:30:27 +02:00
Christian Koop
c43bc093cc
Replace EntityUtils with new NmsEntity implementation and deprecate it 2023-06-17 15:45:23 +02:00
Christian Koop
4c32936367
Fix package path used in SongodaCore#hasShading 2023-06-17 13:35:19 +02:00
Christian Koop
bba24097fd
Rename SongodaCoreConstants into CraftaroCoreConstants and update them 2023-06-17 13:06:57 +02:00
ceze88
ee9d6016bf
Big changes to the database system
This a modified version of the original commit b2180b0c73.

I changed/removed:
* project version bump (a lot of unrealated file changes, wrong version in regards to breaking changes)
* Hacky changes to the NMS class
* Reverted changes to SSpawner (We want to keep the class variables final
and there doesn't seem to be a big advantage in overwriting basically the whole classe's content
when you could just create a new instance instead, as intended)
* Commit name (old name was `(changes will be in next commit)`)
2023-06-11 12:55:04 +02:00
Christian Koop
421e515d85
Bump CraftaroCore version to v3.0.0-SNAPSHOT 2023-06-11 00:37:11 +02:00
Christian Koop
636775bbef
Rename Maven modules from SongodaCore to CraftaroCore 2023-06-11 00:37:11 +02:00
Christian Koop
e8639f3540
Fix forgotten package name changes
Forgotten in a33da058e29e4ed1ee018b8d51f503e07547d18a
2023-06-11 00:37:11 +02:00
Christian Koop
dd4a7bd04e
Removes pitest as a maven plugin
It is used for mutation testing but realistically we don't even write that many tests.
Just adds complexity and because it is not often used, causes trouble when it hasn't been touched for months/years
2023-06-11 00:37:11 +02:00
Christian Koop
5da3769a47
Move every class from com.songoda package to com.craftaro 2023-06-11 00:37:11 +02:00
Christian Koop
f66964b2ee
Refactor Nms class to be more readable and make it final 2023-06-10 22:14:54 +02:00
Christian Koop
1e0de3d844
If the product's license check fails, periodically broadcast a message 2023-06-09 15:20:33 +02:00
Christian Koop
d0abbf26ec
Don't use Apache commons-io to read HTTP response body bytes
At least in Spigot 1.19 it is not available by default - That much we can do ourselves in that case.
2023-06-09 15:20:33 +02:00
Christian Koop
5f02c06ce8
Bump core revision from 9 to 10
To make sure the Core with the `/craftaro license` command wins the 'newest-core-battle'
2023-06-09 15:20:33 +02:00
Christian Koop
f8a9e81388
Improve colors and formatting for /craftaro license command 2023-06-09 15:20:33 +02:00
Christian Koop
3f89267e8e
Don't fully shutdown the plugin when license verification fails
The goal here is to keep the plugin enabled and initialize the Core.
This is needed for the `/craftaro license` command to work etc.

Sadly this also means other plugins checking for the plugin being the
(including the `/plugins` command), report the plugin as enabled
and seemingly ready (Although the plugin's API is not).
2023-06-09 15:20:33 +02:00
Christian Koop
1998fd7ff9
Remove broken command '/craftaro myip`
The API endpoint doesn't exist anymore.
The command is part of the old SongodaAuth license system.
2023-06-09 15:20:33 +02:00
Christian Koop
c6d688b6b7
Implements new Craftaro Product Verification Flows replacing SongodaAuth 2023-06-09 15:20:33 +02:00
Christian Koop
eac02d51fe
Removes org.yaml.snakeyaml as shaded dependency
It is already included in Spigot. Probably forgot to revert this with c725ea69d6.

This causes weird Exceptions/Errors in Folia (and/or Paper?).
2023-05-18 19:17:47 +02:00
ceze88
755124c070 Update UltimateStacker hook 2023-05-18 19:08:44 +02:00
ceze88
624221c532 Update UltimateStacker version 2023-05-18 19:08:33 +02:00
Christian Koop
9c4923cd42
Release v2.6.22
I'm creating this release to push the GitHub Actions and Dependabot changes to the main branch.
Dependabot should find at least 2 outdated actions dependencies and create a PR for them.


Please check #47 for a list of *most* changes.
2023-05-07 15:19:04 +02:00
Christian Koop
3e233cf021
Revert the project's version back to '2.6.21' 2023-05-06 22:54:50 +02:00
Christian Koop
5e21ac9424
Revert deletion of NmsManager, deprecate it and have it use the new one 2023-05-06 22:44:38 +02:00
Christian Koop
17780fffdc
Introduce constants GitHubProjectURL+ProjectName in SongodaCoreConstants 2023-05-06 22:44:38 +02:00
Christian Koop
3722ebb46a
Fix a couple compile errors after a lot of reverts and merges 2023-05-06 22:44:38 +02:00
Christian Koop
b6a4198a60
Revert "Version v3.0.0-SNAPSHOT"
This reverts commit a06d27ab90.
2023-05-06 22:44:38 +02:00
Christian Koop
5e093558a4
Deprecates BlockUtils#updateAdjacentComparators(Location) 2023-05-06 22:44:38 +02:00
Christian Koop
50d5784da8
Partially reverts "Replace #updateAdjacentComparators implementation(+ move to NMS modules)"
This partially reverts commit 3d20f439e1.
2023-05-06 22:44:38 +02:00
Christian Koop
dc82a6ba5c
Deprecates BlockUtils#setBlockFast methods 2023-05-06 22:44:38 +02:00
Christian Koop
1240c75bfa
Partially reverts "Replace #setBlockFast implementation and move into NMS modules"
This partially reverts commit 43148032a2.
2023-05-06 22:44:38 +02:00
Christian Koop
ad8f8517a7
Deprecates SWorldBorder class
Related to:
* 71502be7d0a8978ede443b43c207c932f550730d
* 9d7026ec27
2023-05-06 22:44:38 +02:00
Christian Koop
426e786b49
Partially reverts "Replace SWorldBorder implementation and move it into NMS modules"
This partially reverts commit 9d7026ec27.
2023-05-06 22:44:38 +02:00
Christian Koop
7c09845789
Revert "Remove overloading WorldCore#getSpawner(CreatureSpawner)"
This reverts commit 1cd96b10c5.
2023-05-06 22:44:38 +02:00
Christian Koop
c725ea69d6
Revert all the SongodaYamlConfig related commits
Revert "Ensures usage of UTF-8 in SongodaYamlConfig"

This reverts commit 339a4d6f6c.

Revert "Improve test coverage + stability of configuration.yaml/songoda classes"

This reverts commit ef6c37b80c.

Revert "Adds ConfigEntry#withDefaultValue for easier chaining"

This reverts commit 88e28689f7.

Revert "Code cleanup (rename e->ex in catch; better type for #withUpgradeStep)"

This reverts commit 7eff3c86ec.

Revert "Rename constant into upper case to match code conventions"

This reverts commit 4d194ed92b.

Revert "Fix typo in JavaDoc"

This reverts commit 0b2a253014.

Revert "Makes SongodaYamlConfig#cannotCreateBackupCopyExceptionPrefix static"

This reverts commit 8e91cc18eb.

Revert "Make unit tests in LocaleFileManagerTest deterministic"

This reverts commit 67a69e34e8.

Revert "Add unit test for SongodaYamlConfig persisting comments on key-upgrades"

This reverts commit d710b2d2d5.

Revert "Improve temporary file deletion in YamlConfig and FileManager tests"

This reverts commit 02330b5ca7.

Revert "Adds hyphen before timestamp in file name, when creating backup YamlCfg"

This reverts commit f8b3942de2.

Revert "Fix YamlConfiguration not dumping comments"

This reverts commit e7da328dc6.

Revert "Provisional first implementation of the new localization system"

This reverts commit b168ad0738.

Revert "Fix error handling of SongodaYamlConfig#load(Reader)"

This reverts commit 163e4d9eaf.

Partially reverts "Adds some deprecation notices to configuration.editor classes"

This partially reverts commit eea951ecc6.

Revert "Redo ConfigEntry abstraction"

This reverts commit 20b44327e0.

Revert "Migrate CustomizableGui from old Config to SongodaYamlConfig"

This reverts commit d5ddde3e08.

Revert "Adds SongodaYamlConfig#getAsEntry(String) for convenience"

This reverts commit 20b7a353b8.

Revert "Add contract to `ConfigEntry#getString(String)` for non-null-argument"

This reverts commit 78b6039d39.

Revert "Adds getter to ConfigEntry for List<String>"

This reverts commit 3a09c19dbb.

Revert "Remove usage of Locale classes"

This reverts commit da3c89450e.

Revert "Mark overwritten and empty config methods in SongodaPlugin as deprecated"

This reverts commit 73685b62dd.

Revert "Adjust log levels in SongodaYamlConfig"

This reverts commit 7ef00bb8f9.

Revert "Fix SongodaYamlConfig not creating parent directory when saving"

This reverts commit b0f006aed0.

Revert "Fix SongodaYamlConfigTest leaving created backup files in tmp dir"

This reverts commit c9a48387de.

Revert "Remove Config related methods in SongodaPlugin"

This reverts commit fce5c5c6a1.

Revert "Introduce new SongodaYamlConfig and ConfigEntry classes"

This reverts commit eb10b3f70a.

Revert "Fix YamlConfiguration dumping null values and empty tree nodes"

This reverts commit 02ab8d4bb2.

Revert "Fix `YamlConfiruration#getKeys("")` not returning root node keys"

This reverts commit 885cc9a87e.

Revert "Fix exception on loading empty file in YamlConfiguration"

This reverts commit 2683bc12c0.

Revert "Make YamlConfiguration insertion-sorted"

This reverts commit 2262652577.

Revert "Rename `IConfiguration#getOrDefault` to `#getOr`"

This reverts commit f6e207cdda.

Revert "Adds Enum support to YamlConfiguration class (#41)"

This reverts commit 41bd5c633a.

Revert "Removes the default implementations for #save(File) and #load(File)"

This reverts commit 8f15df3601.

Revert "Replace Songoda's YAML Configuration wrapper with an own implementation"

This reverts commit 6d6fa7210a.
2023-05-06 22:44:38 +02:00
Christian Koop
748f10b77b
Merge branch 'development' into development-v3 2023-05-06 20:17:35 +02:00
Christian Koop
0a0848c857
Release v2.6.21 2023-04-29 12:37:40 +02:00
Christian Koop
06761c001c
Fix plugin cmd list displayed in Action Bar instead of the chat 1.19.3+
The boolean flag determines 'whether the message is an actionbar or chat message'.
We want to have it set to `false` here.

Reference:
https://wiki.vg/index.php?title=Protocol&oldid=18120#System_Chat_Message
2023-04-29 11:56:04 +02:00
Christian Koop
7a7d2e8b97
Release v2.6.20 2023-04-22 16:13:07 +02:00
Christian Koop
9361fad0bf
Deprecate BlockUtils and BlockUtilsModern classes 2023-04-22 15:18:33 +02:00
Christian Koop
e21db58a67
Reimplement BlockUtils#updateAdjacentComparators in WorldCore
The implementation broke in 1.19.4 mid-version.
Fixes `java.lang.NoSuchMethodException: org.bukkit.craftbukkit.v1_19_R3.CraftChunk.getHandle()`


Related commit: a3e73be1aa
2023-04-19 21:59:13 +02:00
Christian Koop
57f9f1f911
Fix coreVersion in SongodaCore class not being the correct release 2023-04-13 11:51:14 +02:00
Christian Koop
177ecb36e5
Release v2.6.19 2023-04-13 11:48:55 +02:00
Christian Koop
37a9ee8868
Adds missing commands to list when console is running songoda command 2023-04-13 11:35:19 +02:00
Christian Koop
c34c8faa9c
Fix wrong permission configured for SongodaCoreUUIDCommand 2023-04-13 11:23:05 +02:00
Christian Koop
b9293079e0
Fix broken Wiki-URL in CustomizableGui
The Wiki has moved/changed and is not redirecting properly sadly
2023-04-13 11:22:43 +02:00
Christian Koop
2730b91598
Have songoda-Command have 'craftaro' as alias and change wording to that
Not having the actuall command change allows of other plugins *finding* that command
in that way means not introducing a breaking change by accident ^^

+ It's very hacky the way I did it but tbh... Core v3 is somewhat around the corner anyways
2023-04-13 11:22:04 +02:00
Christian Koop
7c4e967dd8
Changes *some* Songoda wording to Craftaro
I don't want to introduce too much confusion or breaking changes
2023-04-13 11:18:12 +02:00
ceze88
1455cf2d1c Fix enchant book loot 2023-04-11 19:23:05 +02:00
ceze88
3dd3a31f25 Add coordinate placeholders to loot commands 2023-04-07 20:46:14 +02:00
Christian Koop
824f674dcd
Change order of IP and UUID in 'license not found' message to match GUI
The marketplace first asks for the UUID - I changed the order in the message to match that order.
2023-04-06 10:06:58 +02:00
Christian Koop
e33848adc5
Release v2.6.19-DEV 2023-03-29 21:16:28 +02:00
Christian Koop
65f606ee83
Refactor /songoda diag command and change output formatting a bit
This should make reading the version information displayed easier.
No more confusing the plugin version vs. the core version.

Additionally fixed `Mb` to `MiB`.
2023-03-29 19:22:09 +02:00
Christian Koop
140c59ffa2
Merge branch 'development' into development-v3 2023-03-29 18:49:25 +02:00
Christian Koop
07374fdbfd
Configures the new v1_19_R3 NMS module in the NmsManager class 2023-03-29 18:22:13 +02:00
Christian Koop
fafcf28e0b
Updates dependency item-nbt-api to v2.11.2 for Spigot 1.19.4 support
From the changelog:
>Add 1.19.4 as officially supported (2.11.1 will work fine on 1.19.4, but show a warning that it doesn't know about this version)
2023-03-29 18:21:41 +02:00
Christian Koop
6d8c3beeb3
Merge branch 'development' into development-v3 2023-03-16 19:07:54 +01:00
Christian Koop
52f6c42266
Adds NMS Module v1_19_R3 for Spigot 1.19.4 compatibility 2023-03-16 09:46:40 +01:00
Christian Koop
a79677d261
Updates Lands-ProtectionHook to use v6 of the API
The API changed and we are 2 major versions behind
This drops support for outdated version of *Lands* and re-adds support for the latest version.
2023-03-09 15:53:21 +01:00
Christian Koop
5199043a4b
Minor code refractoring on SongodaAuth
Just trying to make it a bit more readable and easier to understand at a glance.
2023-03-04 13:08:16 +01:00
Christian Koop
6145021ecb
Remove unused imports in SongodaAuth and apply code formatting 2023-03-04 12:47:53 +01:00
Christian Koop
d9586cfe86
Slightly changes wording of 'missing-license' message
+ small refactoring – Putting the *expesive* method calls outside the string into variables
to easier see them, when trying to understand the code and the need
for its own thread for just printing some messages to  the console.
2023-03-04 12:38:33 +01:00
Christian Koop
ca13e8b26e
Prints 'missing-license' message in the console as one long message
This prevents fragmentation of the idividual lines. `#getIP()` can take a couple of seconds
and because it is executed outside of the main-thread, other message can be printed bevore
the IP address and UUID are ready to be printed.
2023-03-04 12:36:20 +01:00
ceze88
386ff209a7 Release v2.6.18 2023-01-25 16:02:44 +01:00
ceze88
7c02457108 Ignore self compiled plugins 2023-01-15 12:23:56 +01:00