COWMODSКаталог модов

TaterLib

A cross API code library for various generalizations used in the Tater* plugins

6,5 тыс.6обновлён 27 февр. 2024 г.
БиблиотекиТехнологииУтилиты

Описание

TaterLib

License Github Github Issues Discord wakatime

A cross API code library that allows developers to write code that works across multiple modding platforms, and across a wide range of Minecraft versions, all with one JAR file. If TaterLib runs on it, so can your plugin/mod.

Please note, some abstractions may not be fully implemented yet, and some may be missing. If you're looking for a specific abstraction/game event, please open an issue, and we'll get to it as soon as possible, or feel free to open a PR with an implementation. Contributions are always welcome!

Let's cut to the chase, why should you use and/or contribute to TaterLib? Well, let's say you have a mod/plugin that you want to port to a different modding API. You could go through the laborious task of implementing all the events, commands, etc. on each platform and create all your own cool fancy abstractions for each game object, or you could use TaterLib and save yourself a lot of time. (which is why I started this project in the first place)

There's two ways to use TaterLib, you can depend on the general API, then implement any missing features yourself on each platform, or if something's missing, you can start a PR with either a basic or full implementation, and we can improve TaterLib and save you a lot of time in the future. (a bit of a win-win)

Link to our support: Discord

Download

Github Releases

Spigot Hangar CurseForge

Modrinth CurseForge Sponge

BuiltByBit PolyMart Craftaro

Maven Snapshots RepoJenkins Dev Build

Maven RepoJenkins Builds

Adding to your project

repositories {
    maven {
        name = 'NeuralNexus'
        url = 'https://maven.neuralnexus.dev/releases'
    }
}

dependencies {
    compileOnly('dev.neuralnexus:taterlib-api:<version>')
}

There's also a snapshot repository available at https://maven.neuralnexus.dev/repository/snapshots

Compatibility Cheatsheet

TaterLib supports: Bukkit, BungeeCord, Fabric, Forge, Sponge, and Velocity

General notes:

  • No Fabric on 1.13
  • No Fabric/Forge below 1.7.10
Server typeVersionsJar Name
1.20.x1.20-1.20.4TaterLib-1.20.x-<version>.jar
1.19.41.19.4TaterLib-1.19.4-<version>.jar
1.19.21.19.2TaterLib-1.19.2-<version>.jar
1.191.19TaterLib-1.19-<version>.jar
1.18.21.18.2TaterLib-1.18.2-<version>.jar
1.181.18TaterLib-1.18-<version>.jar
1.171.17-1.17.1TaterLib-1.17-<version>.jar
1.161.16-1.16.5TaterLib-1.16-<version>.jar
1.151.15-1.15.2TaterLib-1.15-<version>.jar
1.141.14-1.14.3TaterLib-1.14-<version>.jar
1.131.13-1.13.2TaterLib-1.13-<version>.jar
1.121.12-1.12.2TaterLib-1.12-<version>.jar
1.111.11-1.11.2TaterLib-1.11-<version>.jar
1.101.10-1.10.2TaterLib-1.10-<version>.jar
1.91.9-1.9.4TaterLib-1.9-<version>.jar
1.81.8-1.8.8TaterLib-1.8-<version>.jar
1.71.7-1.7.10TaterLib-1.7.10-<version>.jar
1.6.41.6.4TaterLib-1.6.4-<version>.jar
1.2.51.2.5TaterLib-1.2.5-<version>.jar
b1.7.3b1.7.3TaterLib-b1.7.3-<version>.jar

Dependencies

Optional Dependencies

  • LuckPerms - For permissions/prefix/suffix support

Commands and Permissions

CommandPermissionDescription
/taterlib versiontaterlib.command.versionGet the TaterLib version
/taterlib reloadtaterlib.command.reloadReload TaterLib config
/taterlib dumptaterlib.command.dumpDump TaterLib info
/taterlib fulldumptaterlib.command.fulldumpDump TaterLib info

