Commit Graph

60 Commits

Author SHA1 Message Date
dd30f02aa2 Drop Minecraft 1.9 support 2020-11-23 09:18:49 +01:00
bd57ea0728 Remove auto updater
- Removed the auto updater because Spiget is too unreliable these days.
2020-11-23 09:14:19 +01:00
2f57f0df59 Fix incorrect armored elytra creation
- No longer making "armored elytra"s out of non-elytra items.
2020-08-04 14:25:53 +02:00
163e6d22a2 Improve 1.16 support
- Netherite Armored Elytras now have 3 armor toughness to match netherite chestplates.
- Fixed missing "netherite" in the list of supported tiers in the translation file.
2020-06-30 15:10:15 +02:00
b29477fe4a Blacklist Spigot-758abbe
- Blacklisted version 758abbe of Spigot. This version contained an NBT-related bug that caused some serious issues. When loading the plugin on this version, the intialization process is aborted and you won't be able to craft or otherwise obtain any new ArmoredElytras.
2020-06-29 13:51:47 +02:00
e3efdfd83b Clean up 2020-06-29 13:04:25 +02:00
9ddc4f9f61 Add support for Netherite, improve tier retrieval
- Added support for creation and general usage of NETHERITE ArmoredElytras.
- Improved ArmorTier retrieval on 1.16+. A PersistentDataContainer is now stored in the item meta to keep track of the armortier of an item. Instead of using the armorvalue of an item to figure out which armortier an item is (which is how it was done before), this container is used instead. This is not only simpler (and probably more reliable), but it also solves the issue where armor values caused collisions between two types (e.g. gold and chain or diamond and netherite).
- Added Netherite tier to translation system.
2020-06-27 15:40:41 +02:00
3fc27ca1fc Add initial 1.16+ support
- Added initial 1.16+ support. This basically means that all the old functions are supposed to work, but none of the new ones are implemented yet (netherite, crafting in smithy). The '+' part refers to the fact that the NBTEditor has a new 1.16+ implementation that uses the Spigot API, which means that it should work just fine in newer versions.
- Using .equals() instead of == for some Integer/Double comparisons.
2020-06-27 12:59:17 +02:00
1053e17b1d Fix updater, compilation, and improve translation
- Fixed the updater thinking a result of UP_TO_DATE meant that the plugin was outdated. This happened because this system is used like this in BigDoors in case the active BD version is a dev-build. However, AE doesn't used dev-builds.
- Fixed resources being placed in the jar twice.
- When the provided text file includes ".txt" in the config, the plugin won't add another ".txt" to the filename (ending up as "filename.txt.txt"). This is a bit more user-friendly.
- Bumped version number to 2.4.13
2020-05-25 17:28:16 +02:00
93bc2a3072 Cleanup
- Removed old updater class that no longer serves a purpose.
- Removed debug statment.
2020-05-23 14:46:40 +02:00
7f09a34fdb Backport Messages from BigDoors v2
- Backported the Messages system from BigDoors v2. This new system does not overwrite the default language file anymore (nor does it make it read-only). Instead, it reads as many translations from whatever file is selected and takes any missing translations from the translation file inside the jar (and lets the admin know that a translation is missing in the console). This makes the plugin a bit friendlier to use for people that cannot be bothered to read the disclaimer at the top of the file.
2020-05-20 13:13:52 +02:00
e093b18124 Update updater
- Updated the updater to use the same system BigDoors uses. This system is much cleaner and better and it uses Spiget to check for updates instead of DBO.
- Introduced new config option "auto-update" to control if new updates are downloaded automatically or not.
2020-05-20 12:19:40 +02:00
51854fa150 Update NBT system to support recent Paper builds
- Overhauled the way armor values are retrieved so that this plugin is compatible with Paper 178+. This new method should also be a bit more robust against future changes.
- Reformatted the code some.
- Fixed FlyDurabilityHandler. It used to check Player#isFlying. This checks if the player if flying using creative flight, not using an elytra. Player#isGliding actually checks if the player is flying using an elytra.
2020-04-19 12:09:48 +02:00
19ab2cdab1 Fix NPE thrown on player death event 2020-03-18 18:31:37 +01:00
c5abedc89b Add 1.15 support, add ArmorEquipEvent
- Added support for version 1.15 of minecraft. From now on, the NBT constructors are private instead of public. During initialization, they're made accessible now.
- Added ArmorEquipEvent that keeps track of every possible way someone might equip armor. It is then cancelled if needed.
- Updated language file. A long and a short name of each tier is now supported, which can be used as variables.
2019-12-11 21:51:51 +01:00
e906ddfdb3 Clean up code, fix bugs, use Maven
- Switched to Maven for project compilation.
- Added config options to globally bypass permissions for crafting and/or wearing of all tiers.
- Now using Consumer for stuff that previously used the ugly is1_9 boolean.
- Switched to using ArmorEquipEvent for checking if players are allowed to wear something. It's much cleaner and includes some previously omitted equip events (such as from a dispenser).
- Code cleanup.
- Fixed issue where unbreakable armored elytras would still "break".
- Added MENDING enchantment to the default set of enchantments again.
- Using Maven shade for bStats and removed the old Metrics class.
2019-08-23 17:37:16 +02:00
080b6c6dab Add config option, improve multi-version support
- Added config option to allow multiple types of protection enchantments
to be applied to a single armored elytra.
- Added XMaterial class that was accidentally omitted in the last
commit.
2019-06-24 13:54:01 +02:00
1e986d60da Cleanup
- Now using correct Maven imports for Spigot etc.
- Removed redundant else (if) statements.
- Added stripped-down version of XMaterial v2.
- Using XMaterial for chest-plate checking because some names were
different in some versions.
2019-06-20 16:59:13 +02:00
81e4111359 Minor update
- Fixed startup message saying noFlightDurability is disabled when it's
actually enabled and vice-versa.
- Improved order of noFlightDurability checking. It's faster now.
- Fixed default message saying that BigDoors couldn't find the message.
2019-05-21 13:09:59 +02:00
45486a7eea Improve config handling
- Rewrote ConfigOption to take advantage of generics.
- Simplified config option management by getting rid of some code
duplication.
- No longer using Strings to get configuration values. This is both much
faster and less error-prone (when using any IDE worth its salt).
2019-04-30 20:41:12 +02:00
ecd0340cd6 Fix custom language files.
- Now actually using custom language file when indicated in the config
file.
- Set default language file to read-only.
- Added warning message to not alter the default language file as it'll
be regenerated.
2019-04-28 17:31:08 +02:00
45d5f90fef Fix 1.14 support.
- Fixed addCompound for 1.14. New format requires an int.
2019-04-28 16:09:09 +02:00
da360b3d28 Cleanup code
- Removed some code duplication.
2019-04-20 14:58:51 +02:00
4b5de17bb6 Fix formating
- Removed all remaining tabs (not sure how to got through the last
cleanup).
- Updated some comments.
2019-04-18 17:11:18 +02:00
da224bfc1a Use reflection for multi-version support.
- Switched to using reflection for multi-version support of Minecraft to make supporting it a little easier. Shouldn't require an update for 1.14 anymore now (unless they change the format or something).
- Code style enforced.
2019-04-15 12:04:59 +02:00
07e3b65f2b - Added 1.9 support.
- Fixed books with 1 or more invalid enchants not working.
2018-11-06 13:23:56 +01:00
9355a9343b Removed accidental BigDoors dependency. 2018-10-27 03:36:08 +02:00
e35c251827 QoL Improvements, bug fixes.
- Fixed 1.13 and 1.13.1/1.13.2 bug with armor value retrieval (nbt changed in 1.13).
- Added en_US.txt as translation file for easier translation stuff.
- Moved more strings to translation file.
- Added 1.13.1 and 1.13.2 support.
2018-10-26 14:53:58 +02:00
c3546c777c 1.13 support
- Added initial support for version 1.13 of Minecraft.
2018-08-02 03:53:56 +02:00
511a0c85f9 - Added armoredelytra.craft.<tier> permissions.
- Removed cursesAllowed option. It is now part of the allowedEnchantments. (Fixed mending not allowed when curses are not allowed).
- Fixed glitch where "ghosts" of items remained in the anvil after taking the result out using shift + click.
2018-02-05 12:20:29 +01:00
e5044a7300 - Added option to customise the names for every tier or armored elytra.
- When taking an armored elytra out of an anvil using shift + click will no longer destroy the armored elytra when there is no space in the user's inventory.
2018-02-04 11:51:36 +01:00
f1f8607dd4 - Fixed not being able to rename non-AE items.
- Using correct version number again...
- Removed unused methods in Metrics class, reducing jar size by 12.5%.
2018-01-22 10:35:00 +01:00
8eb6f094c8 - Fixed "fake" enchantments being allowed on armored elytras (only 1 kind of protection enchantment can be active at the same time, now only 1 can be put on an AE).
- Fixed invalid Armored Elytras showing up in the result slot.
2018-01-20 22:04:53 +01:00
8ca829675e - Updated version numbers. 2018-01-19 19:23:07 +01:00
1ae0b3309d - Rewrote all anvil related stuff. Cleaner and better now. 2018-01-19 12:08:04 +01:00
acee288927 - Fixed anvils being unusable for non-AE stuff.
- Added backup note to uninstaller config option.
2018-01-18 18:44:17 +01:00
cb1d8c55a2 - Removed print statement that shouldn't be there. 2018-01-18 13:37:19 +01:00
32fe48d0e1 - Fixed NPE when you don't handle in the chestplate correctly.
- Fixed being able to repair AE's with leather even if it's not a leather AE.
- Fixed not being able to repair regular, unarmored elytras with leather.
2018-01-18 13:33:54 +01:00
cb18e97165 - Fixed NPE when using command to make and AE.
- Fixed Enchantments, Lore, Name and armor status not being copied to new AE when enchanting.
- Fixed glitch that allowed players to put enchantments / curses on items that aren't allowed.
- Changed version number to 2.0
2018-01-18 12:26:35 +01:00
80317b4b4e - Added uninstaller.
- Code cleanup
- Added option to disable durability penalty during flight.
- Added support for version 1.10.x of Minecraft.
2018-01-17 06:22:14 +01:00
404eb20c4c - Wrote custom config stuff to add support for comments in the config file. They should no longer be removed by the plugin itself now. 2017-10-09 00:22:12 +02:00
a8821be3db - Fixed elytra duplication exploit.
- Fixed equipping elytra without permissions bug.
- Color codes in config now case insensitive.
- Removed armoredelytra.give permission node. (use armoredelytra.give.<tier>)
- Added bStats for stats.
2017-10-06 16:43:09 +02:00
464a545204 - Using Bukkit ChatColor instead of Spigot ChatColor now. 2017-10-03 21:06:31 +02:00
61a8c872cb - Fixed leather elytra being unenchantable.
- Added color codes support
2017-10-02 17:41:05 +02:00
23889c0845 - Code improvements.
- You can now customize name and lore for armored elytras (or not have any lore at all) in the config file. %ARMOR_TIER% works here as well.
- Fixed some minor bugs with incorrect strings being printed sometimes.
2017-09-29 22:08:41 +02:00
6d707c34a8 - Added update checker (with config option to disable).
- Added support for %ARMOR_TIER% variable in config.
- Removed order requirement when crafting armored elytas (armor+elytra and elytra+armor both works now).
- Added support for enchanted books.
- Removed some code duplication.
2017-09-26 15:53:57 +02:00
12729e3fb3 - Order of elytra/chestplate does not matter anymore.
- Added support for enchanted books.
2017-09-26 12:56:37 +02:00
33540e4b16 - Made printing stuff to console/player nicer. 2017-09-26 11:41:02 +02:00
9fb779f495 - Added config options to change messages you get when receiving an armored elytra and when you are not allowed to wear a certain tier of elytra. Changing the messages to "NONE" will cause no message to be printed.
- You can now give armored elytras to players from the console using the command: /armoredelytra <player> <armor>
2017-09-23 23:39:23 +02:00
b7059d4544 - Added permission nodes for wearing and spawning in armor!
- armoredelytra.give.<leather/gold/chain/iron/diamond>
  - armoredelytra.wear.<leather/gold/chain/iron/diamond>
- Fixed bug where you could not craft leather/gold armored elytras in version 1.12.x of MineCraft.
2017-09-22 20:47:00 +02:00