Skip to content

Releases: saicone/rtag

Rtag 1.4.3

30 Oct 02:42
fd7a7fe
Compare
Choose a tag to compare

Additions

  • Support for servers without CraftBukkit relocation (see PaperMC announce).
  • Support for null tag on items.

Removed

  • Some unused checks in ItemObject.

Rtag 1.4.2

24 Sep 18:10
67ed86b
Compare
Choose a tag to compare

Additions

  • Old methods from EasyLookup class to avoid API breaks.

Bug Fixes

  • Fix chat component conversion between empty (json) strings.

Rtag 1.4.1

23 Sep 03:45
180809d
Compare
Choose a tag to compare

Additions

  • Support for Minecraft 1.20.2.
  • Support for mojang mapped servers.
  • Explicit number conversion for OptionalType.

Bug Fixes

  • Fix failed value conversion not being deleted from OptionalType#asCollection()

Changes

  • Item mirror instances now use floats for version comparision (better acurracy for material conversion between MC minor releases).

Rtag 1.4.0

25 Aug 14:36
cfdca40
Compare
Choose a tag to compare

Additions

  • EnchantmentTag#getEnchantment() to get Bukkit equivalent enchantment if exists.
  • ItemStack callback from SkullTexture to process the retrieved textured skull if it's obtained with player name or uuid.
  • RtagEntity#getAttributeValue() to get attribute values.
  • Pretty NBT formatter to get any NBT object as pretty string, json or component, you can also use a custom color palette.
  • Compatibility with any type of NBT object on TStreamTools operations (Using GZIP format or not).
  • TStream instances now can read any type of serialized object as bytes (useful to read objects from Base64 that use different serialization formats).
  • ItemTagStream instances now detect PaperMC serialized items to convert across versions.
  • Multiple methods to convert Minecraft data versions using ServerInstance class.
  • OptionalType#first() to get the first object from OptionalType (list, array or single object).
  • OptionalType#single() to get the OptionalType as single object instance.
  • #merge() and #deepMerge() methods to merge multiple paths into compounds.
  • #move() method to move an object from path to any path using Rtag or RtagEditor instances.
  • TagBase#size() and TagBase#clear() to handle any list or compound.

Bug Fixes

  • Fix RtagItem#addEnchantment() not saving enchantments properly.

Changes

  • The documentation is now instantly updated when new version is published.
  • RtagEditor#load() method returns the current type object.
  • The textured skulls from SkullTexture now are unique ItemStack objects.
  • Texture values from SkullTexture now are cached as String (less memory usage).
  • The plugin is now marked as Folia supported.

Rtag 1.3.2

07 Jun 19:46
317939c
Compare
Choose a tag to compare

Additions:

  • Support for Minecraft 1.20 and 1.20.1.

Rtag 1.3.1

16 May 17:26
b0059a2
Compare
Choose a tag to compare

Additions:

  • OptionalType#clear() to clear current object type (Map or Collection).
  • RtagItem#fixSerialization() to fix bad item caused by Bukkit serialization.

Bug Fixes

  • #1 (main): fix RtagEditor#get() conversion to Map of objects.

Changes:

  • Now OptionalType uses less specific conversion, like OptionalType#asCollection().

Rtag 1.3.0

18 Apr 13:45
344385a
Compare
Choose a tag to compare

Additions:

  • Support for Minecraft 1.19.4.
  • Functional methods on RtagEditor instances to handle tags more easily.
  • Compatibility methods on RtagEditor instances like RtagItem#addEnchantment or RtagEntity#setAttributeBase.
  • Explicit conversion methods using OptionalType from #getOptional().
  • Support to save UUIDs and any object as tag without serializer.
  • Recursive search for reflected methods, so unreflection was removed for better readability.
  • Methods to handle EnchantmentTag enum.
  • TagList#setValue() and TagCompound#setValue() to override the actual value.
  • TagCompound#clear() to clear the provided NBTTagCompound tag.
  • Methods to check object instance on BlockObject, EntityObject, ItemObject and ChatComponent class.
  • NBT String and Map of objects support inside TStream instances.
  • Readable Map support inside ItemTagStream (Make item name and lore readable and viceversa).

Changes:

  • Now all the reflection usage throws unchecked exceptions.
  • General optimization for tag methods.
  • Now OptionalType can be iterated using for statement.

Rtag 1.2.1

09 Dec 18:03
3c2e98a
Compare
Choose a tag to compare

Additions

  • Support for Minecraft 1.19.3.
  • ItemMaterialTag#getValidMaterial() method to get valid material id for current server version.

Bug Fixes

  • Fix reflected methods in 1.17 servers.

Rtag 1.2.0

09 Jun 17:17
238b359
Compare
Choose a tag to compare

Additions

  • Support for Minecraft 1.19.
  • TagBase#getTypeId(Object) method to get NBT object ID.
  • Boolean object compatibility.
  • Support for player name and UUID in SkullTexture#getTexturedHead(String).
  • TagList#getValue() method to get the NBTBase list inside NBTTagList.
  • TagList#contains() method to check the existence of NBTBase inside NBTTagList.
  • TagList#clone() & TagBase#clone() method for tags.
  • RtagMirror#clone() method to clone any NBT object type.
  • String compatibility to construct NBTTagCompound via TagCompound#newTag(String) method.
  • TagCompound#getJson() method to get NBTTagCompound as JSON String.

Changes

  • TagList now can be created with any type List.
  • TagCompound#set() now return the added value.
  • Rtag now extends RtagMirror.
  • TagCompound#newTag() & TagList#newTag() now requires RtagMirror instance instead of Rtag.

Breaking Changes

  • TileBridge & TileTag classes was merged into BlockObject class.
  • EntityBridge & EntityTag classes was merged into EntityObject class.
  • ItemBridge & ItemTag classes was merged into ItemObject class.

Rtag 1.1.0

17 Mar 17:09
Compare
Choose a tag to compare
  • RtagEditor now have a safe option to get values with #getOptional().