Projects that use TaterLib

Feel free to open a PR to add your plugin/mod to this list!

Metrics

Bukkit

image

BungeeCord

image

Sponge

image

Velocity

image

Последние версии

Все версии →
release

TaterLib 1.20.x-1.1.0

1.20.x-1.1.0
27 февр. 2024 г.918Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4bukkit, bungeecord, fabric, folia, forge, neoforge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.19.4-1.1.0

1.19.4-1.1.0
27 февр. 2024 г.182Minecraft: 1.19.4bukkit, bungeecord, fabric, folia, forge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.19.2-1.1.0

1.19.2-1.1.0
27 февр. 2024 г.216Minecraft: 1.19.2, 1.19.3bukkit, bungeecord, fabric, folia, forge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.19-1.1.0

1.19-1.1.0
27 февр. 2024 г.173Minecraft: 1.19, 1.19.1bukkit, bungeecord, fabric, folia, forge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.18.2-1.1.0

1.18.21.1.0
27 февр. 2024 г.194Minecraft: 1.18.2bukkit, bungeecord, fabric, forge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.18-1.1.0

1.18-1.1.0
27 февр. 2024 г.157Minecraft: 1.18, 1.18.1, 1.18.2bukkit, bungeecord, fabric, forge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.17-1.1.0

1.17-1.1.0
27 февр. 2024 г.149Minecraft: 1.17, 1.17.1bukkit, bungeecord, fabric, forge, paper, purpur, quilt, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.16-1.1.0

1.16-1.1.0
27 февр. 2024 г.210Minecraft: 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5bukkit, bungeecord, fabric, forge, paper, purpur, spigot, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.15-1.1.0

1.15-1.1.0
27 февр. 2024 г.160Minecraft: 1.15, 1.15.1, 1.15.2bukkit, bungeecord, fabric, forge, paper, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions
release

TaterLib 1.14-1.1.0

