Commit Graph

163 Commits

Author SHA1 Message Date
Christian Koop
82e8dd03c0
Extends ClientVersion mapping for 1.18, 1.19 and 1.20 2023-06-18 00:33:07 +02:00
Christian Koop
b00660942b
Adds some more server versions to Compatibility ServerVersion class 2023-06-18 00:33:07 +02:00
Christian Koop
3afc2aa6a4
Fixes some code style issues in Compatibility module 2023-06-18 00:33:07 +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
5da3769a47
Move every class from com.songoda package to com.craftaro 2023-06-11 00:37:11 +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
b6a4198a60
Revert "Version v3.0.0-SNAPSHOT"
This reverts commit a06d27ab90.
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
7a7d2e8b97
Release v2.6.20 2023-04-22 16:13:07 +02:00
Christian Koop
8d95084137
Adds missing Spawn Eggs to CompatibleMaterial, added in Minecraft 1.19.3
fixes #46
2023-04-22 16:13:07 +02:00
Christian Koop
eb76ba47ee
Deprecate the ClassMapping and MethodMapping classes
They are a huge pain to maintain... I should have put a stronger word against this when it got added...
2023-04-19 21:59:13 +02:00
Christian Koop
177ecb36e5
Release v2.6.19 2023-04-13 11:48:55 +02:00
Christian Koop
e33848adc5
Release v2.6.19-DEV 2023-03-29 21:16:28 +02:00
ceze88
386ff209a7 Release v2.6.18 2023-01-25 16:02:44 +01:00
Christian Koop
c29c4a5b09
Release v2.6.18-DEV 2023-01-11 22:00:36 +01:00
Christian Koop
396f3aefb8
Merge branch 'development' into development-v3 2022-12-26 21:03:31 +01:00
Christian Koop
1a911ee085
Release v2.6.17 2022-12-26 19:59:02 +01:00
Christian Koop
bba5fa5f3e
Adds additional information for deprecations as JavaDocs 2022-11-26 20:24:14 +01:00
Christian Koop
404a94c307
Move from MockBukkit to Mockito in automated tests
MockBukkit is not able to mock all of Bukkit's API
and broke with a change in PaperMC causing all our
current tests to fail. It is also version dependant.

But with Mockito you have to do everything manually right now.
No helping functionality (like creating a new mock player which automatically
will be returned in `Bukkit#getOnlinePlayers()`)

I took this opportunity to learn a bit about Mocking in Bukkit
and decided on Mockito.
It looks like we could easily write our own MockBukkit
alternative in the future.

I am not really happy how `Mockito#verify` works tho.
I find it annoying not to be able to directly assert
on the calls made to a method.
You have to create an InOrder instance first for the
mock and in the end verify with `Mockito#times(0)`/`Mockito#never()`
and `Mockito#any()` for each argument a method takes, to assert a total of n calls.
2022-11-15 22:49:09 +01:00
Christian Koop
6aa9178321
Fix ItemUtils#applyRandomEnchants in Minecraft 1.19
The method needs a `RandomSource` instead of a normal Java `Random`.
The method reference has been updated but updating
its usage has been forgotten.

Sadly I do not really know where to properly
get an `RandomSource` instance without instanciating it myself.
2022-11-07 22:29:40 +01:00
Christian Koop
500ac98f84
Release 2.6.17-SNAPSHOT 2022-10-26 21:59:06 +02:00
Christian Koop
e3b275b40d
Release v2.6.16 2022-09-04 19:31:58 +02:00
BuildTools
9c47056b46 Version 2.6.16-DEV - Support for 1.19.1/2 spawners. 2022-09-03 01:03:27 -04:00
Christian Koop
b07f67e0d6
Unify and cleanup all pom.xml-files
This also moves all the dependency declarations of the NMS modules
from the Core-Module to its own NMS-Module.
This module might get merged with the NMS-API module in the future.
2022-08-28 19:13:59 +02:00
Christian Koop
5c15d66415
Deprecate MethodMapping class
I do not intend to update it to support another version.
All implementations using it should be recoded and use the NMS modules instead if needed
2022-08-27 22:43:07 +02:00
Christian Koop
72c96bc09a
Adds Contract annotation to CompatibleMaterial#getMaterial 2022-08-21 20:39:50 +02:00
Christian Koop
a06d27ab90
Version v3.0.0-SNAPSHOT 2022-08-19 10:06:58 +02:00
Christian Koop
61b784b3e8
Merge branch 'development' into development-v3 2022-08-18 22:57:46 +02:00
Christian Koop
b568d51151
Release v2.6.15-DEV 2022-08-08 23:12:06 +02:00
Christian Koop
5e1f1b802c
Introduce new CI/CD pipeline using GitHub Actions
A lot is happening in this release!

tl;dr: GitHub Actions runs tests, compiles the project, signs the jar files, deploys them to the Maven repo; Pushing a git tag issues a release instead of snapshot deployment; -SNAPSHOT is always added to the version otherwise; Core Version is now injected by maven instead of manually updating it in one of the classes


