TaterLib

TaterLib

Mod and plugin

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

Server LibraryTechnologyUtility

693 downloads
2 followers
Created9 months ago
Updated2 months ago

Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.

TaterLib 1.9.4-1.1.0

Changelog

  • 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 ProxyPlayers, 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

Dependencies

Files

taterlib-1.9.4-1.1.0.jar(9.23 MiB) Primary Download

External resources



Project members

p0t4t0sandwich

Owner


Technical information

Project ID