1.14-1.1.0
27 февр. 2024 г.147Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4bukkit, bungeecord, fabric, forge, paper, spigot, sponge, velocity, waterfall
Скачать
Что нового
- Fixes to Sponge8-11 component serialization - Fixed `SpongeEntity.getType` returning a properly formatted entity resource - Reworked the entire event system - Added `getEntity` to `AbstractEntity` implementations - Removed redundant event abstraction - Reworked TaterLib PlayerListener and reload command - Implemented `EntitySpawnEvent` for 1.7.10-b1.7.3 - Implemented rudimentary `PlayerDeathEvent` for b1.7.3 - Added support for NeoForge 1.20.2 - Removed the `...taterlib.{platform}.abstractions` package name - Renamed `...taterlib.{platform}.abstractions.events` to `...taterlib.{platform}.event.api` - Moved `...taterlib.{platform}.abstractions.item.*` to `...taterlib.{platform}.inventory` - Moved `...taterlib.{platform}.player.PlayerInventory` to `...taterlib.{platform}.inventory.PlayerInventory` - Removed the `Abstract` prefix from all common interfaces - Added the ability to set a player's prefix/suffix - Added numerical permission checks to `Player` for Forge/Fabric - Abstracted Brigadier commands - Abstracted simple commands - Simplified Plugin abstractions so depending on TaterLib is easier - Refactored TaterLib helper methods to be wrapped in the `TaterAPI` class - Added MinecraftVersion and ServerType enums. - Created `TaterAPI#isBrigadierSupported()` - Abstracted plugin/mod isLoaded checks - `Player` now inherits `Entity` - Added `Entity#teleport(Location)` and `Entity#teleport(Entity)` - Abstracted brigadier helper into a wrapper class - Implemented registering simple commands for Forge/Fabric - Updated database utils - Added `Server` abstraction and `TaterAPI#getServer()` - Ported to: - 1.20.4 - Bukkit 1.8.8, 1.13.2 - BungeeCord 1.4.7, 1.8, 1.12 - Fabric 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.12.2 - Forge 1.7.10, 1.8.9, 1.9.4, 1.10.2, 1.11.2, 1.18.2, 1.19.2, 1.19.4 - Sponge 4, 5 - Abstracted `ProxyPlayer`s, specifically adding a `connect` method - Added `Block` abstraction and `BlockBreakEvent` - Updated `Server` implementation and added `ProxyServer` for proxies - Added `ServerEvent#getServer()` - Fixes to `BukkitPlayerAdvancementEvent` - `getPlayer` was returning null - `getAdvancement` was returning the wrong string - Abstracted `TaterAPI#registerChannels(Set<String>)` into `RegisterPluginMessagesEvent` - Added `PluginEnableEvent` and `PluginDisableEvent` - Modified TaterAPIProvider to handle multiple API implementations simultaneously - Added basic hybrid API hooks: Arclight, Ketting, Magma, Mohist - Renamed `isPluginLoaded` to `isPluginModLoaded` and split it into `isPluginLoaded` and `isModLoaded`, while adding helper instantiations from hybrid hooks - Added `Server#broadcastMessage(String)` - Renamed path `dev.neuralnexus.taterlib.common` to `dev.neuralnexus.taterlib` to simplify imports - Improved the hook system to allow for multiple permission managers to be used simultaneously - Build system overhaul, no sketchy `build.sh` anymore - Added `GameMode` enum, `Player#getPing()`, `Player#getGameMode()` and `Player#setGameMode()` - Added `Sender#isPlayer()` - Fixed `Entity#teleport(Location)` and `Entity#teleport(Entity)` in cross-dimensional cases - Added `Player#getIPAddress()` - Created a custom loader implementation, to allow for better compatibility with hybrids, Sinytra Connector, and SpongeForge - Added `SpongeForge` server type - Added Brigadier support for Sponge and Bukkit - Renamed `Sender` to `CommandSender` - Split `Server` into `SimpleServer` and `ProxyServer` - Added some tests and more `MinecraftVersion` utilities - Renamed `Event` to `EventManager` and created a base `Event` interface - Added `Event#getName()` - Created generic event handler - Renamed `PluginMessageEvents` to `NetworkEvents` - Split out `SimplePlayer` and `ProxyPlayer` - Created `Connection` interface for kick/disconnect/ping/pluginMessage - Loader can now detect and register more plugin instances in multi-API environments - Added `ServerType.NEOFORGE_HYBRID` - Events should no longer register twice in multi-API environments - Pulled `CommonPluginEnableEvent` into the loader - Added `Damageable` and `LivingEntity` interfaces - Added dummy entity interfaces all set up for adding new Entity interfaces - Added `Player.allowFlight`/`canFly`/`isFlying`/`setFlying` - Added single-version support for `MinecraftVersion.parseRange` - Used configurate to create config system - Refactored TaterLib common logic into CommonModule, added TaterModuleLoader, and overall improved module support - Reformatted getters to be more idiomatic (e.g. `getInventory` -> `inventory`) - Refactor `Player.serverName` into `Player.server().name()` and add `Server#name()` - Added `Permissible` to `CommandSender`, refactored permission hooks to use `Permissible` - Added `ModInfo` and `PluginInfo` abstractions - Added `DumpInfo` and `FullDumpInfo`, along with the `/taterlib dump | fulldump` commands - Added bStats support for Bukkit, Bungee, Sponge, and Velocity - Added Arclight Fabric server type - Merged `ItemMeta` into `ItemStack` - Created player metadata API - Added `Server.currentTPS()`, `SimpleServer.getPlayer(String)`, and `SimpleServer.getPlayer(UUID)` - `PlayerServerSwitchEvent.toServer`/`fromServer` now return a `Server` rather than a `String` - Overhauled the `Inventory`/`PlayerInventory` interfaces - Created `World` and `ServerWorld` abstractions