We now use GitHub Actions to run automated tests, compile the project, sign the resulting jar files, and always deploy a version to the Maven repo.
By default, a snapshot release is published but by creating a git tag, a release deploy can be triggered.

Additionally the Core version is not manually updated in one of the classes but injected after compiling it.
I think I found the most stable and easiest way to do this in maven,
although I'd have wished for it to be easier and maybe not after the class file has already been created.
2022-08-07 19:33:38 +02:00
Fernando Pettinelli
1ab918a32e Version 2.6.14-DEV 2022-07-13 01:50:25 -04:00
Christian Koop
269aaa99b8
Update MethodMapping class for Minecraft 1.19 2022-06-28 12:19:12 +02:00
Fernando Pettinelli
2929c628ed 2.6.13 - Added Apache Commons Lang3 and Text. More 1.19 fixes. 2022-06-26 12:27:20 -04:00
Christian Koop
8310541b91
Fix ServerVersion#UNKNOWN being treated like a normal version
This is required for unit tests (especially the `Bukkit#getServer != null` check).
But it seems faulty to even trat an unknown version like a normal one.
2022-06-26 01:39:39 +02:00
Fernando Pettinelli
b110a69285 1.19 fixes 2022-06-25 17:59:06 -04:00
Christian Koop
2272fe7b97
Release v2.6.13-DEV 2022-06-20 17:27:01 +02:00
Christian Koop
88b0b03326
Add 1.19 Materials to CompatibleMaterial 2022-06-20 14:52:18 +02:00
Christian Koop
7ca814c747
Release v2.6.12 2022-03-18 14:47:22 +01:00
Christian Koop
a42d03aec3
Fixes empty slots in ConfigEditorGui item select 2022-03-18 14:33:50 +01:00
Christian Koop
a0050aadd6
Adds Minecraft 1.18.2 support 2022-03-18 14:33:50 +01:00
Christian Koop
22d0c395e4
Fixes typo in MethodMapping class 2022-03-18 14:33:50 +01:00
ItsAZZA
33ef151c07 Adds missing Music Disc Otherside 2022-02-13 21:12:10 +02:00
Christian Koop
c9f7e73b8b
Adds MethodMapping for Chunk#getWorld in Spigot 1.17
This fixes NPEs in `BlockUtils#updateAdjacentComparators` as a method named `D` exists but returns void and not the needed World.
2022-02-10 18:56:42 +01:00
Christian Koop
f887ba6c48
Version 2.6.11 2022-01-21 17:44:18 +01:00
Fernando Pettinelli
1514fd4fae Version 2.6.10 2021-12-22 18:07:14 -03:00
Fernando Pettinelli
de20a5b73c Version 2.6.9 2021-12-20 19:29:28 -03:00
Christian Koop
edde5f9963
Version 2.6.8 2021-12-18 18:18:47 +01:00
Christian Koop
b89c14860c
Fix some more MethodMapping related stuff (NMS) 2021-12-18 18:16:44 +01:00
Christian Koop
331f77b65d
Version 2.6.7 2021-12-14 21:01:27 +01:00
Christian Koop
fbb61cf9f6
Further usage of MethodMapping and ClassMapping classes 2021-12-14 20:55:46 +01:00
Christian Koop
9b5eda60b3
Updates BlockUtils to use MethodMapping and ClassMapping 2021-12-13 18:00:36 +01:00
Christian Koop
f9b2562d3d
Version 2.6.6 2021-12-11 15:37:21 +01:00
Christian Koop
b033c059a3
Fix MethodMapping and its usage in ItemUtils 2021-12-11 15:00:24 +01:00
Christian Koop
f6caad3983
Version 2.6.5 2021-12-10 19:46:24 +01:00
Christian Koop
070f1adee7
Fixes CompatibleBiome#isCompatible and #getBiome
`#isCompatible` always returned true and `#getBiome` could result in an Exception because of biomes not having any version information configured (silencing it should not be the way to go but Minecraft 1.18 updates \o/)
2021-12-10 19:35:30 +01:00
Christian Koop
7f055c4391
MethodMapping: Introduces a way to check another name if first try fails
Don't like the method ignoring the frickin exception but for now logging it is fine too I guess
2021-12-10 19:14:11 +01:00
Christian Koop
354e7ea2f0
Version 2.6.4 2021-12-10 18:13:22 +01:00
Christian Koop
75db60efae
Hotfix CompatibleBiome class in Minecraft 1.18
It still has the same problems as the current implementation but at least it doesn't throw an exception
2021-12-09 22:16:28 +01:00
Christian Koop
e521e4930f
Make SWorldBorder compatible with Minecraft 1.18 2021-12-09 22:05:53 +01:00
Christian Koop
f8aed3c87e
Version 2.6.3 2021-12-09 04:52:24 +01:00
Christian Koop
cd34b24517
Version 2.6.2 2021-12-07 17:19:13 +01:00
Brianna
d7010d7483 Method mapping. 2021-12-06 11:12:59 -06:00
Christian Koop
776ead9870
Version 2.6.1 2021-12-02 20:30:26 +01:00
Christian Koop
6c8c8a3a29
Introduces a cross-version way to send packets via NMSManager 2021-12-02 20:29:28 +01:00
Christian Koop
4f5300f44c
Version 2.6.0 2021-12-02 16:42:09 +01:00
Christian Koop
1c441e755a
Restore compatibility after commit reverts
I'm currently reverting some breaking changes so I can introduce them later and some imports broke in future commits. This fixes them


One of the related commits (may not exist anymore): 3d328df7ad
2021-12-02 16:42:09 +01:00
Christian Koop
6a3fe4691f
CompatibleParticleHandler: Minor code cleanup 2021-12-02 16:33:24 +01:00
Christian Koop
5da52ca60e
Update dependency spigot-api to 1.18 2021-12-02 16:33:24 +01:00
Christian Koop
4335022c3e
CompatibleSound: Minor code cleanup
The whole class needs some work and should probably be used similar to `CompatibleMaterial`
2021-12-02 16:33:24 +01:00
Christian Koop
f8d218ff3d
CompatibleMaterial: Adds missing materials to some property methods
For `#isFuel`, `#isItem`, and `#isInteractable`
2021-12-02 16:33:24 +01:00
Christian Koop
7d255685ed
ServerProject and ServerVersion: Adds support for BukkitMock 2021-12-02 16:32:48 +01:00
Christian Koop
fd2809f982
Version 2.5.14 2021-11-01 22:30:51 +01:00
Christian Koop
bfe329c73b
Adds CraftMagicNumbers to the class mappings 2021-11-01 22:24:46 +01:00
Christian Koop
93fbc6463f
General code cleanup [DEV-2]
Hopefully no breaking changes
2021-10-30 14:10:57 +02:00
Christian Koop
97feaf3b9c
Removes @author and @since from class comments
These kind of information can easily be found in git/on GitHub
2021-10-30 14:10:22 +02:00
Christian Koop
39bdd862fb
Apply new code style [DEV-2] 2021-10-30 14:10:22 +02:00
Christian Koop
a23224dbe2
ClientVersion: Fixes default version trying to return the server version 2021-10-30 14:09:45 +02:00
Christian Koop
04bc2145a1
ClientVersion: Adds 1.17.1 protocol version 2021-10-30 14:09:08 +02:00
Christian Koop
749c3a9a28
Version 2.5.13 2021-10-27 19:51:54 +02:00
Christian Koop
aa587361ed
Version 2.5.13-SNAPSHOT 2021-10-26 23:05:54 +02:00
Christian Koop
e528f51388
Replace dependency viaversion-bukkit with latest viaversion-api 2021-10-26 21:19:05 +02:00
Fernando Pettinelli
fb8d38f54b Version 2.5.12 2021-10-16 21:37:26 -03:00
Fernando Pettinelli
820b7ffbd3 Version 2.5.11 2021-09-30 13:03:36 -03:00
Fernando Pettinelli
133388ea87 Adds raw ores to the getBurnResult method, add isBrewingStandIngredient. 2021-09-30 13:02:12 -03:00
Fernando Pettinelli
de8bf59168 Add PIGLIN_BRUTE_SPAWN_EGG material. (This is the right one) 2021-08-29 16:04:59 -04:00
Christian Koop
5921be70bb
Version 2.5.9 2021-08-29 15:49:06 +02:00
Christian Koop
03e2360a98
Updated logging to mostly use java.util.logging.Logger [SD-8645] 2021-08-29 13:49:01 +02:00
Christian Koop
60ceac5eb6 Version 2.5.8 2021-07-08 17:50:13 +02:00
Christian Koop
6dbf806e7d EditorConfig 2021-07-08 15:37:37 +02:00
Christian Koop
a73ed7908e Update pom.xml files and project structure
* Should fix IntelliJ sometimes not finding classes
* Should make things easier to understand and maintain
* Rename `LICENSE.md` to `LICENSE`
2021-07-08 15:37:37 +02:00
Christian Koop
3bc35058ac
CompatibleMaterial: Add missing BLACKSTONE_SLAB 2021-07-05 11:48:10 +02:00
Fernando Pettinelli
e6398bca1f Version 2.5.7 2021-06-30 10:24:50 -04:00
Fernando Pettinelli
b53c4c8c87 Renamed GRASS_PATH to DIRT_PATH for 1.17. 2021-06-30 10:13:46 -04:00
Brianna
dddbc32459 version 2.5.6 2021-06-21 17:18:51 -05:00
Brianna
711125aa67 Added support for Worldborders in 1.17 2021-06-21 17:18:18 -05:00
Brianna
ebf0d06434 version 2.5.5 2021-06-13 18:08:18 -05:00