From 74a0042e00d7ec555afe3905e50c6e3ad051e010 Mon Sep 17 00:00:00 2001 From: Brandon <46827438+disclearing@users.noreply.github.com> Date: Sun, 15 Oct 2023 18:43:55 +0100 Subject: [PATCH] GG --- .classpath | 12 + .project | 17 + .settings/org.eclipse.jdt.core.prefs | 11 + bin/balances.yml | 1 + bin/config.cdl | 306 + bin/config.yml | 778 ++ bin/event-schedules.txt | 2 + bin/faction-users.yml | 1 + bin/factions.yml | 1 + bin/items.csv | 7449 +++++++++++++++++ bin/lives.yml | 1 + bin/net/jodah/expiringmap/EntryLoader.class | Bin 0 -> 283 bytes .../expiringmap/ExpirationListener.class | Bin 0 -> 302 bytes .../jodah/expiringmap/ExpirationPolicy.class | Bin 0 -> 1093 bytes .../expiringmap/ExpiringEntryLoader.class | Bin 0 -> 357 bytes bin/net/jodah/expiringmap/ExpiringMap$1.class | Bin 0 -> 2434 bytes bin/net/jodah/expiringmap/ExpiringMap$2.class | Bin 0 -> 2062 bytes bin/net/jodah/expiringmap/ExpiringMap$3.class | Bin 0 -> 1935 bytes bin/net/jodah/expiringmap/ExpiringMap$4.class | Bin 0 -> 1306 bytes bin/net/jodah/expiringmap/ExpiringMap$5.class | Bin 0 -> 2515 bytes bin/net/jodah/expiringmap/ExpiringMap$6.class | Bin 0 -> 1351 bytes .../expiringmap/ExpiringMap$Builder.class | Bin 0 -> 7220 bytes ...ryLinkedHashMap$AbstractHashIterator.class | Bin 0 -> 1771 bytes ...Map$EntryLinkedHashMap$EntryIterator.class | Bin 0 -> 1695 bytes ...ngMap$EntryLinkedHashMap$KeyIterator.class | Bin 0 -> 1222 bytes ...Map$EntryLinkedHashMap$ValueIterator.class | Bin 0 -> 1230 bytes .../ExpiringMap$EntryLinkedHashMap.class | Bin 0 -> 3119 bytes .../expiringmap/ExpiringMap$EntryMap.class | Bin 0 -> 899 bytes ...ntryTreeHashMap$AbstractHashIterator.class | Bin 0 -> 1825 bytes ...ngMap$EntryTreeHashMap$EntryIterator.class | Bin 0 -> 1470 bytes ...tryTreeHashMap$ExpiringEntryIterator.class | Bin 0 -> 1365 bytes ...ringMap$EntryTreeHashMap$KeyIterator.class | Bin 0 -> 1206 bytes ...ngMap$EntryTreeHashMap$ValueIterator.class | Bin 0 -> 1214 bytes .../ExpiringMap$EntryTreeHashMap.class | Bin 0 -> 4572 bytes .../ExpiringMap$ExpiringEntry.class | Bin 0 -> 3831 bytes bin/net/jodah/expiringmap/ExpiringMap.class | Bin 0 -> 22502 bytes bin/net/jodah/expiringmap/ExpiringValue.class | Bin 0 -> 3783 bytes .../jodah/expiringmap/internal/Assert.class | Bin 0 -> 1782 bytes .../internal/NamedThreadFactory.class | Bin 0 -> 1185 bytes .../HardcoreFactionsPlugin$1.class | Bin 0 -> 1217 bytes .../HardcoreFactionsPlugin$2.class | Bin 0 -> 1533 bytes .../HardcoreFactionsPlugin$3.class | Bin 0 -> 1899 bytes .../HardcoreFactionsPlugin.class | Bin 0 -> 52426 bytes .../hardcorefactions/chests/InventoryIO.class | Bin 0 -> 3945 bytes .../hardcorefactions/chests/Teller$Type.class | Bin 0 -> 1324 bytes .../hardcorefactions/chests/Teller.class | Bin 0 -> 2910 bytes .../chests/VirtualChestManager$1.class | Bin 0 -> 919 bytes .../chests/VirtualChestManager.class | Bin 0 -> 6225 bytes .../chests/commands/ChestCommand.class | Bin 0 -> 4139 bytes .../chests/commands/ClearChestCommand.class | Bin 0 -> 3402 bytes .../chests/commands/DisposalCommand.class | Bin 0 -> 2669 bytes .../chests/commands/SaveChestCommand.class | Bin 0 -> 2936 bytes .../chests/commands/SaveChestsCommand.class | Bin 0 -> 2502 bytes .../chests/commands/WorkbenchCommand.class | Bin 0 -> 2227 bytes .../chests/listeners/PlayerListener.class | Bin 0 -> 2571 bytes .../chests/utils/BukkitUtil.class | Bin 0 -> 942 bytes .../hardcorefactions/classes/PvPClass.class | Bin 0 -> 3134 bytes .../classes/events/PvPClassEquipEvent.class | Bin 0 -> 1105 bytes .../classes/events/PvPClassUnEquipEvent.class | Bin 0 -> 1111 bytes .../classes/manager/PvPClassManager.class | Bin 0 -> 6540 bytes .../classes/type/Holder.class | Bin 0 -> 1408 bytes .../classes/type/archer/ArcherClass$1.class | Bin 0 -> 920 bytes .../classes/type/archer/ArcherClass.class | Bin 0 -> 14669 bytes .../classes/type/bard/BardClass$1.class | Bin 0 -> 4762 bytes .../classes/type/bard/BardClass.class | Bin 0 -> 16818 bytes .../classes/type/bard/utilties/BardData.class | Bin 0 -> 2517 bytes .../type/bard/utilties/BardEffect.class | Bin 0 -> 620 bytes .../type/bard/utilties/EffectRestorer.class | Bin 0 -> 4222 bytes .../classes/type/ghost/GhostClass$1.class | Bin 0 -> 1397 bytes .../classes/type/ghost/GhostClass$2.class | Bin 0 -> 2360 bytes .../classes/type/ghost/GhostClass.class | Bin 0 -> 10735 bytes .../classes/type/miner/MinerClass.class | Bin 0 -> 6991 bytes .../classes/type/rogue/RogueClass.class | Bin 0 -> 9257 bytes .../combatloggers/CombatLogEntry.class | Bin 0 -> 629 bytes .../CombatLogListener$LoggerRemovable.class | Bin 0 -> 1083 bytes .../combatloggers/CombatLogListener.class | Bin 0 -> 9767 bytes .../CustomEntityRegistration.class | Bin 0 -> 2332 bytes .../combatloggers/LoggerDeathEvent.class | Bin 0 -> 1010 bytes .../LoggerEntity$PlayerNmsResult.class | Bin 0 -> 729 bytes .../combatloggers/LoggerEntity.class | Bin 0 -> 11187 bytes .../combatloggers/LoggerSpawnEvent.class | Bin 0 -> 1010 bytes .../commands/essentials/BackCommand.class | Bin 0 -> 5285 bytes .../essentials/BroadcastCommand.class | Bin 0 -> 2477 bytes .../essentials/DisableChatCommand.class | Bin 0 -> 3122 bytes .../commands/essentials/EnchantCommand.class | Bin 0 -> 5576 bytes .../commands/essentials/FeedCommand.class | Bin 0 -> 2695 bytes .../commands/essentials/FlyCommand.class | Bin 0 -> 2933 bytes .../essentials/FreezeAllCommand.class | Bin 0 -> 1860 bytes .../commands/essentials/FreezeCommand.class | Bin 0 -> 3939 bytes .../commands/essentials/GamemodeCommand.class | Bin 0 -> 4460 bytes .../commands/essentials/GiveCommand.class | Bin 0 -> 4417 bytes .../commands/essentials/GiveawayCommand.class | Bin 0 -> 4270 bytes .../commands/essentials/GodCommand.class | Bin 0 -> 2897 bytes .../essentials/GuiFreezeCommand$1.class | Bin 0 -> 1407 bytes .../essentials/GuiFreezeCommand.class | Bin 0 -> 23659 bytes .../commands/essentials/HatCommand.class | Bin 0 -> 2685 bytes .../commands/essentials/HealCommand.class | Bin 0 -> 2428 bytes .../essentials/HideStaffCommand.class | Bin 0 -> 2790 bytes .../IgnoreCommand$IgnoreAddArgument.class | Bin 0 -> 4990 bytes .../IgnoreCommand$IgnoreClearArgument.class | Bin 0 -> 3205 bytes .../IgnoreCommand$IgnoreDeleteArgument.class | Bin 0 -> 3344 bytes .../IgnoreCommand$IgnoreListArgument.class | Bin 0 -> 3444 bytes .../commands/essentials/IgnoreCommand.class | Bin 0 -> 2856 bytes .../commands/essentials/InvseeCommand.class | Bin 0 -> 2593 bytes .../essentials/InvseeOfflineCommand.class | Bin 0 -> 4801 bytes .../commands/essentials/KillCommand.class | Bin 0 -> 2083 bytes .../commands/essentials/LagCommand.class | Bin 0 -> 8483 bytes .../commands/essentials/ListCommand.class | Bin 0 -> 1942 bytes .../commands/essentials/MessageCommand.class | Bin 0 -> 3750 bytes ...essageSpyCommand$IgnoreClearArgument.class | Bin 0 -> 2585 bytes ...sageSpyCommand$MessageSpyAddArgument.class | Bin 0 -> 4908 bytes ...eSpyCommand$MessageSpyDeleteArgument.class | Bin 0 -> 4447 bytes ...ageSpyCommand$MessageSpyListArgument.class | Bin 0 -> 4267 bytes .../essentials/MessageSpyCommand.class | Bin 0 -> 2910 bytes .../essentials/MoreItemsCommand.class | Bin 0 -> 2728 bytes .../commands/essentials/NewVideoCommand.class | Bin 0 -> 4112 bytes .../commands/essentials/RecCommand.class | Bin 0 -> 2477 bytes .../essentials/RemovePermCommand.class | Bin 0 -> 3127 bytes .../commands/essentials/RenameCommand.class | Bin 0 -> 4350 bytes .../commands/essentials/ReplyCommand.class | Bin 0 -> 4703 bytes .../essentials/ServerTimeCommand.class | Bin 0 -> 2637 bytes .../essentials/SetBorderCommand.class | Bin 0 -> 5095 bytes .../commands/essentials/SettingsCommand.class | Bin 0 -> 29108 bytes .../commands/essentials/SlowchatCommand.class | Bin 0 -> 3063 bytes .../commands/essentials/SpawnCommand.class | Bin 0 -> 2917 bytes .../commands/essentials/SpawnerCommand.class | Bin 0 -> 3852 bytes .../commands/essentials/SpeedCommand.class | Bin 0 -> 5006 bytes .../essentials/StaffChatCommand.class | Bin 0 -> 3259 bytes .../commands/essentials/StatsCommand.class | Bin 0 -> 5611 bytes .../commands/essentials/TeleportCommand.class | Bin 0 -> 4943 bytes .../essentials/ToggleChatCommand.class | Bin 0 -> 2765 bytes .../essentials/ToggleMessagesCommand.class | Bin 0 -> 2770 bytes .../essentials/ToggleSoundsCommand.class | Bin 0 -> 3988 bytes .../commands/essentials/TopCommand.class | Bin 0 -> 2719 bytes .../commands/essentials/UptimeCommand.class | Bin 0 -> 2400 bytes .../commands/essentials/VanishCommand.class | Bin 0 -> 3045 bytes .../commands/essentials/WorldCommand.class | Bin 0 -> 4475 bytes .../commands/hcf/BardEnergyCommand.class | Bin 0 -> 4358 bytes .../commands/hcf/BottleCommand.class | Bin 0 -> 7365 bytes .../commands/hcf/CobbleCommand.class | Bin 0 -> 3337 bytes .../commands/hcf/CrowbarCommand.class | Bin 0 -> 2898 bytes .../commands/hcf/EOTWCommand$EotwPrompt.class | Bin 0 -> 3392 bytes .../commands/hcf/EOTWCommand.class | Bin 0 -> 3049 bytes .../commands/hcf/EOTWReviveCommand.class | Bin 0 -> 4730 bytes .../commands/hcf/EconomyCommand.class | Bin 0 -> 7358 bytes .../commands/hcf/EndPortalCommand$1.class | Bin 0 -> 1157 bytes .../hcf/EndPortalCommand$LocationPair.class | Bin 0 -> 1186 bytes .../commands/hcf/EndPortalCommand.class | Bin 0 -> 8957 bytes .../commands/hcf/FFACommand.class | Bin 0 -> 2625 bytes .../commands/hcf/FocusCommand$1.class | Bin 0 -> 1224 bytes .../commands/hcf/FocusCommand$2$1.class | Bin 0 -> 1217 bytes .../commands/hcf/FocusCommand$2.class | Bin 0 -> 1665 bytes .../commands/hcf/FocusCommand$3.class | Bin 0 -> 1136 bytes .../commands/hcf/FocusCommand.class | Bin 0 -> 8557 bytes .../commands/hcf/InfoCommand.class | Bin 0 -> 5024 bytes .../hcf/KitMapGUICommand$KitMapTask.class | Bin 0 -> 2859 bytes .../commands/hcf/KitMapGUICommand.class | Bin 0 -> 4454 bytes .../commands/hcf/LFFCommand.class | Bin 0 -> 4522 bytes .../commands/hcf/LocationCommand.class | Bin 0 -> 3635 bytes .../commands/hcf/LogoutCommand.class | Bin 0 -> 3228 bytes .../commands/hcf/MapKitCommand.class | Bin 0 -> 2761 bytes .../commands/hcf/MobDropsCommand.class | Bin 0 -> 3455 bytes .../commands/hcf/PanicCommand.class | Bin 0 -> 2587 bytes .../commands/hcf/PayCommand.class | Bin 0 -> 4090 bytes .../commands/hcf/PlayTimeCommand.class | Bin 0 -> 3175 bytes .../commands/hcf/PvPTimerCommand.class | Bin 0 -> 5146 bytes .../commands/hcf/RebootCommand.class | Bin 0 -> 2230 bytes .../commands/hcf/ReclaimCommand$Rank.class | Bin 0 -> 2535 bytes .../commands/hcf/ReclaimCommand.class | Bin 0 -> 5473 bytes .../commands/hcf/ReclaimResetCommand.class | Bin 0 -> 3387 bytes .../commands/hcf/RegenCommand.class | Bin 0 -> 5328 bytes .../hcf/RestoreInventoryCommand.class | Bin 0 -> 2936 bytes .../commands/hcf/SOTWCommand.class | Bin 0 -> 5016 bytes .../commands/hcf/SaleCommand.class | Bin 0 -> 3523 bytes .../commands/hcf/SetCommand.class | Bin 0 -> 2956 bytes .../commands/hcf/SpawnCannonCommand.class | Bin 0 -> 8602 bytes .../commands/hcf/StaffModeCommand.class | Bin 0 -> 2863 bytes .../commands/hcf/StaffReviveCommand.class | Bin 0 -> 4927 bytes .../commands/hcf/TeamCoordinatesCommand.class | Bin 0 -> 2619 bytes .../hcf/ToggleCapzoneEntryCommand.class | Bin 0 -> 2918 bytes .../hcf/ToggleDiamondAlertsCommand.class | Bin 0 -> 2844 bytes .../commands/hcf/ToggleLightningCommand.class | Bin 0 -> 2896 bytes .../commands/hcf/ToggleSidebarCommand.class | Bin 0 -> 2953 bytes .../commands/help/CoordinatesCommand.class | Bin 0 -> 1925 bytes .../commands/help/FamousCommand.class | Bin 0 -> 2502 bytes .../commands/help/HelpCommand.class | Bin 0 -> 3749 bytes .../commands/help/ReportCommand.class | Bin 0 -> 3903 bytes .../commands/help/RequestCommand.class | Bin 0 -> 3372 bytes .../commands/help/StoreCommand.class | Bin 0 -> 1649 bytes .../commands/help/TeamSpeakCommand.class | Bin 0 -> 1391 bytes .../commands/help/WebsiteCommand.class | Bin 0 -> 1657 bytes .../commands/help/YoutubeCommand.class | Bin 0 -> 2515 bytes .../commands/revive/Revive1.class | Bin 0 -> 7280 bytes .../commands/revive/Revive2.class | Bin 0 -> 7281 bytes .../commands/revive/ReviveHandler.class | Bin 0 -> 6925 bytes .../commands/revive/ReviveManager.class | Bin 0 -> 1356 bytes .../commands/warp/WarpExecutor$1.class | Bin 0 -> 1043 bytes .../commands/warp/WarpExecutor.class | Bin 0 -> 8377 bytes .../warp/arguments/WarpListArgument.class | Bin 0 -> 3766 bytes .../warp/arguments/WarpRemoveArgument.class | Bin 0 -> 4248 bytes .../warp/arguments/WarpSetArgument.class | Bin 0 -> 3636 bytes .../warp/utilities/FlatFileWarpManager.class | Bin 0 -> 4460 bytes .../commands/warp/utilities/Warp.class | Bin 0 -> 2597 bytes .../commands/warp/utilities/WarpManager.class | Bin 0 -> 831 bytes .../hardcorefactions/deathban/Deathban.class | Bin 0 -> 2941 bytes .../deathban/lives/LivesExecutor.class | Bin 0 -> 1349 bytes .../lives/argument/LivesCheckArgument.class | Bin 0 -> 3591 bytes .../argument/LivesCheckDeathbanArgument.class | Bin 0 -> 6218 bytes .../LivesClearDeathbansArgument.class | Bin 0 -> 2965 bytes .../lives/argument/LivesGiveArgument.class | Bin 0 -> 4705 bytes .../lives/argument/LivesReviveArgument.class | Bin 0 -> 8631 bytes .../lives/argument/LivesSetArgument.class | Bin 0 -> 4180 bytes .../LivesSetDeathbanTimeArgument.class | Bin 0 -> 3129 bytes .../lives/argument/LivesTopArgument$1$1.class | Bin 0 -> 2110 bytes .../lives/argument/LivesTopArgument$1.class | Bin 0 -> 2881 bytes .../lives/argument/LivesTopArgument.class | Bin 0 -> 3154 bytes .../managers/DeathbanConfigManager.class | Bin 0 -> 1329 bytes .../deathban/managers/DeathbanFile$1.class | Bin 0 -> 1389 bytes .../deathban/managers/DeathbanFile.class | Bin 0 -> 8295 bytes .../deathban/managers/DeathbanManager.class | Bin 0 -> 1084 bytes .../hardcorefactions/economy/Economy.class | Bin 0 -> 548 bytes .../economy/manager/EconomyFile$1.class | Bin 0 -> 1372 bytes .../economy/manager/EconomyFile.class | Bin 0 -> 3730 bytes .../games/EventExecutor.class | Bin 0 -> 1445 bytes .../games/arguments/EventCancelArgument.class | Bin 0 -> 2987 bytes .../games/arguments/EventCreateArgument.class | Bin 0 -> 4760 bytes .../games/arguments/EventDeleteArgument.class | Bin 0 -> 4790 bytes .../games/arguments/EventListArgument.class | Bin 0 -> 4167 bytes .../games/arguments/EventRenameArgument.class | Bin 0 -> 4782 bytes .../arguments/EventSetAreaArgument.class | Bin 0 -> 7053 bytes .../arguments/EventSetCapzoneArgument.class | Bin 0 -> 11953 bytes .../games/arguments/EventStartArgument.class | Bin 0 -> 5059 bytes .../games/arguments/EventUptimeArgument.class | Bin 0 -> 3525 bytes .../games/conquest/ConquestExecutor.class | Bin 0 -> 782 bytes .../conquest/ConquestSetpointsArgument.class | Bin 0 -> 3950 bytes .../games/endevent/CustomDragon.class | Bin 0 -> 785 bytes .../games/endevent/EndEventCommand.class | Bin 0 -> 2944 bytes .../games/endevent/EndEventHandler.class | Bin 0 -> 14910 bytes .../games/eotw/EOTWHandler$EotwRunnable.class | Bin 0 -> 3664 bytes .../games/eotw/EOTWHandler.class | Bin 0 -> 2667 bytes .../games/fury/FuryExecutor.class | Bin 0 -> 2193 bytes .../games/fury/FurySetpointsArgument.class | Bin 0 -> 4036 bytes .../games/key/EnderChestKey.class | Bin 0 -> 5157 bytes .../hardcorefactions/games/key/Key.class | Bin 0 -> 1236 bytes .../games/key/KeyListener$1.class | Bin 0 -> 3115 bytes .../games/key/KeyListener$2.class | Bin 0 -> 3108 bytes .../games/key/KeyListener$3.class | Bin 0 -> 3292 bytes .../games/key/KeyListener$4.class | Bin 0 -> 3126 bytes .../games/key/KeyListener.class | Bin 0 -> 10291 bytes .../games/key/KeyManager.class | Bin 0 -> 7166 bytes .../games/key/LootExecutor.class | Bin 0 -> 1475 bytes .../games/key/RewardableItemStack.class | Bin 0 -> 1989 bytes .../games/key/argument/LootAddArgument.class | Bin 0 -> 4053 bytes .../games/key/argument/LootBankArgument.class | Bin 0 -> 3287 bytes .../key/argument/LootBroadcastsArgument.class | Bin 0 -> 2093 bytes .../key/argument/LootCreateArgument.class | Bin 0 -> 2955 bytes .../key/argument/LootDepositArgument.class | Bin 0 -> 4733 bytes .../key/argument/LootEventKeyArgument.class | Bin 0 -> 5638 bytes .../games/key/argument/LootGiveArgument.class | Bin 0 -> 7800 bytes .../key/argument/LootRollsArgument.class | Bin 0 -> 2947 bytes .../key/argument/LootWithdrawArgument.class | Bin 0 -> 6833 bytes .../games/key/type/ConquestKey.class | Bin 0 -> 3987 bytes .../games/key/type/CustomKey.class | Bin 0 -> 3138 bytes .../games/key/type/ExoKey.class | Bin 0 -> 3749 bytes .../games/key/type/GodKey.class | Bin 0 -> 4032 bytes .../games/key/type/KothKey.class | Bin 0 -> 2338 bytes .../games/key/type/LegendKey.class | Bin 0 -> 3429 bytes .../games/koth/KothExecutor.class | Bin 0 -> 1748 bytes .../koth/arguments/KothHelpArgument.class | Bin 0 -> 2707 bytes .../koth/arguments/KothNextArgument.class | Bin 0 -> 4989 bytes .../koth/arguments/KothScheduleArgument.class | Bin 0 -> 6080 bytes .../arguments/KothSetCapDelayArgument.class | Bin 0 -> 6084 bytes .../arguments/KothTopCapturesArgument.class | Bin 0 -> 8210 bytes .../mountain/GlowstoneMountainCommand.class | Bin 0 -> 6287 bytes .../games/skygear/SkyGearCommand.class | Bin 0 -> 3435 bytes .../skygear/handlers/SkyGearHandler.class | Bin 0 -> 4067 bytes .../skygear/listeners/SkyGearListener.class | Bin 0 -> 7371 bytes .../games/sotw/SOTWHandler$SotwRunnable.class | Bin 0 -> 1410 bytes .../games/sotw/SOTWHandler.class | Bin 0 -> 2440 bytes .../games/utilities/EventTimer$1.class | Bin 0 -> 3636 bytes .../games/utilities/EventTimer.class | Bin 0 -> 16189 bytes ...reObjects$ToStringHelper$ValueHolder.class | Bin 0 -> 826 bytes .../MoreObjects$ToStringHelper.class | Bin 0 -> 5870 bytes .../games/utilities/MoreObjects.class | Bin 0 -> 2139 bytes .../utilities/capturezone/CaptureZone.class | Bin 0 -> 4906 bytes .../utilities/capturezone/EventCapture.class | Bin 0 -> 1812 bytes .../utilities/scheduler/EventScheduler.class | Bin 0 -> 3436 bytes .../utilities/scheduler/EventScheduler2.class | Bin 0 -> 4245 bytes .../utilities/scheduler/IEventScheduler.class | Bin 0 -> 292 bytes .../utilities/tracker/CitadelTracker.class | Bin 0 -> 2267 bytes .../utilities/tracker/ConquestTracker.class | Bin 0 -> 10211 bytes .../utilities/tracker/EventTracker.class | Bin 0 -> 831 bytes .../games/utilities/tracker/FuryTracker.class | Bin 0 -> 14208 bytes .../games/utilities/tracker/KothTracker.class | Bin 0 -> 7668 bytes .../utilities/tracker/PalaceTracker.class | Bin 0 -> 6408 bytes .../games/utilities/type/EventType.class | Bin 0 -> 3864 bytes .../kit/FlatFileKitManager.class | Bin 0 -> 8183 bytes bin/notifyz/hardcorefactions/kit/Kit.class | Bin 0 -> 12127 bytes .../hardcorefactions/kit/KitExecutor.class | Bin 0 -> 6328 bytes .../hardcorefactions/kit/KitListener.class | Bin 0 -> 10276 bytes .../hardcorefactions/kit/KitManager.class | Bin 0 -> 715 bytes .../kit/argument/KitApplyArgument.class | Bin 0 -> 4260 bytes .../kit/argument/KitCreateArgument.class | Bin 0 -> 3688 bytes .../kit/argument/KitDeleteArgument.class | Bin 0 -> 4138 bytes .../kit/argument/KitDisableArgument.class | Bin 0 -> 3998 bytes .../kit/argument/KitGuiArgument.class | Bin 0 -> 3128 bytes .../kit/argument/KitListArgument.class | Bin 0 -> 5105 bytes .../kit/argument/KitPreviewArgument.class | Bin 0 -> 4194 bytes .../kit/argument/KitRenameArgument.class | Bin 0 -> 4428 bytes .../kit/argument/KitSetDelayArgument.class | Bin 0 -> 4137 bytes .../argument/KitSetDescriptionArgument.class | Bin 0 -> 4218 bytes .../kit/argument/KitSetImageArgument.class | Bin 0 -> 4680 bytes .../kit/argument/KitSetIndexArgument.class | Bin 0 -> 4871 bytes .../kit/argument/KitSetItemsArgument.class | Bin 0 -> 4373 bytes .../kit/argument/KitSetMaxUsesArgument.class | Bin 0 -> 4650 bytes .../argument/KitSetminplaytimeArgument.class | Bin 0 -> 4108 bytes .../kit/event/KitApplyEvent.class | Bin 0 -> 1422 bytes .../kit/event/KitCreateEvent.class | Bin 0 -> 1183 bytes .../kit/event/KitRemoveEvent.class | Bin 0 -> 1183 bytes .../kit/event/KitRenameEvent.class | Bin 0 -> 1618 bytes .../listeners/CoreListener$1.class | Bin 0 -> 3318 bytes .../listeners/CoreListener.class | Bin 0 -> 13834 bytes .../listeners/claim/ClaimWandListener$1.class | Bin 0 -> 1562 bytes .../listeners/claim/ClaimWandListener$2.class | Bin 0 -> 1672 bytes .../listeners/claim/ClaimWandListener.class | Bin 0 -> 11988 bytes .../claim/SubclaimWandListener$1.class | Bin 0 -> 1580 bytes .../claim/SubclaimWandListener$2.class | Bin 0 -> 1693 bytes .../claim/SubclaimWandListener.class | Bin 0 -> 10324 bytes .../essentials/AutoMuteListener.class | Bin 0 -> 2607 bytes .../listeners/essentials/BreedListener.class | Bin 0 -> 1227 bytes .../listeners/essentials/ChatListener.class | Bin 0 -> 14075 bytes .../essentials/FreezeAllListener.class | Bin 0 -> 4231 bytes .../essentials/FreezeListener$AlertTask.class | Bin 0 -> 2595 bytes .../listeners/essentials/FreezeListener.class | Bin 0 -> 9937 bytes .../FurnaceSmeltSpeederListener.class | Bin 0 -> 2013 bytes .../essentials/HideStaffListener.class | Bin 0 -> 1684 bytes .../essentials/MobstackListener.class | Bin 0 -> 16634 bytes .../essentials/PlayTimeListener.class | Bin 0 -> 5241 bytes .../essentials/RestoreInventoryListener.class | Bin 0 -> 9850 bytes .../listeners/essentials/SkullListener.class | Bin 0 -> 3992 bytes .../essentials/StaffChatListener.class | Bin 0 -> 4319 bytes .../essentials/WhitelistMessageListener.class | Bin 0 -> 1516 bytes .../listeners/hcf/AnvilSpamListener.class | Bin 0 -> 2564 bytes .../listeners/hcf/BedBombingListener.class | Bin 0 -> 4098 bytes .../listeners/hcf/BookDeenchantListener.class | Bin 0 -> 3782 bytes .../listeners/hcf/BorderListener.class | Bin 0 -> 7755 bytes .../listeners/hcf/BottledExpListener.class | Bin 0 -> 7187 bytes .../listeners/hcf/CobwebListener$1.class | Bin 0 -> 1289 bytes .../listeners/hcf/CobwebListener.class | Bin 0 -> 2502 bytes .../listeners/hcf/ColorSignListener.class | Bin 0 -> 1959 bytes .../listeners/hcf/CrowbarListener.class | Bin 0 -> 11631 bytes .../listeners/hcf/DeathListener.class | Bin 0 -> 6044 bytes .../listeners/hcf/DeathMessageListener.class | Bin 0 -> 10727 bytes .../listeners/hcf/DeathSignListener.class | Bin 0 -> 6978 bytes .../listeners/hcf/DeathbanListener$1.class | Bin 0 -> 1368 bytes .../listeners/hcf/DeathbanListener.class | Bin 0 -> 10929 bytes .../listeners/hcf/EOTWListener.class | Bin 0 -> 7632 bytes .../listeners/hcf/ElevatorListener.class | Bin 0 -> 5072 bytes .../listeners/hcf/EnchantLimitListener.class | Bin 0 -> 8004 bytes .../listeners/hcf/EntityLimitListener.class | Bin 0 -> 3748 bytes .../listeners/hcf/EventListener.class | Bin 0 -> 2407 bytes .../listeners/hcf/EventSignListener.class | Bin 0 -> 5884 bytes .../listeners/hcf/ExpMultiplierListener.class | Bin 0 -> 4671 bytes .../listeners/hcf/FoundDiamondListener.class | Bin 0 -> 4121 bytes .../hcf/ItemStatTrackingListener.class | Bin 0 -> 5096 bytes .../listeners/hcf/KillStreaks.class | Bin 0 -> 792 bytes .../listeners/hcf/KillstreakListener.class | Bin 0 -> 3367 bytes .../listeners/hcf/KitMapKitsListener.class | Bin 0 -> 14285 bytes .../listeners/hcf/KitMapListener.class | Bin 0 -> 5842 bytes .../hcf/MinecartElevatorListener.class | Bin 0 -> 3558 bytes .../hcf/PickaxeStatisticsListener.class | Bin 0 -> 2878 bytes .../listeners/hcf/PickaxeStatsListener.class | Bin 0 -> 21537 bytes .../listeners/hcf/PortalListener.class | Bin 0 -> 6616 bytes .../listeners/hcf/PotionLimitListener.class | Bin 0 -> 4650 bytes .../listeners/hcf/ProtectionListener.class | Bin 0 -> 34354 bytes .../listeners/hcf/SOTWListener.class | Bin 0 -> 4934 bytes .../listeners/hcf/ShopListener.class | Bin 0 -> 7307 bytes .../listeners/hcf/StaffModeListener$1.class | Bin 0 -> 7142 bytes .../listeners/hcf/StaffModeListener.class | Bin 0 -> 25364 bytes .../listeners/hcf/Strength2Listener.class | Bin 0 -> 4680 bytes .../listeners/hcf/StrengthListener.class | Bin 0 -> 1916 bytes .../listeners/hcf/SubclaimListener.class | Bin 0 -> 13929 bytes .../listeners/hcf/TeamListener.class | Bin 0 -> 19459 bytes .../hcf/ThrowableCobwebsListener$1.class | Bin 0 -> 1713 bytes .../hcf/ThrowableCobwebsListener.class | Bin 0 -> 6767 bytes .../listeners/hcf/WorldListener.class | Bin 0 -> 23202 bytes .../hcf/fixes/AnvilDupeFixListener.class | Bin 0 -> 3603 bytes .../hcf/fixes/AnvilRepairEvent.class | Bin 0 -> 1818 bytes .../fixes/ArcherBeaconSpeedFixListener.class | Bin 0 -> 2707 bytes .../hcf/fixes/ArmorFixListener.class | Bin 0 -> 2243 bytes .../hcf/fixes/BeaconStrengthFixListener.class | Bin 0 -> 2597 bytes .../hcf/fixes/BlockHitFixListener.class | Bin 0 -> 4480 bytes .../hcf/fixes/BoatGlitchFixListener.class | Bin 0 -> 1943 bytes .../hcf/fixes/CrashFixListener.class | Bin 0 -> 2711 bytes .../hcf/fixes/DuplicationGlitchListener.class | Bin 0 -> 2214 bytes .../hcf/fixes/EnderChestRemovalListener.class | Bin 0 -> 2754 bytes .../hcf/fixes/HungerFixListener.class | Bin 0 -> 2311 bytes .../hcf/fixes/InfinityArrowFixListener.class | Bin 0 -> 1863 bytes .../listeners/hcf/fixes/MobFixListener.class | Bin 0 -> 2641 bytes .../hcf/fixes/PearlGlitchListener.class | Bin 0 -> 5401 bytes .../hcf/fixes/PearlThroughListener.class | Bin 0 -> 6398 bytes .../hcf/fixes/SplashPotionListener.class | Bin 0 -> 2653 bytes .../hcf/fixes/SugarCaneFixListener$Util.class | Bin 0 -> 1408 bytes .../hcf/fixes/SugarCaneFixListener.class | Bin 0 -> 2412 bytes .../hcf/fixes/VoidGlitchFixListener.class | Bin 0 -> 2735 bytes .../hcf/fixes/WeatherFixListener.class | Bin 0 -> 1101 bytes .../scoreboard/BufferedObjective$1.class | Bin 0 -> 2685 bytes .../scoreboard/BufferedObjective.class | Bin 0 -> 5143 bytes .../scoreboard/provider/PvPClassHolder.class | Bin 0 -> 390 bytes .../provider/ScoreboardProvider.class | Bin 0 -> 22594 bytes .../scoreboard/timer/TimerExecutor.class | Bin 0 -> 874 bytes .../scoreboard/timer/TimerManager.class | Bin 0 -> 15339 bytes .../arguments/TimerCheckArgument$1.class | Bin 0 -> 2256 bytes .../timer/arguments/TimerCheckArgument.class | Bin 0 -> 3863 bytes .../timer/arguments/TimerSetArgument.class | Bin 0 -> 5943 bytes .../timer/utilities/GlobalTimer.class | Bin 0 -> 2874 bytes .../timer/utilities/PlayerTimer.class | Bin 0 -> 9123 bytes .../scoreboard/timer/utilities/Timer.class | Bin 0 -> 1229 bytes .../timer/utilities/TimerCooldown$1.class | Bin 0 -> 1728 bytes .../timer/utilities/TimerCooldown.class | Bin 0 -> 3217 bytes .../utilities/events/TimerClearEvent.class | Bin 0 -> 2533 bytes .../utilities/events/TimerExpireEvent.class | Bin 0 -> 2559 bytes .../utilities/events/TimerExtendEvent.class | Bin 0 -> 2722 bytes .../utilities/events/TimerPauseEvent.class | Bin 0 -> 2028 bytes .../utilities/events/TimerStartEvent.class | Bin 0 -> 2200 bytes .../timer/utilities/type/AppleTimer$1.class | Bin 0 -> 1118 bytes .../timer/utilities/type/AppleTimer.class | Bin 0 -> 4084 bytes .../utilities/type/ClassWarmupTimer$1.class | Bin 0 -> 1399 bytes .../utilities/type/ClassWarmupTimer$2.class | Bin 0 -> 1233 bytes .../utilities/type/ClassWarmupTimer.class | Bin 0 -> 4774 bytes .../timer/utilities/type/CombatTimer.class | Bin 0 -> 10473 bytes .../type/EnderpearlTimer$PearlNameFaker.class | Bin 0 -> 2453 bytes .../utilities/type/EnderpearlTimer.class | Bin 0 -> 9135 bytes .../timer/utilities/type/GappleTimer$1.class | Bin 0 -> 1124 bytes .../timer/utilities/type/GappleTimer.class | Bin 0 -> 4101 bytes .../timer/utilities/type/HomeTimer.class | Bin 0 -> 7125 bytes .../timer/utilities/type/KeySaleTimer.class | Bin 0 -> 2238 bytes .../timer/utilities/type/LogoutTimer.class | Bin 0 -> 6032 bytes .../utilities/type/PvPProtectionTimer.class | Bin 0 -> 18501 bytes .../timer/utilities/type/RebootTimer.class | Bin 0 -> 2439 bytes .../timer/utilities/type/SaleTimer.class | Bin 0 -> 2232 bytes .../timer/utilities/type/StuckTimer.class | Bin 0 -> 8359 bytes .../scoreboard/utilities/PlayerBoard$1.class | Bin 0 -> 1514 bytes .../scoreboard/utilities/PlayerBoard$2.class | Bin 0 -> 1549 bytes .../scoreboard/utilities/PlayerBoard$3.class | Bin 0 -> 5270 bytes .../scoreboard/utilities/PlayerBoard.class | Bin 0 -> 8352 bytes .../utilities/ScoreboardHandler.class | Bin 0 -> 7242 bytes .../scoreboard/utilities/SidebarEntry.class | Bin 0 -> 1710 bytes .../scoreboard/utilities/SidebarFiller.class | Bin 0 -> 346 bytes .../utilities/SidebarProvider.class | Bin 0 -> 394 bytes .../hardcorefactions/team/TeamManager.class | Bin 0 -> 2493 bytes .../hardcorefactions/team/claim/Claim.class | Bin 0 -> 7213 bytes .../team/claim/subclaim/Subclaim.class | Bin 0 -> 4958 bytes .../team/claim/team/ClaimManager.class | Bin 0 -> 15585 bytes .../team/claim/team/ClaimSelection.class | Bin 0 -> 4501 bytes .../team/commands/TeamExecutor.class | Bin 0 -> 7209 bytes .../team/commands/staff/TeamBanCommand.class | Bin 0 -> 4578 bytes .../commands/staff/TeamChatSpyCommand.class | Bin 0 -> 12062 bytes .../commands/staff/TeamClaimForCommand.class | Bin 0 -> 5387 bytes ...earClaimsCommand$ClaimClearAllPrompt.class | Bin 0 -> 4092 bytes .../staff/TeamClearClaimsCommand.class | Bin 0 -> 6049 bytes .../staff/TeamForceDemoteCommand.class | Bin 0 -> 3955 bytes .../commands/staff/TeamForceJoinCommand.class | Bin 0 -> 5427 bytes .../commands/staff/TeamForceKickCommand.class | Bin 0 -> 4045 bytes .../staff/TeamForceLeaderCommand.class | Bin 0 -> 4422 bytes .../staff/TeamForcePromoteCommand.class | Bin 0 -> 3944 bytes .../staff/TeamForceUnallyCommand.class | Bin 0 -> 4448 bytes .../staff/TeamForceUnclaimHereCommand.class | Bin 0 -> 3695 bytes .../TeamManageCommand$FactionPrompt.class | Bin 0 -> 1964 bytes .../commands/staff/TeamManageCommand.class | Bin 0 -> 11120 bytes .../team/commands/staff/TeamMuteCommand.class | Bin 0 -> 4570 bytes .../TeamRemoveCommand$RemoveAllPrompt.class | Bin 0 -> 3880 bytes .../commands/staff/TeamRemoveCommand.class | Bin 0 -> 5719 bytes .../TeamSetDeathbanMultiplierCommand.class | Bin 0 -> 5206 bytes .../commands/staff/TeamSetDtrCommand.class | Bin 0 -> 5512 bytes .../staff/TeamSetDtrRegenCommand.class | Bin 0 -> 5415 bytes .../commands/staff/TeamSetLivesCommand.class | Bin 0 -> 5287 bytes .../commands/staff/TeamUnbanCommand.class | Bin 0 -> 4533 bytes .../commands/staff/TeamUnmuteCommand.class | Bin 0 -> 4547 bytes .../TeamSubclaimAddMemberCommand.class | Bin 0 -> 7595 bytes .../TeamSubclaimCommandExecutor.class | Bin 0 -> 5985 bytes .../subclaim/TeamSubclaimCreateCommand.class | Bin 0 -> 6856 bytes .../TeamSubclaimDelMemberCommand.class | Bin 0 -> 7711 bytes .../subclaim/TeamSubclaimDeleteCommand.class | Bin 0 -> 6193 bytes .../subclaim/TeamSubclaimListCommand.class | Bin 0 -> 5197 bytes .../subclaim/TeamSubclaimMembersCommand.class | Bin 0 -> 6835 bytes .../subclaim/TeamSubclaimRenameCommand.class | Bin 0 -> 6162 bytes .../subclaim/TeamSubclaimStartCommand.class | Bin 0 -> 3299 bytes .../subclaim/TeamUnsubclaimCommand.class | Bin 0 -> 3957 bytes .../commands/team/TeamAcceptCommand.class | Bin 0 -> 7153 bytes .../team/commands/team/TeamAllyCommand.class | Bin 0 -> 8130 bytes .../team/TeamAnnouncementCommand.class | Bin 0 -> 5268 bytes .../team/commands/team/TeamChatCommand.class | Bin 0 -> 5985 bytes .../team/TeamClaimChunkArgument.class | Bin 0 -> 3844 bytes .../team/commands/team/TeamClaimCommand.class | Bin 0 -> 3909 bytes .../commands/team/TeamClaimsCommand.class | Bin 0 -> 5647 bytes .../commands/team/TeamCoLeaderCommand.class | Bin 0 -> 6233 bytes .../commands/team/TeamCreateCommand.class | Bin 0 -> 3798 bytes .../commands/team/TeamDemoteCommand.class | Bin 0 -> 5695 bytes .../commands/team/TeamDepositCommand.class | Bin 0 -> 5356 bytes .../team/TeamDepositLivesCommand.class | Bin 0 -> 5070 bytes .../commands/team/TeamDisbandCommand.class | Bin 0 -> 3501 bytes .../team/commands/team/TeamHQCommand.class | Bin 0 -> 7646 bytes .../team/commands/team/TeamHelpCommand.class | Bin 0 -> 5985 bytes .../commands/team/TeamInviteCommand.class | Bin 0 -> 8788 bytes .../commands/team/TeamInvitesCommand.class | Bin 0 -> 4435 bytes .../team/commands/team/TeamKickCommand.class | Bin 0 -> 6725 bytes .../commands/team/TeamLeaderCommand.class | Bin 0 -> 6106 bytes .../team/commands/team/TeamLeaveCommand.class | Bin 0 -> 3592 bytes .../commands/team/TeamListCommand$1.class | Bin 0 -> 1327 bytes .../team/commands/team/TeamListCommand.class | Bin 0 -> 10188 bytes .../team/commands/team/TeamMapCommand.class | Bin 0 -> 4875 bytes .../commands/team/TeamMessageCommand.class | Bin 0 -> 3564 bytes .../team/commands/team/TeamOpenCommand.class | Bin 0 -> 3434 bytes .../commands/team/TeamPromoteCommand.class | Bin 0 -> 5921 bytes .../commands/team/TeamRenameCommand.class | Bin 0 -> 5202 bytes .../commands/team/TeamReviveCommand.class | Bin 0 -> 5185 bytes .../team/commands/team/TeamSetHQCommand.class | Bin 0 -> 4467 bytes .../team/commands/team/TeamShowCommand.class | Bin 0 -> 4458 bytes .../team/commands/team/TeamStuckCommand.class | Bin 0 -> 3548 bytes .../commands/team/TeamUnallyCommand.class | Bin 0 -> 8413 bytes .../commands/team/TeamUnclaimCommand.class | Bin 0 -> 5700 bytes .../commands/team/TeamUninviteCommand.class | Bin 0 -> 5450 bytes .../commands/team/TeamWithdrawCommand.class | Bin 0 -> 5599 bytes .../team/events/CaptureZoneEnterEvent.class | Bin 0 -> 2272 bytes .../team/events/CaptureZoneLeaveEvent.class | Bin 0 -> 2272 bytes .../PlayerClaimEnterEvent$EnterCause.class | Bin 0 -> 1381 bytes .../team/events/PlayerClaimEnterEvent.class | Bin 0 -> 2415 bytes .../team/events/PlayerJoinTeamEvent.class | Bin 0 -> 2933 bytes .../team/events/PlayerJoinedTeamEvent.class | Bin 0 -> 1557 bytes .../team/events/PlayerLeaveTeamEvent.class | Bin 0 -> 3583 bytes .../team/events/PlayerLeftTeamEvent.class | Bin 0 -> 1762 bytes .../team/events/TeamChatEvent.class | Bin 0 -> 3217 bytes .../team/events/TeamClaimChangeEvent.class | Bin 0 -> 2909 bytes .../team/events/TeamClaimChangedEvent.class | Bin 0 -> 1858 bytes .../team/events/TeamCreateEvent.class | Bin 0 -> 1383 bytes .../TeamDtrChangeEvent$DtrUpdateCause.class | Bin 0 -> 1393 bytes .../team/events/TeamDtrChangeEvent.class | Bin 0 -> 2226 bytes .../team/events/TeamEvent.class | Bin 0 -> 994 bytes .../team/events/TeamRelationCreateEvent.class | Bin 0 -> 1754 bytes .../team/events/TeamRelationRemoveEvent.class | Bin 0 -> 1754 bytes .../team/events/TeamRemoveEvent.class | Bin 0 -> 1383 bytes .../team/events/TeamRenameEvent.class | Bin 0 -> 1963 bytes .../team/events/cause/ClaimChangeCause.class | Bin 0 -> 1253 bytes .../team/events/cause/TeamLeaveCause.class | Bin 0 -> 1237 bytes .../hardcorefactions/team/struct/Role.class | Bin 0 -> 1724 bytes .../team/struct/chat/TeamChannel.class | Bin 0 -> 5050 bytes .../team/struct/teamstatus/Raidable.class | Bin 0 -> 473 bytes .../team/struct/teamstatus/RegenStatus.class | Bin 0 -> 1864 bytes .../team/struct/teamstatus/Relation.class | Bin 0 -> 3086 bytes .../team/type/ClaimableTeam$1.class | Bin 0 -> 1391 bytes .../team/type/ClaimableTeam.class | Bin 0 -> 9044 bytes .../team/type/PlayerTeam$1.class | Bin 0 -> 1328 bytes .../team/type/PlayerTeam.class | Bin 0 -> 33035 bytes .../team/type/system/CapturableFaction.class | Bin 0 -> 768 bytes .../system/ConquestFaction$ConquestZone.class | Bin 0 -> 3708 bytes .../team/type/system/ConquestFaction.class | Bin 0 -> 7532 bytes .../team/type/system/EndPortalFaction.class | Bin 0 -> 1617 bytes .../team/type/system/EventFaction.class | Bin 0 -> 4313 bytes .../type/system/FuryFaction$FuryZone.class | Bin 0 -> 3941 bytes .../team/type/system/FuryFaction.class | Bin 0 -> 9519 bytes .../system/GlowstoneMountainFaction.class | Bin 0 -> 2579 bytes .../team/type/system/KothFaction.class | Bin 0 -> 5950 bytes .../team/type/system/PalaceFaction.class | Bin 0 -> 6083 bytes .../system/RoadFaction$EastRoadFaction.class | Bin 0 -> 881 bytes .../system/RoadFaction$NorthRoadFaction.class | Bin 0 -> 885 bytes .../system/RoadFaction$SouthRoadFaction.class | Bin 0 -> 885 bytes .../system/RoadFaction$WestRoadFaction.class | Bin 0 -> 881 bytes .../team/type/system/RoadFaction.class | Bin 0 -> 2965 bytes .../team/type/system/SpawnFaction.class | Bin 0 -> 1170 bytes .../team/type/system/WarzoneFaction.class | Bin 0 -> 1766 bytes .../team/type/system/WildernessFaction.class | Bin 0 -> 1784 bytes .../team/utilities/ITeam.class | Bin 0 -> 9075 bytes .../team/utilities/LandMap.class | Bin 0 -> 7491 bytes .../team/utilities/TeamFile.class | Bin 0 -> 18119 bytes .../team/utilities/TeamMember.class | Bin 0 -> 3622 bytes .../team/utilities/TeamType.class | Bin 0 -> 1592 bytes .../team/utilities/TeamUser$1.class | Bin 0 -> 1373 bytes .../team/utilities/TeamUser$2.class | Bin 0 -> 1366 bytes .../team/utilities/TeamUser.class | Bin 0 -> 11238 bytes .../utilities/Configuration.class | Bin 0 -> 26457 bytes .../utilities/api/IPluginAPI.class | Bin 0 -> 2837 bytes .../utilities/api/utilties/ICallback.class | Bin 0 -> 308 bytes .../utilties/IFluentIterableCompat$1.class | Bin 0 -> 1104 bytes .../api/utilties/IFluentIterableCompat.class | Bin 0 -> 3129 bytes .../utilities/api/utilties/IGuavaCompat.class | Bin 0 -> 1676 bytes .../utilities/api/utilties/INameHistory.class | Bin 0 -> 1757 bytes .../api/utilties/command/ICommandAPI.class | Bin 0 -> 3049 bytes .../utilties/command/ICommandArgument.class | Bin 0 -> 3415 bytes .../command/ICommandArgumentExecutor.class | Bin 0 -> 5388 bytes .../ICommandWrapper$ArgumentComparator.class | Bin 0 -> 1433 bytes .../utilties/command/ICommandWrapper.class | Bin 0 -> 5927 bytes .../api/utilties/command/IConstantsAPI.class | Bin 0 -> 909 bytes ...currentValueOrderedMap$InternalEntry.class | Bin 0 -> 2517 bytes .../utils/IConcurrentValueOrderedMap.class | Bin 0 -> 3662 bytes .../api/utilties/utils/INmsUtils.class | Bin 0 -> 3299 bytes .../api/utilties/utils/ISpigotUtils.class | Bin 0 -> 2790 bytes .../utilities/chat/BukkitUtils.class | Bin 0 -> 12586 bytes .../utilities/chat/ChatUtil.class | Bin 0 -> 6345 bytes .../utilities/chat/ClickAction.class | Bin 0 -> 1680 bytes .../utilities/chat/Color.class | Bin 0 -> 1309 bytes .../utilities/chat/Configuration.class | Bin 0 -> 1617 bytes .../utilities/chat/Cooldowns.class | Bin 0 -> 2885 bytes .../chat/DelayedMessageRunnable.class | Bin 0 -> 931 bytes .../utilities/chat/FancyMessage.class | Bin 0 -> 11771 bytes .../utilities/chat/FileConfig.class | Bin 0 -> 2412 bytes .../utilities/chat/HoverAction.class | Bin 0 -> 1606 bytes .../utilities/chat/Lang.class | Bin 0 -> 5774 bytes .../utilities/chat/MessageEvent.class | Bin 0 -> 4349 bytes .../utilities/chat/MessagePart.class | Bin 0 -> 2007 bytes .../utilities/chat/Text.class | Bin 0 -> 6877 bytes .../utilities/chat/TextUtils.class | Bin 0 -> 2713 bytes .../utilities/chat/Trans.class | Bin 0 -> 5984 bytes .../utilities/crowbar/Crowbar.class | Bin 0 -> 5603 bytes .../utilities/cuboid/CoordinatePair.class | Bin 0 -> 1757 bytes .../utilities/cuboid/Cuboid.class | Bin 0 -> 17150 bytes .../cuboid/CuboidBlockIterator.class | Bin 0 -> 1810 bytes .../utilities/cuboid/CuboidDirection.class | Bin 0 -> 2778 bytes .../cuboid/CuboidLocationIterator.class | Bin 0 -> 1775 bytes .../utilities/cuboid/NamedCuboid.class | Bin 0 -> 2990 bytes .../utilities/freeze/FrozenInventory.class | Bin 0 -> 2412 bytes .../utilities/freeze/FrozenManager.class | Bin 0 -> 950 bytes .../utilities/imagemessage/ImageChar.class | Bin 0 -> 1474 bytes .../utilities/imagemessage/ImageMessage.class | Bin 0 -> 6440 bytes ...ventoryRestoreHandler$InventoryState.class | Bin 0 -> 2241 bytes .../inventory/InventoryRestoreHandler.class | Bin 0 -> 4666 bytes .../inventory/InventorySerialisation.class | Bin 0 -> 3915 bytes .../utilities/inventory/InventoryUtils.class | Bin 0 -> 5258 bytes .../utilities/inventory/ItemBuilder.class | Bin 0 -> 3846 bytes .../utilities/inventory/ItemStackUtils.class | Bin 0 -> 21829 bytes .../utilities/inventory/Menu$1.class | Bin 0 -> 3236 bytes .../utilities/inventory/Menu$ItemAction.class | Bin 0 -> 399 bytes .../utilities/inventory/Menu.class | Bin 0 -> 8660 bytes .../utilities/inventory/PickStats.class | Bin 0 -> 3239 bytes .../utilities/inventory/SettingsBuilder.class | Bin 0 -> 3857 bytes .../utilities/inventory/item/ItemDB.class | Bin 0 -> 752 bytes .../utilities/inventory/item/ItemData.class | Bin 0 -> 4606 bytes .../inventory/item/ManagedFile.class | Bin 0 -> 5285 bytes .../inventory/item/SimpleItemDB$1.class | Bin 0 -> 930 bytes .../inventory/item/SimpleItemDB.class | Bin 0 -> 11695 bytes .../inventory/restoration/Inventories.class | Bin 0 -> 1155 bytes .../restoration/InventoryManager.class | Bin 0 -> 5859 bytes .../restoration/RestoreManager.class | Bin 0 -> 8516 bytes .../inventory/restoration/TimeUtil.class | Bin 0 -> 766 bytes .../utilities/user/IConsoleUser.class | Bin 0 -> 1209 bytes .../utilities/user/IUser.class | Bin 0 -> 9982 bytes .../utilities/user/IUserManager.class | Bin 0 -> 5093 bytes .../utilities/user/UserManager.class | Bin 0 -> 6165 bytes ...currentValueOrderedMap$InternalEntry.class | Bin 0 -> 2760 bytes .../utils/ConcurrentValueOrderedMap.class | Bin 0 -> 3631 bytes .../utilities/utils/Config.class | Bin 0 -> 2842 bytes .../utilities/utils/CountRemover$1.class | Bin 0 -> 916 bytes .../utilities/utils/CountRemover.class | Bin 0 -> 1082 bytes .../utilities/utils/DataHandler$1.class | Bin 0 -> 1527 bytes .../utilities/utils/DataHandler.class | Bin 0 -> 3662 bytes .../utilities/utils/DateTimeFormats$1.class | Bin 0 -> 747 bytes .../utilities/utils/DateTimeFormats$2.class | Bin 0 -> 822 bytes .../utilities/utils/DateTimeFormats$3.class | Bin 0 -> 822 bytes .../utilities/utils/DateTimeFormats.class | Bin 0 -> 2879 bytes .../utils/DelayedMessageRunnable.class | Bin 0 -> 933 bytes .../utilities/utils/DurationFormatter.class | Bin 0 -> 1856 bytes .../utilities/utils/Embedded.class | Bin 0 -> 685 bytes .../utilities/utils/ExperienceManager.class | Bin 0 -> 4709 bytes .../utilities/utils/GenericUtils.class | Bin 0 -> 4066 bytes .../utilities/utils/JavaUtils.class | Bin 0 -> 6255 bytes .../utilities/utils/MapSorting$1.class | Bin 0 -> 1209 bytes .../utilities/utils/MapSorting$2.class | Bin 0 -> 1211 bytes .../utilities/utils/MapSorting.class | Bin 0 -> 3024 bytes .../utilities/utils/Mapper.class | Bin 0 -> 405 bytes .../utilities/utils/NMSHandler.class | Bin 0 -> 2405 bytes .../utilities/utils/NameHistory.class | Bin 0 -> 1715 bytes .../utilities/utils/NmsUtils.class | Bin 0 -> 4774 bytes .../utilities/utils/ParticleEffect.class | Bin 0 -> 9955 bytes .../utilities/utils/PersistableLocation.class | Bin 0 -> 7068 bytes .../utilities/utils/RandomUtils.class | Bin 0 -> 904 bytes .../utilities/utils/Reflection.class | Bin 0 -> 3776 bytes .../utilities/utils/ServerHandler.class | Bin 0 -> 4040 bytes .../utilities/utils/ServerParticipator.class | Bin 0 -> 5522 bytes .../utilities/utils/SignHandler$1.class | Bin 0 -> 2099 bytes .../utils/SignHandler$SignChange.class | Bin 0 -> 715 bytes .../utilities/utils/SignHandler.class | Bin 0 -> 6328 bytes .../utilities/utils/SpamDetectEvent.class | Bin 0 -> 1319 bytes .../utilities/utils/SpigotUtils.class | Bin 0 -> 6008 bytes .../utilities/utils/StaffPriority.class | Bin 0 -> 3372 bytes .../utils/TimeUtils$IntegerCountdown.class | Bin 0 -> 1354 bytes .../utils/TimeUtils$LongCountdown.class | Bin 0 -> 1510 bytes .../utilities/utils/TimeUtils.class | Bin 0 -> 2027 bytes .../utilities/utils/Tuple.class | Bin 0 -> 967 bytes .../utilities/utils/UUIDFetcher.class | Bin 0 -> 5756 bytes .../utilities/utils/Utils.class | Bin 0 -> 5818 bytes .../utilities/visualise/BlockFiller.class | Bin 0 -> 1683 bytes .../utilities/visualise/ProtocolLibHook.class | Bin 0 -> 1055 bytes .../utilities/visualise/VisualBlock.class | Bin 0 -> 2617 bytes .../utilities/visualise/VisualBlockData.class | Bin 0 -> 1246 bytes .../utilities/visualise/VisualType$1$1.class | Bin 0 -> 1246 bytes .../utilities/visualise/VisualType$1.class | Bin 0 -> 936 bytes .../utilities/visualise/VisualType$2$1.class | Bin 0 -> 1244 bytes .../utilities/visualise/VisualType$2.class | Bin 0 -> 936 bytes .../utilities/visualise/VisualType$3$1.class | Bin 0 -> 1137 bytes .../utilities/visualise/VisualType$3.class | Bin 0 -> 936 bytes .../utilities/visualise/VisualType$4$1.class | Bin 0 -> 3708 bytes .../utilities/visualise/VisualType$4.class | Bin 0 -> 936 bytes .../utilities/visualise/VisualType$5$1.class | Bin 0 -> 1329 bytes .../utilities/visualise/VisualType$5.class | Bin 0 -> 936 bytes .../utilities/visualise/VisualType.class | Bin 0 -> 2013 bytes .../visualise/VisualiseHandler.class | Bin 0 -> 10890 bytes .../utilities/visualise/VisualiseUtil.class | Bin 0 -> 5902 bytes .../visualise/WallBorderListener$1.class | Bin 0 -> 1512 bytes .../visualise/WallBorderListener$2.class | Bin 0 -> 1887 bytes .../visualise/WallBorderListener.class | Bin 0 -> 8793 bytes .../visualise/protocol/BlockDig.class | Bin 0 -> 4436 bytes .../visualise/protocol/BlockPlace.class | Bin 0 -> 3510 bytes bin/plugin.yml | 345 + bin/reclaimsettings.yml | 16 + bin/timers.yml | 0 src/balances.yml | 1 + src/config.cdl | 306 + src/config.yml | 778 ++ src/event-schedules.txt | 2 + src/faction-users.yml | 1 + src/factions.yml | 1 + src/items.csv | 7449 +++++++++++++++++ src/lives.yml | 1 + src/net/jodah/expiringmap/EntryLoader.java | 17 + .../jodah/expiringmap/ExpirationListener.java | 17 + .../jodah/expiringmap/ExpirationPolicy.java | 11 + .../expiringmap/ExpiringEntryLoader.java | 17 + src/net/jodah/expiringmap/ExpiringMap.java | 1385 +++ src/net/jodah/expiringmap/ExpiringValue.java | 122 + .../jodah/expiringmap/internal/Assert.java | 32 + .../internal/NamedThreadFactory.java | 27 + .../HardcoreFactionsPlugin.java | 1147 +++ .../hardcorefactions/chests/InventoryIO.java | 119 + .../hardcorefactions/chests/Teller.java | 75 + .../chests/VirtualChestManager.java | 178 + .../chests/commands/ChestCommand.java | 87 + .../chests/commands/ClearChestCommand.java | 67 + .../chests/commands/DisposalCommand.java | 44 + .../chests/commands/SaveChestCommand.java | 47 + .../chests/commands/SaveChestsCommand.java | 36 + .../chests/commands/WorkbenchCommand.java | 38 + .../chests/listeners/PlayerListener.java | 64 + .../chests/utils/BukkitUtil.java | 25 + .../hardcorefactions/classes/PvPClass.java | 62 + .../classes/events/PvPClassEquipEvent.java | 30 + .../classes/events/PvPClassUnEquipEvent.java | 30 + .../classes/manager/PvPClassManager.java | 95 + .../hardcorefactions/classes/type/Holder.java | 24 + .../classes/type/archer/ArcherClass.java | 240 + .../classes/type/bard/BardClass.java | 340 + .../classes/type/bard/utilties/BardData.java | 66 + .../type/bard/utilties/BardEffect.java | 21 + .../type/bard/utilties/EffectRestorer.java | 76 + .../classes/type/ghost/GhostClass.java | 237 + .../classes/type/miner/MinerClass.java | 138 + .../classes/type/rogue/RogueClass.java | 197 + .../combatloggers/CombatLogEntry.java | 15 + .../combatloggers/CombatLogListener.java | 176 + .../CustomEntityRegistration.java | 61 + .../combatloggers/LoggerDeathEvent.java | 31 + .../combatloggers/LoggerEntity.java | 189 + .../combatloggers/LoggerSpawnEvent.java | 31 + .../commands/essentials/BackCommand.java | 79 + .../commands/essentials/BroadcastCommand.java | 33 + .../essentials/DisableChatCommand.java | 51 + .../commands/essentials/EnchantCommand.java | 147 + .../commands/essentials/FeedCommand.java | 50 + .../commands/essentials/FlyCommand.java | 65 + .../commands/essentials/FreezeAllCommand.java | 36 + .../commands/essentials/FreezeCommand.java | 67 + .../commands/essentials/GamemodeCommand.java | 188 + .../commands/essentials/GiveCommand.java | 84 + .../commands/essentials/GiveawayCommand.java | 89 + .../commands/essentials/GodCommand.java | 64 + .../commands/essentials/GuiFreezeCommand.java | 114 + .../commands/essentials/HatCommand.java | 54 + .../commands/essentials/HealCommand.java | 53 + .../commands/essentials/HideStaffCommand.java | 41 + .../commands/essentials/IgnoreCommand.java | 220 + .../commands/essentials/InvseeCommand.java | 44 + .../essentials/InvseeOfflineCommand.java | 68 + .../commands/essentials/KillCommand.java | 44 + .../commands/essentials/LagCommand.java | 133 + .../commands/essentials/ListCommand.java | 24 + .../commands/essentials/MessageCommand.java | 57 + .../essentials/MessageSpyCommand.java | 225 + .../commands/essentials/MoreItemsCommand.java | 60 + .../commands/essentials/NewVideoCommand.java | 63 + .../commands/essentials/RecCommand.java | 50 + .../essentials/RemovePermCommand.java | 49 + .../commands/essentials/RenameCommand.java | 69 + .../commands/essentials/ReplyCommand.java | 75 + .../essentials/ServerTimeCommand.java | 40 + .../commands/essentials/SetBorderCommand.java | 98 + .../commands/essentials/SettingsCommand.java | 246 + .../commands/essentials/SlowchatCommand.java | 50 + .../commands/essentials/SpawnCommand.java | 51 + .../commands/essentials/SpawnerCommand.java | 54 + .../commands/essentials/SpeedCommand.java | 120 + .../commands/essentials/StaffChatCommand.java | 49 + .../commands/essentials/StatsCommand.java | 112 + .../commands/essentials/TeleportCommand.java | 198 + .../essentials/ToggleChatCommand.java | 38 + .../essentials/ToggleMessagesCommand.java | 38 + .../essentials/ToggleSoundsCommand.java | 53 + .../commands/essentials/TopCommand.java | 35 + .../commands/essentials/UptimeCommand.java | 34 + .../commands/essentials/VanishCommand.java | 52 + .../commands/essentials/WorldCommand.java | 70 + .../commands/hcf/BardEnergyCommand.java | 117 + .../commands/hcf/BottleCommand.java | 117 + .../commands/hcf/CobbleCommand.java | 59 + .../commands/hcf/CrowbarCommand.java | 49 + .../commands/hcf/EOTWCommand.java | 87 + .../commands/hcf/EOTWReviveCommand.java | 74 + .../commands/hcf/EconomyCommand.java | 183 + .../commands/hcf/EndPortalCommand.java | 176 + .../commands/hcf/FFACommand.java | 36 + .../commands/hcf/FocusCommand.java | 184 + .../commands/hcf/InfoCommand.java | 73 + .../commands/hcf/KitMapGUICommand.java | 112 + .../commands/hcf/LFFCommand.java | 60 + .../commands/hcf/LocationCommand.java | 64 + .../commands/hcf/LogoutCommand.java | 76 + .../commands/hcf/MapKitCommand.java | 39 + .../commands/hcf/MobDropsCommand.java | 59 + .../commands/hcf/PanicCommand.java | 28 + .../commands/hcf/PayCommand.java | 100 + .../commands/hcf/PlayTimeCommand.java | 49 + .../commands/hcf/PvPTimerCommand.java | 109 + .../commands/hcf/RebootCommand.java | 44 + .../commands/hcf/ReclaimCommand.java | 109 + .../commands/hcf/ReclaimResetCommand.java | 53 + .../commands/hcf/RegenCommand.java | 84 + .../commands/hcf/RestoreInventoryCommand.java | 54 + .../commands/hcf/SOTWCommand.java | 106 + .../commands/hcf/SaleCommand.java | 79 + .../commands/hcf/SetCommand.java | 47 + .../commands/hcf/SpawnCannonCommand.java | 190 + .../commands/hcf/StaffModeCommand.java | 48 + .../commands/hcf/StaffReviveCommand.java | 73 + .../commands/hcf/TeamCoordinatesCommand.java | 31 + .../hcf/ToggleCapzoneEntryCommand.java | 49 + .../hcf/ToggleDiamondAlertsCommand.java | 42 + .../commands/hcf/ToggleLightningCommand.java | 47 + .../commands/hcf/ToggleSidebarCommand.java | 49 + .../commands/help/CoordinatesCommand.java | 29 + .../commands/help/FamousCommand.java | 26 + .../commands/help/HelpCommand.java | 37 + .../commands/help/ReportCommand.java | 59 + .../commands/help/RequestCommand.java | 47 + .../commands/help/StoreCommand.java | 28 + .../commands/help/TeamSpeakCommand.java | 18 + .../commands/help/WebsiteCommand.java | 28 + .../commands/help/YoutubeCommand.java | 26 + .../commands/revive/Revive1.java | 98 + .../commands/revive/Revive2.java | 99 + .../commands/revive/ReviveHandler.java | 85 + .../commands/revive/ReviveManager.java | 46 + .../commands/warp/WarpExecutor.java | 146 + .../warp/arguments/WarpListArgument.java | 51 + .../warp/arguments/WarpRemoveArgument.java | 67 + .../warp/arguments/WarpSetArgument.java | 60 + .../warp/utilities/FlatFileWarpManager.java | 103 + .../commands/warp/utilities/Warp.java | 79 + .../commands/warp/utilities/WarpManager.java | 27 + .../hardcorefactions/deathban/Deathban.java | 95 + .../deathban/lives/LivesExecutor.java | 31 + .../lives/argument/LivesCheckArgument.java | 65 + .../argument/LivesCheckDeathbanArgument.java | 101 + .../argument/LivesClearDeathbansArgument.java | 40 + .../lives/argument/LivesGiveArgument.java | 93 + .../lives/argument/LivesReviveArgument.java | 141 + .../lives/argument/LivesSetArgument.java | 67 + .../LivesSetDeathbanTimeArgument.java | 56 + .../lives/argument/LivesTopArgument.java | 75 + .../managers/DeathbanConfigManager.java | 28 + .../deathban/managers/DeathbanFile.java | 159 + .../deathban/managers/DeathbanManager.java | 92 + .../hardcorefactions/economy/Economy.java | 65 + .../economy/manager/EconomyFile.java | 87 + .../hardcorefactions/games/EventExecutor.java | 33 + .../games/arguments/EventCancelArgument.java | 45 + .../games/arguments/EventCreateArgument.java | 88 + .../games/arguments/EventDeleteArgument.java | 66 + .../games/arguments/EventListArgument.java | 48 + .../games/arguments/EventRenameArgument.java | 73 + .../games/arguments/EventSetAreaArgument.java | 114 + .../arguments/EventSetCapzoneArgument.java | 201 + .../games/arguments/EventStartArgument.java | 65 + .../games/arguments/EventUptimeArgument.java | 51 + .../games/conquest/ConquestExecutor.java | 12 + .../conquest/ConquestSetpointsArgument.java | 65 + .../games/endevent/CustomDragon.java | 22 + .../games/endevent/EndEventCommand.java | 57 + .../games/endevent/EndEventHandler.java | 266 + .../games/eotw/EOTWHandler.java | 177 + .../games/fury/FuryExecutor.java | 30 + .../games/fury/FurySetpointsArgument.java | 55 + .../games/key/EnderChestKey.java | 107 + .../hardcorefactions/games/key/Key.java | 50 + .../games/key/KeyListener.java | 256 + .../games/key/KeyManager.java | 119 + .../games/key/LootExecutor.java | 28 + .../games/key/RewardableItemStack.java | 44 + .../games/key/argument/LootAddArgument.java | 64 + .../games/key/argument/LootBankArgument.java | 53 + .../key/argument/LootBroadcastsArgument.java | 28 + .../key/argument/LootCreateArgument.java | 43 + .../key/argument/LootDepositArgument.java | 87 + .../key/argument/LootEventKeyArgument.java | 88 + .../games/key/argument/LootGiveArgument.java | 136 + .../games/key/argument/LootRollsArgument.java | 44 + .../key/argument/LootWithdrawArgument.java | 92 + .../games/key/type/ConquestKey.java | 54 + .../games/key/type/CustomKey.java | 70 + .../games/key/type/ExoKey.java | 47 + .../games/key/type/GodKey.java | 51 + .../games/key/type/KothKey.java | 56 + .../games/key/type/LegendKey.java | 49 + .../games/koth/KothExecutor.java | 40 + .../koth/arguments/KothHelpArgument.java | 44 + .../koth/arguments/KothNextArgument.java | 68 + .../koth/arguments/KothScheduleArgument.java | 85 + .../arguments/KothSetCapDelayArgument.java | 92 + .../arguments/KothTopCapturesArgument.java | 106 + .../mountain/GlowstoneMountainCommand.java | 107 + .../games/skygear/SkyGearCommand.java | 66 + .../skygear/handlers/SkyGearHandler.java | 80 + .../skygear/listeners/SkyGearListener.java | 136 + .../games/sotw/SOTWHandler.java | 60 + .../games/utilities/EventTimer.java | 433 + .../games/utilities/MoreObjects.java | 165 + .../utilities/capturezone/CaptureZone.java | 234 + .../utilities/capturezone/EventCapture.java | 47 + .../utilities/scheduler/EventScheduler.java | 77 + .../utilities/scheduler/EventScheduler2.java | 79 + .../utilities/scheduler/IEventScheduler.java | 9 + .../utilities/tracker/CitadelTracker.java | 56 + .../utilities/tracker/ConquestTracker.java | 208 + .../games/utilities/tracker/EventTracker.java | 36 + .../games/utilities/tracker/FuryTracker.java | 234 + .../games/utilities/tracker/KothTracker.java | 154 + .../utilities/tracker/PalaceTracker.java | 118 + .../games/utilities/type/EventType.java | 53 + .../kit/FlatFileKitManager.java | 155 + src/notifyz/hardcorefactions/kit/Kit.java | 289 + .../hardcorefactions/kit/KitExecutor.java | 111 + .../hardcorefactions/kit/KitListener.java | 190 + .../hardcorefactions/kit/KitManager.java | 29 + .../kit/argument/KitApplyArgument.java | 72 + .../kit/argument/KitCreateArgument.java | 61 + .../kit/argument/KitDeleteArgument.java | 68 + .../kit/argument/KitDisableArgument.java | 61 + .../kit/argument/KitGuiArgument.java | 52 + .../kit/argument/KitListArgument.java | 65 + .../kit/argument/KitPreviewArgument.java | 70 + .../kit/argument/KitRenameArgument.java | 76 + .../kit/argument/KitSetDelayArgument.java | 67 + .../argument/KitSetDescriptionArgument.java | 67 + .../kit/argument/KitSetImageArgument.java | 72 + .../kit/argument/KitSetIndexArgument.java | 82 + .../kit/argument/KitSetItemsArgument.java | 69 + .../kit/argument/KitSetMaxUsesArgument.java | 83 + .../argument/KitSetminplaytimeArgument.java | 66 + .../kit/event/KitApplyEvent.java | 51 + .../kit/event/KitCreateEvent.java | 44 + .../kit/event/KitRemoveEvent.java | 44 + .../kit/event/KitRenameEvent.java | 60 + .../listeners/CoreListener.java | 318 + .../listeners/claim/ClaimWandListener.java | 270 + .../listeners/claim/SubclaimWandListener.java | 240 + .../essentials/AutoMuteListener.java | 37 + .../listeners/essentials/BreedListener.java | 25 + .../listeners/essentials/ChatListener.java | 287 + .../essentials/FreezeAllListener.java | 98 + .../listeners/essentials/FreezeListener.java | 264 + .../FurnaceSmeltSpeederListener.java | 40 + .../essentials/HideStaffListener.java | 33 + .../essentials/MobstackListener.java | 260 + .../essentials/PlayTimeListener.java | 81 + .../essentials/RestoreInventoryListener.java | 154 + .../listeners/essentials/SkullListener.java | 57 + .../essentials/StaffChatListener.java | 66 + .../essentials/WhitelistMessageListener.java | 21 + .../listeners/hcf/AnvilSpamListener.java | 46 + .../listeners/hcf/BedBombingListener.java | 55 + .../listeners/hcf/BookDeenchantListener.java | 61 + .../listeners/hcf/BorderListener.java | 181 + .../listeners/hcf/BottledExpListener.java | 150 + .../listeners/hcf/CobwebListener.java | 53 + .../listeners/hcf/ColorSignListener.java | 26 + .../listeners/hcf/CrowbarListener.java | 205 + .../listeners/hcf/DeathListener.java | 82 + .../listeners/hcf/DeathMessageListener.java | 229 + .../listeners/hcf/DeathSignListener.java | 142 + .../listeners/hcf/DeathbanListener.java | 193 + .../listeners/hcf/EOTWListener.java | 124 + .../listeners/hcf/ElevatorListener.java | 93 + .../listeners/hcf/EnchantLimitListener.java | 175 + .../listeners/hcf/EntityLimitListener.java | 55 + .../listeners/hcf/EventListener.java | 49 + .../listeners/hcf/EventSignListener.java | 107 + .../listeners/hcf/ExpMultiplierListener.java | 106 + .../listeners/hcf/FoundDiamondListener.java | 73 + .../hcf/ItemStatTrackingListener.java | 74 + .../listeners/hcf/KillStreaks.java | 26 + .../listeners/hcf/KillstreakListener.java | 47 + .../listeners/hcf/KitMapKitsListener.java | 308 + .../listeners/hcf/KitMapListener.java | 84 + .../hcf/MinecartElevatorListener.java | 49 + .../hcf/PickaxeStatisticsListener.java | 39 + .../listeners/hcf/PickaxeStatsListener.java | 101 + .../listeners/hcf/PortalListener.java | 139 + .../listeners/hcf/PotionLimitListener.java | 106 + .../listeners/hcf/ProtectionListener.java | 760 ++ .../listeners/hcf/SOTWListener.java | 86 + .../listeners/hcf/ShopListener.java | 115 + .../listeners/hcf/StaffModeListener.java | 712 ++ .../listeners/hcf/Strength2Listener.java | 83 + .../listeners/hcf/StrengthListener.java | 32 + .../listeners/hcf/SubclaimListener.java | 280 + .../listeners/hcf/TeamListener.java | 296 + .../hcf/ThrowableCobwebsListener.java | 135 + .../listeners/hcf/WorldListener.java | 107 + .../hcf/fixes/AnvilDupeFixListener.java | 64 + .../listeners/hcf/fixes/AnvilRepairEvent.java | 66 + .../fixes/ArcherBeaconSpeedFixListener.java | 47 + .../listeners/hcf/fixes/ArmorFixListener.java | 30 + .../hcf/fixes/BeaconStrengthFixListener.java | 49 + .../hcf/fixes/BlockHitFixListener.java | 95 + .../hcf/fixes/BoatGlitchFixListener.java | 38 + .../listeners/hcf/fixes/CrashFixListener.java | 56 + .../hcf/fixes/DuplicationGlitchListener.java | 35 + .../hcf/fixes/EnderChestRemovalListener.java | 58 + .../hcf/fixes/HungerFixListener.java | 43 + .../hcf/fixes/InfinityArrowFixListener.java | 37 + .../listeners/hcf/fixes/MobFixListener.java | 57 + .../hcf/fixes/PearlGlitchListener.java | 103 + .../hcf/fixes/PearlThroughListener.java | 123 + .../hcf/fixes/SplashPotionListener.java | 44 + .../hcf/fixes/SugarCaneFixListener.java | 53 + .../hcf/fixes/VoidGlitchFixListener.java | 40 + .../hcf/fixes/WeatherFixListener.java | 16 + .../scoreboard/BufferedObjective.java | 132 + .../scoreboard/provider/PvPClassHolder.java | 12 + .../provider/ScoreboardProvider.java | 416 + .../scoreboard/timer/TimerExecutor.java | 19 + .../scoreboard/timer/TimerManager.java | 100 + .../timer/arguments/TimerCheckArgument.java | 69 + .../timer/arguments/TimerSetArgument.java | 106 + .../timer/utilities/GlobalTimer.java | 80 + .../timer/utilities/PlayerTimer.java | 198 + .../scoreboard/timer/utilities/Timer.java | 64 + .../timer/utilities/TimerCooldown.java | 112 + .../utilities/events/TimerClearEvent.java | 78 + .../utilities/events/TimerExpireEvent.java | 78 + .../utilities/events/TimerExtendEvent.java | 98 + .../utilities/events/TimerPauseEvent.java | 77 + .../utilities/events/TimerStartEvent.java | 75 + .../timer/utilities/type/AppleTimer.java | 63 + .../utilities/type/ClassWarmupTimer.java | 99 + .../timer/utilities/type/CombatTimer.java | 205 + .../timer/utilities/type/EnderpearlTimer.java | 193 + .../timer/utilities/type/GappleTimer.java | 65 + .../timer/utilities/type/HomeTimer.java | 172 + .../timer/utilities/type/KeySaleTimer.java | 39 + .../timer/utilities/type/LogoutTimer.java | 120 + .../utilities/type/PvPProtectionTimer.java | 323 + .../timer/utilities/type/RebootTimer.java | 39 + .../timer/utilities/type/SaleTimer.java | 39 + .../timer/utilities/type/StuckTimer.java | 159 + .../scoreboard/utilities/PlayerBoard.java | 242 + .../utilities/ScoreboardHandler.java | 142 + .../scoreboard/utilities/SidebarEntry.java | 51 + .../scoreboard/utilities/SidebarFiller.java | 10 + .../scoreboard/utilities/SidebarProvider.java | 17 + .../hardcorefactions/team/TeamManager.java | 211 + .../hardcorefactions/team/claim/Claim.java | 167 + .../team/claim/subclaim/Subclaim.java | 88 + .../team/claim/team/ClaimManager.java | 413 + .../team/claim/team/ClaimSelection.java | 191 + .../team/commands/TeamExecutor.java | 153 + .../team/commands/staff/TeamBanCommand.java | 68 + .../commands/staff/TeamChatSpyCommand.java | 217 + .../commands/staff/TeamClaimForCommand.java | 104 + .../staff/TeamClearClaimsCommand.java | 156 + .../staff/TeamForceDemoteCommand.java | 70 + .../commands/staff/TeamForceJoinCommand.java | 101 + .../commands/staff/TeamForceKickCommand.java | 71 + .../staff/TeamForceLeaderCommand.java | 82 + .../staff/TeamForcePromoteCommand.java | 70 + .../staff/TeamForceUnallyCommand.java | 85 + .../staff/TeamForceUnclaimHereCommand.java | 65 + .../commands/staff/TeamManageCommand.java | 208 + .../team/commands/staff/TeamMuteCommand.java | 66 + .../commands/staff/TeamRemoveCommand.java | 146 + .../TeamSetDeathbanMultiplierCommand.java | 97 + .../commands/staff/TeamSetDtrCommand.java | 104 + .../staff/TeamSetDtrRegenCommand.java | 100 + .../commands/staff/TeamSetLivesCommand.java | 92 + .../team/commands/staff/TeamUnbanCommand.java | 71 + .../commands/staff/TeamUnmuteCommand.java | 72 + .../TeamSubclaimAddMemberCommand.java | 133 + .../subclaim/TeamSubclaimCommandExecutor.java | 102 + .../subclaim/TeamSubclaimCreateCommand.java | 113 + .../TeamSubclaimDelMemberCommand.java | 143 + .../subclaim/TeamSubclaimDeleteCommand.java | 94 + .../subclaim/TeamSubclaimListCommand.java | 67 + .../subclaim/TeamSubclaimMembersCommand.java | 106 + .../subclaim/TeamSubclaimRenameCommand.java | 100 + .../subclaim/TeamSubclaimStartCommand.java | 63 + .../subclaim/TeamUnsubclaimCommand.java | 117 + .../team/commands/team/TeamAcceptCommand.java | 100 + .../team/commands/team/TeamAllyCommand.java | 176 + .../team/TeamAnnouncementCommand.java | 104 + .../team/commands/team/TeamChatCommand.java | 93 + .../commands/team/TeamClaimChunkArgument.java | 63 + .../team/commands/team/TeamClaimCommand.java | 77 + .../team/commands/team/TeamClaimsCommand.java | 112 + .../commands/team/TeamCoLeaderCommand.java | 98 + .../team/commands/team/TeamCreateCommand.java | 81 + .../team/commands/team/TeamDemoteCommand.java | 123 + .../commands/team/TeamDepositCommand.java | 98 + .../team/TeamDepositLivesCommand.java | 100 + .../commands/team/TeamDisbandCommand.java | 56 + .../team/commands/team/TeamHQCommand.java | 150 + .../team/commands/team/TeamHelpCommand.java | 112 + .../team/commands/team/TeamInviteCommand.java | 147 + .../commands/team/TeamInvitesCommand.java | 71 + .../team/commands/team/TeamKickCommand.java | 137 + .../team/commands/team/TeamLeaderCommand.java | 115 + .../team/commands/team/TeamLeaveCommand.java | 62 + .../team/commands/team/TeamListCommand.java | 157 + .../team/commands/team/TeamMapCommand.java | 85 + .../commands/team/TeamMessageCommand.java | 58 + .../team/commands/team/TeamOpenCommand.java | 57 + .../commands/team/TeamPromoteCommand.java | 111 + .../team/commands/team/TeamRenameCommand.java | 105 + .../team/commands/team/TeamReviveCommand.java | 105 + .../team/commands/team/TeamSetHQCommand.java | 83 + .../team/commands/team/TeamShowCommand.java | 90 + .../team/commands/team/TeamStuckCommand.java | 59 + .../team/commands/team/TeamUnallyCommand.java | 143 + .../commands/team/TeamUnclaimCommand.java | 100 + .../commands/team/TeamUninviteCommand.java | 100 + .../commands/team/TeamWithdrawCommand.java | 105 + .../team/events/CaptureZoneEnterEvent.java | 74 + .../team/events/CaptureZoneLeaveEvent.java | 74 + .../team/events/PlayerClaimEnterEvent.java | 93 + .../team/events/PlayerJoinTeamEvent.java | 81 + .../team/events/PlayerJoinedTeamEvent.java | 31 + .../team/events/PlayerLeaveTeamEvent.java | 95 + .../team/events/PlayerLeftTeamEvent.java | 34 + .../team/events/TeamChatEvent.java | 81 + .../team/events/TeamClaimChangeEvent.java | 96 + .../team/events/TeamClaimChangedEvent.java | 65 + .../team/events/TeamCreateEvent.java | 51 + .../team/events/TeamDtrChangeEvent.java | 73 + .../team/events/TeamEvent.java | 33 + .../team/events/TeamRelationCreateEvent.java | 68 + .../team/events/TeamRelationRemoveEvent.java | 70 + .../team/events/TeamRemoveEvent.java | 51 + .../team/events/TeamRenameEvent.java | 85 + .../team/events/cause/ClaimChangeCause.java | 6 + .../team/events/cause/TeamLeaveCause.java | 6 + .../hardcorefactions/team/struct/Role.java | 24 + .../team/struct/chat/TeamChannel.java | 111 + .../team/struct/teamstatus/Raidable.java | 62 + .../team/struct/teamstatus/RegenStatus.java | 23 + .../team/struct/teamstatus/Relation.java | 50 + .../team/type/ClaimableTeam.java | 165 + .../team/type/PlayerTeam.java | 878 ++ .../team/type/system/CapturableFaction.java | 14 + .../team/type/system/ConquestFaction.java | 177 + .../team/type/system/EndPortalFaction.java | 60 + .../team/type/system/EventFaction.java | 97 + .../team/type/system/FuryFaction.java | 206 + .../type/system/GlowstoneMountainFaction.java | 45 + .../team/type/system/KothFaction.java | 104 + .../team/type/system/PalaceFaction.java | 89 + .../team/type/system/RoadFaction.java | 151 + .../team/type/system/SpawnFaction.java | 47 + .../team/type/system/WarzoneFaction.java | 33 + .../team/type/system/WildernessFaction.java | 33 + .../team/utilities/ITeam.java | 250 + .../team/utilities/LandMap.java | 136 + .../team/utilities/TeamFile.java | 393 + .../team/utilities/TeamMember.java | 116 + .../team/utilities/TeamType.java | 6 + .../team/utilities/TeamUser.java | 194 + .../utilities/Configuration.java | 441 + .../utilities/api/IPluginAPI.java | 74 + .../utilities/api/utilties/ICallback.java | 5 + .../api/utilties/IFluentIterableCompat.java | 53 + .../utilities/api/utilties/IGuavaCompat.java | 22 + .../utilities/api/utilties/INameHistory.java | 44 + .../api/utilties/command/ICommandAPI.java | 82 + .../utilties/command/ICommandArgument.java | 118 + .../command/ICommandArgumentExecutor.java | 105 + .../api/utilties/command/ICommandWrapper.java | 104 + .../api/utilties/command/IConstantsAPI.java | 11 + .../utils/IConcurrentValueOrderedMap.java | 94 + .../api/utilties/utils/INmsUtils.java | 53 + .../api/utilties/utils/ISpigotUtils.java | 79 + .../utilities/chat/BukkitUtils.java | 202 + .../utilities/chat/ChatUtil.java | 77 + .../utilities/chat/ClickAction.java | 17 + .../utilities/chat/Color.java | 21 + .../utilities/chat/Configuration.java | 31 + .../utilities/chat/Cooldowns.java | 54 + .../chat/DelayedMessageRunnable.java | 21 + .../utilities/chat/FancyMessage.java | 272 + .../utilities/chat/FileConfig.java | 62 + .../utilities/chat/HoverAction.java | 17 + .../hardcorefactions/utilities/chat/Lang.java | 100 + .../utilities/chat/MessageEvent.java | 88 + .../utilities/chat/MessagePart.java | 47 + .../hardcorefactions/utilities/chat/Text.java | 139 + .../utilities/chat/TextUtils.java | 34 + .../utilities/chat/Trans.java | 114 + .../utilities/crowbar/Crowbar.java | 173 + .../utilities/cuboid/CoordinatePair.java | 70 + .../utilities/cuboid/Cuboid.java | 521 ++ .../utilities/cuboid/CuboidBlockIterator.java | 56 + .../utilities/cuboid/CuboidDirection.java | 68 + .../cuboid/CuboidLocationIterator.java | 56 + .../utilities/cuboid/NamedCuboid.java | 56 + .../utilities/freeze/FrozenInventory.java | 31 + .../utilities/freeze/FrozenManager.java | 26 + .../utilities/imagemessage/ImageChar.java | 15 + .../utilities/imagemessage/ImageMessage.java | 145 + .../inventory/InventoryRestoreHandler.java | 98 + .../inventory/InventorySerialisation.java | 81 + .../utilities/inventory/InventoryUtils.java | 125 + .../utilities/inventory/ItemBuilder.java | 159 + .../utilities/inventory/ItemStackUtils.java | 235 + .../utilities/inventory/Menu.java | 224 + .../utilities/inventory/PickStats.java | 52 + .../utilities/inventory/SettingsBuilder.java | 95 + .../utilities/inventory/item/ItemDB.java | 27 + .../utilities/inventory/item/ItemData.java | 107 + .../utilities/inventory/item/ManagedFile.java | 87 + .../inventory/item/SimpleItemDB.java | 330 + .../inventory/restoration/Inventories.java | 19 + .../restoration/InventoryManager.java | 75 + .../inventory/restoration/RestoreManager.java | 152 + .../inventory/restoration/TimeUtil.java | 12 + .../utilities/user/IConsoleUser.java | 26 + .../utilities/user/IUser.java | 318 + .../utilities/user/IUserManager.java | 97 + .../utilities/user/UserManager.java | 125 + .../utils/ConcurrentValueOrderedMap.java | 92 + .../utilities/utils/Config.java | 95 + .../utilities/utils/CountRemover.java | 19 + .../utilities/utils/DataHandler.java | 90 + .../utilities/utils/DateTimeFormats.java | 71 + .../utils/DelayedMessageRunnable.java | 27 + .../utilities/utils/DurationFormatter.java | 23 + .../utilities/utils/Embedded.java | 30 + .../utilities/utils/ExperienceManager.java | 134 + .../utilities/utils/GenericUtils.java | 72 + .../utilities/utils/JavaUtils.java | 139 + .../utilities/utils/MapSorting.java | 79 + .../utilities/utils/Mapper.java | 7 + .../utilities/utils/NMSHandler.java | 51 + .../utilities/utils/NameHistory.java | 37 + .../utilities/utils/NmsUtils.java | 83 + .../utilities/utils/ParticleEffect.java | 120 + .../utilities/utils/PersistableLocation.java | 256 + .../utilities/utils/RandomUtils.java | 20 + .../utilities/utils/Reflection.java | 83 + .../utilities/utils/ServerHandler.java | 113 + .../utilities/utils/ServerParticipator.java | 153 + .../utilities/utils/SignHandler.java | 134 + .../utilities/utils/SpamDetectEvent.java | 48 + .../utilities/utils/SpigotUtils.java | 103 + .../utilities/utils/StaffPriority.java | 47 + .../utilities/utils/TimeUtils.java | 76 + .../utilities/utils/Tuple.java | 15 + .../utilities/utils/UUIDFetcher.java | 100 + .../utilities/utils/Utils.java | 114 + .../utilities/visualise/BlockFiller.java | 25 + .../utilities/visualise/ProtocolLibHook.java | 30 + .../utilities/visualise/VisualBlock.java | 15 + .../utilities/visualise/VisualBlockData.java | 41 + .../utilities/visualise/VisualType.java | 149 + .../utilities/visualise/VisualiseHandler.java | 210 + .../utilities/visualise/VisualiseUtil.java | 92 + .../visualise/WallBorderListener.java | 177 + .../visualise/protocol/BlockDig.java | 60 + .../visualise/protocol/BlockPlace.java | 67 + src/plugin.yml | 345 + src/reclaimsettings.yml | 16 + src/timers.yml | 0 1295 files changed, 75013 insertions(+) create mode 100644 .classpath create mode 100644 .project create mode 100644 .settings/org.eclipse.jdt.core.prefs create mode 100644 bin/balances.yml create mode 100644 bin/config.cdl create mode 100644 bin/config.yml create mode 100644 bin/event-schedules.txt create mode 100644 bin/faction-users.yml create mode 100644 bin/factions.yml create mode 100644 bin/items.csv create mode 100644 bin/lives.yml create mode 100644 bin/net/jodah/expiringmap/EntryLoader.class create mode 100644 bin/net/jodah/expiringmap/ExpirationListener.class create mode 100644 bin/net/jodah/expiringmap/ExpirationPolicy.class create mode 100644 bin/net/jodah/expiringmap/ExpiringEntryLoader.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$1.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$2.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$3.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$4.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$5.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$6.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$Builder.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$AbstractHashIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$EntryIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$KeyIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$ValueIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryMap.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$AbstractHashIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$EntryIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$ExpiringEntryIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$KeyIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$ValueIterator.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap$ExpiringEntry.class create mode 100644 bin/net/jodah/expiringmap/ExpiringMap.class create mode 100644 bin/net/jodah/expiringmap/ExpiringValue.class create mode 100644 bin/net/jodah/expiringmap/internal/Assert.class create mode 100644 bin/net/jodah/expiringmap/internal/NamedThreadFactory.class create mode 100644 bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$1.class create mode 100644 bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$2.class create mode 100644 bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$3.class create mode 100644 bin/notifyz/hardcorefactions/HardcoreFactionsPlugin.class create mode 100644 bin/notifyz/hardcorefactions/chests/InventoryIO.class create mode 100644 bin/notifyz/hardcorefactions/chests/Teller$Type.class create mode 100644 bin/notifyz/hardcorefactions/chests/Teller.class create mode 100644 bin/notifyz/hardcorefactions/chests/VirtualChestManager$1.class create mode 100644 bin/notifyz/hardcorefactions/chests/VirtualChestManager.class create mode 100644 bin/notifyz/hardcorefactions/chests/commands/ChestCommand.class create mode 100644 bin/notifyz/hardcorefactions/chests/commands/ClearChestCommand.class create mode 100644 bin/notifyz/hardcorefactions/chests/commands/DisposalCommand.class create mode 100644 bin/notifyz/hardcorefactions/chests/commands/SaveChestCommand.class create mode 100644 bin/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.class create mode 100644 bin/notifyz/hardcorefactions/chests/commands/WorkbenchCommand.class create mode 100644 bin/notifyz/hardcorefactions/chests/listeners/PlayerListener.class create mode 100644 bin/notifyz/hardcorefactions/chests/utils/BukkitUtil.class create mode 100644 bin/notifyz/hardcorefactions/classes/PvPClass.class create mode 100644 bin/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.class create mode 100644 bin/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.class create mode 100644 bin/notifyz/hardcorefactions/classes/manager/PvPClassManager.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/Holder.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/archer/ArcherClass$1.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/archer/ArcherClass.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/bard/BardClass$1.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/bard/BardClass.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/bard/utilties/BardEffect.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/bard/utilties/EffectRestorer.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass$1.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass$2.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/miner/MinerClass.class create mode 100644 bin/notifyz/hardcorefactions/classes/type/rogue/RogueClass.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/CombatLogEntry.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/CombatLogListener$LoggerRemovable.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/CombatLogListener.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/LoggerEntity$PlayerNmsResult.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/LoggerEntity.class create mode 100644 bin/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/BackCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/BroadcastCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/DisableChatCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/EnchantCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/FeedCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/FlyCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/FreezeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/GamemodeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/GiveCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/GiveawayCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/GodCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/GuiFreezeCommand$1.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/GuiFreezeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/HatCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/HealCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreAddArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreClearArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreDeleteArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreListArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/InvseeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/InvseeOfflineCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/KillCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/LagCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/ListCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MessageCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$IgnoreClearArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyAddArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyDeleteArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyListArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/NewVideoCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/RecCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/RenameCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/ReplyCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/ServerTimeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/SettingsCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/SpawnCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/SpeedCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/StaffChatCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/StatsCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/TeleportCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/ToggleChatCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/ToggleSoundsCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/TopCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/UptimeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/VanishCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/essentials/WorldCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/BottleCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/CobbleCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/CrowbarCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EOTWCommand$EotwPrompt.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EOTWCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EOTWReviveCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EconomyCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand$1.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand$LocationPair.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/FFACommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$1.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$2$1.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$2.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$3.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/FocusCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/InfoCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand$KitMapTask.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/LFFCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/LocationCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/LogoutCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/MapKitCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/PanicCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/PayCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/RebootCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ReclaimCommand$Rank.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ReclaimCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ReclaimResetCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/RegenCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/RestoreInventoryCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/SOTWCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/SaleCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/SetCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/SpawnCannonCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/StaffModeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/StaffReviveCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/TeamCoordinatesCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ToggleCapzoneEntryCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ToggleDiamondAlertsCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ToggleLightningCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/hcf/ToggleSidebarCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/CoordinatesCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/FamousCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/HelpCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/ReportCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/RequestCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/StoreCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/TeamSpeakCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/WebsiteCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/help/YoutubeCommand.class create mode 100644 bin/notifyz/hardcorefactions/commands/revive/Revive1.class create mode 100644 bin/notifyz/hardcorefactions/commands/revive/Revive2.class create mode 100644 bin/notifyz/hardcorefactions/commands/revive/ReviveHandler.class create mode 100644 bin/notifyz/hardcorefactions/commands/revive/ReviveManager.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/WarpExecutor$1.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/WarpExecutor.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/arguments/WarpListArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/arguments/WarpRemoveArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/arguments/WarpSetArgument.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/utilities/FlatFileWarpManager.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/utilities/Warp.class create mode 100644 bin/notifyz/hardcorefactions/commands/warp/utilities/WarpManager.class create mode 100644 bin/notifyz/hardcorefactions/deathban/Deathban.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/LivesExecutor.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckDeathbanArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesClearDeathbansArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesGiveArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesReviveArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesSetArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesSetDeathbanTimeArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument$1$1.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument$1.class create mode 100644 bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument.class create mode 100644 bin/notifyz/hardcorefactions/deathban/managers/DeathbanConfigManager.class create mode 100644 bin/notifyz/hardcorefactions/deathban/managers/DeathbanFile$1.class create mode 100644 bin/notifyz/hardcorefactions/deathban/managers/DeathbanFile.class create mode 100644 bin/notifyz/hardcorefactions/deathban/managers/DeathbanManager.class create mode 100644 bin/notifyz/hardcorefactions/economy/Economy.class create mode 100644 bin/notifyz/hardcorefactions/economy/manager/EconomyFile$1.class create mode 100644 bin/notifyz/hardcorefactions/economy/manager/EconomyFile.class create mode 100644 bin/notifyz/hardcorefactions/games/EventExecutor.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventCancelArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventCreateArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventDeleteArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventListArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventRenameArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventSetAreaArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventSetCapzoneArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventStartArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/arguments/EventUptimeArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/conquest/ConquestExecutor.class create mode 100644 bin/notifyz/hardcorefactions/games/conquest/ConquestSetpointsArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/endevent/CustomDragon.class create mode 100644 bin/notifyz/hardcorefactions/games/endevent/EndEventCommand.class create mode 100644 bin/notifyz/hardcorefactions/games/endevent/EndEventHandler.class create mode 100644 bin/notifyz/hardcorefactions/games/eotw/EOTWHandler$EotwRunnable.class create mode 100644 bin/notifyz/hardcorefactions/games/eotw/EOTWHandler.class create mode 100644 bin/notifyz/hardcorefactions/games/fury/FuryExecutor.class create mode 100644 bin/notifyz/hardcorefactions/games/fury/FurySetpointsArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/EnderChestKey.class create mode 100644 bin/notifyz/hardcorefactions/games/key/Key.class create mode 100644 bin/notifyz/hardcorefactions/games/key/KeyListener$1.class create mode 100644 bin/notifyz/hardcorefactions/games/key/KeyListener$2.class create mode 100644 bin/notifyz/hardcorefactions/games/key/KeyListener$3.class create mode 100644 bin/notifyz/hardcorefactions/games/key/KeyListener$4.class create mode 100644 bin/notifyz/hardcorefactions/games/key/KeyListener.class create mode 100644 bin/notifyz/hardcorefactions/games/key/KeyManager.class create mode 100644 bin/notifyz/hardcorefactions/games/key/LootExecutor.class create mode 100644 bin/notifyz/hardcorefactions/games/key/RewardableItemStack.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootAddArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootBankArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootBroadcastsArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootCreateArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootDepositArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootEventKeyArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootGiveArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootRollsArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/argument/LootWithdrawArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/key/type/ConquestKey.class create mode 100644 bin/notifyz/hardcorefactions/games/key/type/CustomKey.class create mode 100644 bin/notifyz/hardcorefactions/games/key/type/ExoKey.class create mode 100644 bin/notifyz/hardcorefactions/games/key/type/GodKey.class create mode 100644 bin/notifyz/hardcorefactions/games/key/type/KothKey.class create mode 100644 bin/notifyz/hardcorefactions/games/key/type/LegendKey.class create mode 100644 bin/notifyz/hardcorefactions/games/koth/KothExecutor.class create mode 100644 bin/notifyz/hardcorefactions/games/koth/arguments/KothHelpArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/koth/arguments/KothNextArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/koth/arguments/KothScheduleArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/koth/arguments/KothSetCapDelayArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/koth/arguments/KothTopCapturesArgument.class create mode 100644 bin/notifyz/hardcorefactions/games/mountain/GlowstoneMountainCommand.class create mode 100644 bin/notifyz/hardcorefactions/games/skygear/SkyGearCommand.class create mode 100644 bin/notifyz/hardcorefactions/games/skygear/handlers/SkyGearHandler.class create mode 100644 bin/notifyz/hardcorefactions/games/skygear/listeners/SkyGearListener.class create mode 100644 bin/notifyz/hardcorefactions/games/sotw/SOTWHandler$SotwRunnable.class create mode 100644 bin/notifyz/hardcorefactions/games/sotw/SOTWHandler.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/EventTimer$1.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/EventTimer.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/MoreObjects$ToStringHelper$ValueHolder.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/MoreObjects$ToStringHelper.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/MoreObjects.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/capturezone/CaptureZone.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/capturezone/EventCapture.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler2.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/scheduler/IEventScheduler.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/tracker/CitadelTracker.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/tracker/ConquestTracker.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/tracker/EventTracker.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/tracker/FuryTracker.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/tracker/KothTracker.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/tracker/PalaceTracker.class create mode 100644 bin/notifyz/hardcorefactions/games/utilities/type/EventType.class create mode 100644 bin/notifyz/hardcorefactions/kit/FlatFileKitManager.class create mode 100644 bin/notifyz/hardcorefactions/kit/Kit.class create mode 100644 bin/notifyz/hardcorefactions/kit/KitExecutor.class create mode 100644 bin/notifyz/hardcorefactions/kit/KitListener.class create mode 100644 bin/notifyz/hardcorefactions/kit/KitManager.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitApplyArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitCreateArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitDeleteArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitDisableArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitGuiArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitListArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitPreviewArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitRenameArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetDelayArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetDescriptionArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetImageArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetIndexArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetItemsArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetMaxUsesArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/argument/KitSetminplaytimeArgument.class create mode 100644 bin/notifyz/hardcorefactions/kit/event/KitApplyEvent.class create mode 100644 bin/notifyz/hardcorefactions/kit/event/KitCreateEvent.class create mode 100644 bin/notifyz/hardcorefactions/kit/event/KitRemoveEvent.class create mode 100644 bin/notifyz/hardcorefactions/kit/event/KitRenameEvent.class create mode 100644 bin/notifyz/hardcorefactions/listeners/CoreListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/CoreListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener$2.class create mode 100644 bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/claim/SubclaimWandListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/claim/SubclaimWandListener$2.class create mode 100644 bin/notifyz/hardcorefactions/listeners/claim/SubclaimWandListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/AutoMuteListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/BreedListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/ChatListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/FreezeAllListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/FreezeListener$AlertTask.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/FreezeListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/FurnaceSmeltSpeederListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/HideStaffListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/MobstackListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/PlayTimeListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/RestoreInventoryListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/SkullListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/StaffChatListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/essentials/WhitelistMessageListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/AnvilSpamListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/BedBombingListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/BookDeenchantListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/BorderListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/BottledExpListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/CobwebListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/CobwebListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ColorSignListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/CrowbarListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/DeathListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/DeathMessageListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/DeathSignListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/DeathbanListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/DeathbanListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/EOTWListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ElevatorListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/EnchantLimitListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/EntityLimitListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/EventListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/EventSignListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ExpMultiplierListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/FoundDiamondListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ItemStatTrackingListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/KillStreaks.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/KillstreakListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/KitMapKitsListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/KitMapListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/MinecartElevatorListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/PickaxeStatisticsListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/PickaxeStatsListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/PortalListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/PotionLimitListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ProtectionListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/SOTWListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ShopListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/StaffModeListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/StaffModeListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/Strength2Listener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/StrengthListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/SubclaimListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/TeamListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ThrowableCobwebsListener$1.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/ThrowableCobwebsListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/WorldListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/AnvilDupeFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/AnvilRepairEvent.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/ArcherBeaconSpeedFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/ArmorFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/BeaconStrengthFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/BlockHitFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/BoatGlitchFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/CrashFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/DuplicationGlitchListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/EnderChestRemovalListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/HungerFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/InfinityArrowFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/MobFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/PearlGlitchListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/PearlThroughListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/SplashPotionListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener$Util.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/VoidGlitchFixListener.class create mode 100644 bin/notifyz/hardcorefactions/listeners/hcf/fixes/WeatherFixListener.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/BufferedObjective$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/BufferedObjective.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/provider/PvPClassHolder.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/provider/ScoreboardProvider.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/TimerExecutor.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/TimerManager.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerSetArgument.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/GlobalTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/PlayerTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/Timer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerClearEvent.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExpireEvent.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExtendEvent.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerPauseEvent.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerStartEvent.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/AppleTimer$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/AppleTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer$2.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/CombatTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/EnderpearlTimer$PearlNameFaker.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/EnderpearlTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/GappleTimer$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/GappleTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/HomeTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/KeySaleTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/LogoutTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/PvPProtectionTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/RebootTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/SaleTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/StuckTimer.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard$1.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard$2.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard$3.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/ScoreboardHandler.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarEntry.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarFiller.class create mode 100644 bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarProvider.class create mode 100644 bin/notifyz/hardcorefactions/team/TeamManager.class create mode 100644 bin/notifyz/hardcorefactions/team/claim/Claim.class create mode 100644 bin/notifyz/hardcorefactions/team/claim/subclaim/Subclaim.class create mode 100644 bin/notifyz/hardcorefactions/team/claim/team/ClaimManager.class create mode 100644 bin/notifyz/hardcorefactions/team/claim/team/ClaimSelection.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/TeamExecutor.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamBanCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamChatSpyCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamClaimForCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamClearClaimsCommand$ClaimClearAllPrompt.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamClearClaimsCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForceDemoteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForceJoinCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForceKickCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForceLeaderCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForcePromoteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForceUnallyCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamForceUnclaimHereCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamManageCommand$FactionPrompt.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamManageCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamMuteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand$RemoveAllPrompt.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDeathbanMultiplierCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDtrCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDtrRegenCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamSetLivesCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamUnbanCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/staff/TeamUnmuteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimAddMemberCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimCommandExecutor.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimCreateCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimDelMemberCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimDeleteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimListCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimMembersCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimRenameCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimStartCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/subclaim/TeamUnsubclaimCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamAcceptCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamAllyCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamAnnouncementCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamChatCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamClaimChunkArgument.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamClaimCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamClaimsCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamCoLeaderCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamCreateCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamDemoteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamDepositCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamDepositLivesCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamDisbandCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamHQCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamHelpCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamInviteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamInvitesCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamKickCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamLeaderCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamLeaveCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamListCommand$1.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamListCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamMapCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamMessageCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamOpenCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamPromoteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamRenameCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamReviveCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamSetHQCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamShowCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamStuckCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamUnallyCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamUnclaimCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamUninviteCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/commands/team/TeamWithdrawCommand.class create mode 100644 bin/notifyz/hardcorefactions/team/events/CaptureZoneEnterEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/CaptureZoneLeaveEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/PlayerClaimEnterEvent$EnterCause.class create mode 100644 bin/notifyz/hardcorefactions/team/events/PlayerClaimEnterEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/PlayerJoinTeamEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/PlayerJoinedTeamEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/PlayerLeaveTeamEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/PlayerLeftTeamEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamChatEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamClaimChangeEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamClaimChangedEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamCreateEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamDtrChangeEvent$DtrUpdateCause.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamDtrChangeEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamRelationCreateEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamRelationRemoveEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamRemoveEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/TeamRenameEvent.class create mode 100644 bin/notifyz/hardcorefactions/team/events/cause/ClaimChangeCause.class create mode 100644 bin/notifyz/hardcorefactions/team/events/cause/TeamLeaveCause.class create mode 100644 bin/notifyz/hardcorefactions/team/struct/Role.class create mode 100644 bin/notifyz/hardcorefactions/team/struct/chat/TeamChannel.class create mode 100644 bin/notifyz/hardcorefactions/team/struct/teamstatus/Raidable.class create mode 100644 bin/notifyz/hardcorefactions/team/struct/teamstatus/RegenStatus.class create mode 100644 bin/notifyz/hardcorefactions/team/struct/teamstatus/Relation.class create mode 100644 bin/notifyz/hardcorefactions/team/type/ClaimableTeam$1.class create mode 100644 bin/notifyz/hardcorefactions/team/type/ClaimableTeam.class create mode 100644 bin/notifyz/hardcorefactions/team/type/PlayerTeam$1.class create mode 100644 bin/notifyz/hardcorefactions/team/type/PlayerTeam.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/CapturableFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/ConquestFaction$ConquestZone.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/ConquestFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/EndPortalFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/EventFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/FuryFaction$FuryZone.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/FuryFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/GlowstoneMountainFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/KothFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/PalaceFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/RoadFaction$EastRoadFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/RoadFaction$NorthRoadFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/RoadFaction$SouthRoadFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/RoadFaction$WestRoadFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/RoadFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/SpawnFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/WarzoneFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/type/system/WildernessFaction.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/ITeam.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/LandMap.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/TeamFile.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/TeamMember.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/TeamType.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/TeamUser$1.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/TeamUser$2.class create mode 100644 bin/notifyz/hardcorefactions/team/utilities/TeamUser.class create mode 100644 bin/notifyz/hardcorefactions/utilities/Configuration.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/IPluginAPI.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/ICallback.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/IFluentIterableCompat$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/IFluentIterableCompat.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/IGuavaCompat.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/INameHistory.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandAPI.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandArgument.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandArgumentExecutor.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandWrapper$ArgumentComparator.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandWrapper.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/command/IConstantsAPI.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap$InternalEntry.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/utils/INmsUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/api/utilties/utils/ISpigotUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/BukkitUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/ChatUtil.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/ClickAction.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/Color.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/Configuration.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/Cooldowns.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/DelayedMessageRunnable.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/FancyMessage.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/FileConfig.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/HoverAction.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/Lang.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/MessageEvent.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/MessagePart.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/Text.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/TextUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/chat/Trans.class create mode 100644 bin/notifyz/hardcorefactions/utilities/crowbar/Crowbar.class create mode 100644 bin/notifyz/hardcorefactions/utilities/cuboid/CoordinatePair.class create mode 100644 bin/notifyz/hardcorefactions/utilities/cuboid/Cuboid.class create mode 100644 bin/notifyz/hardcorefactions/utilities/cuboid/CuboidBlockIterator.class create mode 100644 bin/notifyz/hardcorefactions/utilities/cuboid/CuboidDirection.class create mode 100644 bin/notifyz/hardcorefactions/utilities/cuboid/CuboidLocationIterator.class create mode 100644 bin/notifyz/hardcorefactions/utilities/cuboid/NamedCuboid.class create mode 100644 bin/notifyz/hardcorefactions/utilities/freeze/FrozenInventory.class create mode 100644 bin/notifyz/hardcorefactions/utilities/freeze/FrozenManager.class create mode 100644 bin/notifyz/hardcorefactions/utilities/imagemessage/ImageChar.class create mode 100644 bin/notifyz/hardcorefactions/utilities/imagemessage/ImageMessage.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler$InventoryState.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/InventorySerialisation.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/InventoryUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/ItemBuilder.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/ItemStackUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/Menu$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/Menu$ItemAction.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/Menu.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/PickStats.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/SettingsBuilder.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/item/ItemDB.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/item/ItemData.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/item/ManagedFile.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/restoration/Inventories.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/restoration/InventoryManager.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/restoration/RestoreManager.class create mode 100644 bin/notifyz/hardcorefactions/utilities/inventory/restoration/TimeUtil.class create mode 100644 bin/notifyz/hardcorefactions/utilities/user/IConsoleUser.class create mode 100644 bin/notifyz/hardcorefactions/utilities/user/IUser.class create mode 100644 bin/notifyz/hardcorefactions/utilities/user/IUserManager.class create mode 100644 bin/notifyz/hardcorefactions/utilities/user/UserManager.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap$InternalEntry.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/Config.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/CountRemover$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/CountRemover.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DataHandler$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DataHandler.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$2.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$3.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DelayedMessageRunnable.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/DurationFormatter.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/Embedded.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/ExperienceManager.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/GenericUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/JavaUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/MapSorting$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/MapSorting$2.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/MapSorting.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/Mapper.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/NMSHandler.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/NameHistory.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/NmsUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/ParticleEffect.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/PersistableLocation.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/RandomUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/Reflection.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/ServerHandler.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/ServerParticipator.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/SignHandler$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/SignHandler$SignChange.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/SignHandler.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/SpamDetectEvent.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/SpigotUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/StaffPriority.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/TimeUtils$IntegerCountdown.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/TimeUtils$LongCountdown.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/TimeUtils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/Tuple.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/UUIDFetcher.class create mode 100644 bin/notifyz/hardcorefactions/utilities/utils/Utils.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/BlockFiller.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/ProtocolLibHook.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualBlock.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualBlockData.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$1$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$2$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$2.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$3$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$3.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$4$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$4.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$5$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType$5.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualType.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualiseHandler.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/VisualiseUtil.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener$1.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener$2.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/protocol/BlockDig.class create mode 100644 bin/notifyz/hardcorefactions/utilities/visualise/protocol/BlockPlace.class create mode 100644 bin/plugin.yml create mode 100644 bin/reclaimsettings.yml create mode 100644 bin/timers.yml create mode 100644 src/balances.yml create mode 100644 src/config.cdl create mode 100644 src/config.yml create mode 100644 src/event-schedules.txt create mode 100644 src/faction-users.yml create mode 100644 src/factions.yml create mode 100644 src/items.csv create mode 100644 src/lives.yml create mode 100644 src/net/jodah/expiringmap/EntryLoader.java create mode 100644 src/net/jodah/expiringmap/ExpirationListener.java create mode 100644 src/net/jodah/expiringmap/ExpirationPolicy.java create mode 100644 src/net/jodah/expiringmap/ExpiringEntryLoader.java create mode 100644 src/net/jodah/expiringmap/ExpiringMap.java create mode 100644 src/net/jodah/expiringmap/ExpiringValue.java create mode 100644 src/net/jodah/expiringmap/internal/Assert.java create mode 100644 src/net/jodah/expiringmap/internal/NamedThreadFactory.java create mode 100644 src/notifyz/hardcorefactions/HardcoreFactionsPlugin.java create mode 100644 src/notifyz/hardcorefactions/chests/InventoryIO.java create mode 100644 src/notifyz/hardcorefactions/chests/Teller.java create mode 100644 src/notifyz/hardcorefactions/chests/VirtualChestManager.java create mode 100644 src/notifyz/hardcorefactions/chests/commands/ChestCommand.java create mode 100644 src/notifyz/hardcorefactions/chests/commands/ClearChestCommand.java create mode 100644 src/notifyz/hardcorefactions/chests/commands/DisposalCommand.java create mode 100644 src/notifyz/hardcorefactions/chests/commands/SaveChestCommand.java create mode 100644 src/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.java create mode 100644 src/notifyz/hardcorefactions/chests/commands/WorkbenchCommand.java create mode 100644 src/notifyz/hardcorefactions/chests/listeners/PlayerListener.java create mode 100644 src/notifyz/hardcorefactions/chests/utils/BukkitUtil.java create mode 100644 src/notifyz/hardcorefactions/classes/PvPClass.java create mode 100644 src/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.java create mode 100644 src/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.java create mode 100644 src/notifyz/hardcorefactions/classes/manager/PvPClassManager.java create mode 100644 src/notifyz/hardcorefactions/classes/type/Holder.java create mode 100644 src/notifyz/hardcorefactions/classes/type/archer/ArcherClass.java create mode 100644 src/notifyz/hardcorefactions/classes/type/bard/BardClass.java create mode 100644 src/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.java create mode 100644 src/notifyz/hardcorefactions/classes/type/bard/utilties/BardEffect.java create mode 100644 src/notifyz/hardcorefactions/classes/type/bard/utilties/EffectRestorer.java create mode 100644 src/notifyz/hardcorefactions/classes/type/ghost/GhostClass.java create mode 100644 src/notifyz/hardcorefactions/classes/type/miner/MinerClass.java create mode 100644 src/notifyz/hardcorefactions/classes/type/rogue/RogueClass.java create mode 100644 src/notifyz/hardcorefactions/combatloggers/CombatLogEntry.java create mode 100644 src/notifyz/hardcorefactions/combatloggers/CombatLogListener.java create mode 100644 src/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.java create mode 100644 src/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.java create mode 100644 src/notifyz/hardcorefactions/combatloggers/LoggerEntity.java create mode 100644 src/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/BackCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/BroadcastCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/DisableChatCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/EnchantCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/FeedCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/FlyCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/FreezeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/GamemodeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/GiveCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/GiveawayCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/GodCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/GuiFreezeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/HatCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/HealCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/InvseeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/InvseeOfflineCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/KillCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/LagCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/ListCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/MessageCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/NewVideoCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/RecCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/RenameCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/ReplyCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/ServerTimeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/SettingsCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/SpawnCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/SpeedCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/StaffChatCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/StatsCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/TeleportCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/ToggleChatCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/ToggleSoundsCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/TopCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/UptimeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/VanishCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/essentials/WorldCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/BottleCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/CobbleCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/CrowbarCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/EOTWCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/EOTWReviveCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/EconomyCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/FFACommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/FocusCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/InfoCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/LFFCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/LocationCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/LogoutCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/MapKitCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/PanicCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/PayCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/RebootCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/ReclaimCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/ReclaimResetCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/RegenCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/RestoreInventoryCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/SOTWCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/SaleCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/SetCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/SpawnCannonCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/StaffModeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/StaffReviveCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/TeamCoordinatesCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/ToggleCapzoneEntryCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/ToggleDiamondAlertsCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/ToggleLightningCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/hcf/ToggleSidebarCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/CoordinatesCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/FamousCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/HelpCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/ReportCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/RequestCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/StoreCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/TeamSpeakCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/WebsiteCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/help/YoutubeCommand.java create mode 100644 src/notifyz/hardcorefactions/commands/revive/Revive1.java create mode 100644 src/notifyz/hardcorefactions/commands/revive/Revive2.java create mode 100644 src/notifyz/hardcorefactions/commands/revive/ReviveHandler.java create mode 100644 src/notifyz/hardcorefactions/commands/revive/ReviveManager.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/WarpExecutor.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/arguments/WarpListArgument.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/arguments/WarpRemoveArgument.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/arguments/WarpSetArgument.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/utilities/FlatFileWarpManager.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/utilities/Warp.java create mode 100644 src/notifyz/hardcorefactions/commands/warp/utilities/WarpManager.java create mode 100644 src/notifyz/hardcorefactions/deathban/Deathban.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/LivesExecutor.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckDeathbanArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesClearDeathbansArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesGiveArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesReviveArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesSetArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesSetDeathbanTimeArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument.java create mode 100644 src/notifyz/hardcorefactions/deathban/managers/DeathbanConfigManager.java create mode 100644 src/notifyz/hardcorefactions/deathban/managers/DeathbanFile.java create mode 100644 src/notifyz/hardcorefactions/deathban/managers/DeathbanManager.java create mode 100644 src/notifyz/hardcorefactions/economy/Economy.java create mode 100644 src/notifyz/hardcorefactions/economy/manager/EconomyFile.java create mode 100644 src/notifyz/hardcorefactions/games/EventExecutor.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventCancelArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventCreateArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventDeleteArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventListArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventRenameArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventSetAreaArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventSetCapzoneArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventStartArgument.java create mode 100644 src/notifyz/hardcorefactions/games/arguments/EventUptimeArgument.java create mode 100644 src/notifyz/hardcorefactions/games/conquest/ConquestExecutor.java create mode 100644 src/notifyz/hardcorefactions/games/conquest/ConquestSetpointsArgument.java create mode 100644 src/notifyz/hardcorefactions/games/endevent/CustomDragon.java create mode 100644 src/notifyz/hardcorefactions/games/endevent/EndEventCommand.java create mode 100644 src/notifyz/hardcorefactions/games/endevent/EndEventHandler.java create mode 100644 src/notifyz/hardcorefactions/games/eotw/EOTWHandler.java create mode 100644 src/notifyz/hardcorefactions/games/fury/FuryExecutor.java create mode 100644 src/notifyz/hardcorefactions/games/fury/FurySetpointsArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/EnderChestKey.java create mode 100644 src/notifyz/hardcorefactions/games/key/Key.java create mode 100644 src/notifyz/hardcorefactions/games/key/KeyListener.java create mode 100644 src/notifyz/hardcorefactions/games/key/KeyManager.java create mode 100644 src/notifyz/hardcorefactions/games/key/LootExecutor.java create mode 100644 src/notifyz/hardcorefactions/games/key/RewardableItemStack.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootAddArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootBankArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootBroadcastsArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootCreateArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootDepositArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootEventKeyArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootGiveArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootRollsArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/argument/LootWithdrawArgument.java create mode 100644 src/notifyz/hardcorefactions/games/key/type/ConquestKey.java create mode 100644 src/notifyz/hardcorefactions/games/key/type/CustomKey.java create mode 100644 src/notifyz/hardcorefactions/games/key/type/ExoKey.java create mode 100644 src/notifyz/hardcorefactions/games/key/type/GodKey.java create mode 100644 src/notifyz/hardcorefactions/games/key/type/KothKey.java create mode 100644 src/notifyz/hardcorefactions/games/key/type/LegendKey.java create mode 100644 src/notifyz/hardcorefactions/games/koth/KothExecutor.java create mode 100644 src/notifyz/hardcorefactions/games/koth/arguments/KothHelpArgument.java create mode 100644 src/notifyz/hardcorefactions/games/koth/arguments/KothNextArgument.java create mode 100644 src/notifyz/hardcorefactions/games/koth/arguments/KothScheduleArgument.java create mode 100644 src/notifyz/hardcorefactions/games/koth/arguments/KothSetCapDelayArgument.java create mode 100644 src/notifyz/hardcorefactions/games/koth/arguments/KothTopCapturesArgument.java create mode 100644 src/notifyz/hardcorefactions/games/mountain/GlowstoneMountainCommand.java create mode 100644 src/notifyz/hardcorefactions/games/skygear/SkyGearCommand.java create mode 100644 src/notifyz/hardcorefactions/games/skygear/handlers/SkyGearHandler.java create mode 100644 src/notifyz/hardcorefactions/games/skygear/listeners/SkyGearListener.java create mode 100644 src/notifyz/hardcorefactions/games/sotw/SOTWHandler.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/EventTimer.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/MoreObjects.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/capturezone/CaptureZone.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/capturezone/EventCapture.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler2.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/scheduler/IEventScheduler.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/tracker/CitadelTracker.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/tracker/ConquestTracker.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/tracker/EventTracker.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/tracker/FuryTracker.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/tracker/KothTracker.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/tracker/PalaceTracker.java create mode 100644 src/notifyz/hardcorefactions/games/utilities/type/EventType.java create mode 100644 src/notifyz/hardcorefactions/kit/FlatFileKitManager.java create mode 100644 src/notifyz/hardcorefactions/kit/Kit.java create mode 100644 src/notifyz/hardcorefactions/kit/KitExecutor.java create mode 100644 src/notifyz/hardcorefactions/kit/KitListener.java create mode 100644 src/notifyz/hardcorefactions/kit/KitManager.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitApplyArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitCreateArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitDeleteArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitDisableArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitGuiArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitListArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitPreviewArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitRenameArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetDelayArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetDescriptionArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetImageArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetIndexArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetItemsArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetMaxUsesArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/argument/KitSetminplaytimeArgument.java create mode 100644 src/notifyz/hardcorefactions/kit/event/KitApplyEvent.java create mode 100644 src/notifyz/hardcorefactions/kit/event/KitCreateEvent.java create mode 100644 src/notifyz/hardcorefactions/kit/event/KitRemoveEvent.java create mode 100644 src/notifyz/hardcorefactions/kit/event/KitRenameEvent.java create mode 100644 src/notifyz/hardcorefactions/listeners/CoreListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/claim/ClaimWandListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/claim/SubclaimWandListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/AutoMuteListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/BreedListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/ChatListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/FreezeAllListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/FreezeListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/FurnaceSmeltSpeederListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/HideStaffListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/MobstackListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/PlayTimeListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/RestoreInventoryListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/SkullListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/StaffChatListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/essentials/WhitelistMessageListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/AnvilSpamListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/BedBombingListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/BookDeenchantListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/BorderListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/BottledExpListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/CobwebListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ColorSignListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/CrowbarListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/DeathListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/DeathMessageListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/DeathSignListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/DeathbanListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/EOTWListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ElevatorListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/EnchantLimitListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/EntityLimitListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/EventListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/EventSignListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ExpMultiplierListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/FoundDiamondListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ItemStatTrackingListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/KillStreaks.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/KillstreakListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/KitMapKitsListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/KitMapListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/MinecartElevatorListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/PickaxeStatisticsListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/PickaxeStatsListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/PortalListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/PotionLimitListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ProtectionListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/SOTWListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ShopListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/StaffModeListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/Strength2Listener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/StrengthListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/SubclaimListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/TeamListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/ThrowableCobwebsListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/WorldListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/AnvilDupeFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/AnvilRepairEvent.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/ArcherBeaconSpeedFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/ArmorFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/BeaconStrengthFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/BlockHitFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/BoatGlitchFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/CrashFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/DuplicationGlitchListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/EnderChestRemovalListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/HungerFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/InfinityArrowFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/MobFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/PearlGlitchListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/PearlThroughListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/SplashPotionListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/VoidGlitchFixListener.java create mode 100644 src/notifyz/hardcorefactions/listeners/hcf/fixes/WeatherFixListener.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/BufferedObjective.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/provider/PvPClassHolder.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/provider/ScoreboardProvider.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/TimerExecutor.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/TimerManager.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerSetArgument.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/GlobalTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/PlayerTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/Timer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerClearEvent.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExpireEvent.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExtendEvent.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerPauseEvent.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerStartEvent.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/AppleTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/CombatTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/EnderpearlTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/GappleTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/HomeTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/KeySaleTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/LogoutTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/PvPProtectionTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/RebootTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/SaleTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/timer/utilities/type/StuckTimer.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/utilities/ScoreboardHandler.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/utilities/SidebarEntry.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/utilities/SidebarFiller.java create mode 100644 src/notifyz/hardcorefactions/scoreboard/utilities/SidebarProvider.java create mode 100644 src/notifyz/hardcorefactions/team/TeamManager.java create mode 100644 src/notifyz/hardcorefactions/team/claim/Claim.java create mode 100644 src/notifyz/hardcorefactions/team/claim/subclaim/Subclaim.java create mode 100644 src/notifyz/hardcorefactions/team/claim/team/ClaimManager.java create mode 100644 src/notifyz/hardcorefactions/team/claim/team/ClaimSelection.java create mode 100644 src/notifyz/hardcorefactions/team/commands/TeamExecutor.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamBanCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamChatSpyCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamClaimForCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamClearClaimsCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForceDemoteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForceJoinCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForceKickCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForceLeaderCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForcePromoteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForceUnallyCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamForceUnclaimHereCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamManageCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamMuteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamSetDeathbanMultiplierCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamSetDtrCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamSetDtrRegenCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamSetLivesCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamUnbanCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/staff/TeamUnmuteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimAddMemberCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimCommandExecutor.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimCreateCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimDelMemberCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimDeleteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimListCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimMembersCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimRenameCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimStartCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/subclaim/TeamUnsubclaimCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamAcceptCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamAllyCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamAnnouncementCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamChatCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamClaimChunkArgument.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamClaimCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamClaimsCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamCoLeaderCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamCreateCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamDemoteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamDepositCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamDepositLivesCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamDisbandCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamHQCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamHelpCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamInviteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamInvitesCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamKickCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamLeaderCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamLeaveCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamListCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamMapCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamMessageCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamOpenCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamPromoteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamRenameCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamReviveCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamSetHQCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamShowCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamStuckCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamUnallyCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamUnclaimCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamUninviteCommand.java create mode 100644 src/notifyz/hardcorefactions/team/commands/team/TeamWithdrawCommand.java create mode 100644 src/notifyz/hardcorefactions/team/events/CaptureZoneEnterEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/CaptureZoneLeaveEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/PlayerClaimEnterEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/PlayerJoinTeamEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/PlayerJoinedTeamEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/PlayerLeaveTeamEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/PlayerLeftTeamEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamChatEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamClaimChangeEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamClaimChangedEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamCreateEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamDtrChangeEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamRelationCreateEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamRelationRemoveEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamRemoveEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/TeamRenameEvent.java create mode 100644 src/notifyz/hardcorefactions/team/events/cause/ClaimChangeCause.java create mode 100644 src/notifyz/hardcorefactions/team/events/cause/TeamLeaveCause.java create mode 100644 src/notifyz/hardcorefactions/team/struct/Role.java create mode 100644 src/notifyz/hardcorefactions/team/struct/chat/TeamChannel.java create mode 100644 src/notifyz/hardcorefactions/team/struct/teamstatus/Raidable.java create mode 100644 src/notifyz/hardcorefactions/team/struct/teamstatus/RegenStatus.java create mode 100644 src/notifyz/hardcorefactions/team/struct/teamstatus/Relation.java create mode 100644 src/notifyz/hardcorefactions/team/type/ClaimableTeam.java create mode 100644 src/notifyz/hardcorefactions/team/type/PlayerTeam.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/CapturableFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/ConquestFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/EndPortalFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/EventFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/FuryFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/GlowstoneMountainFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/KothFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/PalaceFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/RoadFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/SpawnFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/WarzoneFaction.java create mode 100644 src/notifyz/hardcorefactions/team/type/system/WildernessFaction.java create mode 100644 src/notifyz/hardcorefactions/team/utilities/ITeam.java create mode 100644 src/notifyz/hardcorefactions/team/utilities/LandMap.java create mode 100644 src/notifyz/hardcorefactions/team/utilities/TeamFile.java create mode 100644 src/notifyz/hardcorefactions/team/utilities/TeamMember.java create mode 100644 src/notifyz/hardcorefactions/team/utilities/TeamType.java create mode 100644 src/notifyz/hardcorefactions/team/utilities/TeamUser.java create mode 100644 src/notifyz/hardcorefactions/utilities/Configuration.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/IPluginAPI.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/ICallback.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/IFluentIterableCompat.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/IGuavaCompat.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/INameHistory.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandAPI.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandArgument.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandArgumentExecutor.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandWrapper.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/command/IConstantsAPI.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/utils/INmsUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/api/utilties/utils/ISpigotUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/BukkitUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/ChatUtil.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/ClickAction.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/Color.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/Configuration.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/Cooldowns.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/DelayedMessageRunnable.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/FancyMessage.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/FileConfig.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/HoverAction.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/Lang.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/MessageEvent.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/MessagePart.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/Text.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/TextUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/chat/Trans.java create mode 100644 src/notifyz/hardcorefactions/utilities/crowbar/Crowbar.java create mode 100644 src/notifyz/hardcorefactions/utilities/cuboid/CoordinatePair.java create mode 100644 src/notifyz/hardcorefactions/utilities/cuboid/Cuboid.java create mode 100644 src/notifyz/hardcorefactions/utilities/cuboid/CuboidBlockIterator.java create mode 100644 src/notifyz/hardcorefactions/utilities/cuboid/CuboidDirection.java create mode 100644 src/notifyz/hardcorefactions/utilities/cuboid/CuboidLocationIterator.java create mode 100644 src/notifyz/hardcorefactions/utilities/cuboid/NamedCuboid.java create mode 100644 src/notifyz/hardcorefactions/utilities/freeze/FrozenInventory.java create mode 100644 src/notifyz/hardcorefactions/utilities/freeze/FrozenManager.java create mode 100644 src/notifyz/hardcorefactions/utilities/imagemessage/ImageChar.java create mode 100644 src/notifyz/hardcorefactions/utilities/imagemessage/ImageMessage.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/InventorySerialisation.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/InventoryUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/ItemBuilder.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/ItemStackUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/Menu.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/PickStats.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/SettingsBuilder.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/item/ItemDB.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/item/ItemData.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/item/ManagedFile.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/restoration/Inventories.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/restoration/InventoryManager.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/restoration/RestoreManager.java create mode 100644 src/notifyz/hardcorefactions/utilities/inventory/restoration/TimeUtil.java create mode 100644 src/notifyz/hardcorefactions/utilities/user/IConsoleUser.java create mode 100644 src/notifyz/hardcorefactions/utilities/user/IUser.java create mode 100644 src/notifyz/hardcorefactions/utilities/user/IUserManager.java create mode 100644 src/notifyz/hardcorefactions/utilities/user/UserManager.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/Config.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/CountRemover.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/DataHandler.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/DateTimeFormats.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/DelayedMessageRunnable.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/DurationFormatter.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/Embedded.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/ExperienceManager.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/GenericUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/JavaUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/MapSorting.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/Mapper.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/NMSHandler.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/NameHistory.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/NmsUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/ParticleEffect.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/PersistableLocation.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/RandomUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/Reflection.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/ServerHandler.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/ServerParticipator.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/SignHandler.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/SpamDetectEvent.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/SpigotUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/StaffPriority.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/TimeUtils.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/Tuple.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/UUIDFetcher.java create mode 100644 src/notifyz/hardcorefactions/utilities/utils/Utils.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/BlockFiller.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/ProtocolLibHook.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/VisualBlock.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/VisualBlockData.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/VisualType.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/VisualiseHandler.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/VisualiseUtil.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/WallBorderListener.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/protocol/BlockDig.java create mode 100644 src/notifyz/hardcorefactions/utilities/visualise/protocol/BlockPlace.java create mode 100644 src/plugin.yml create mode 100644 src/reclaimsettings.yml create mode 100644 src/timers.yml diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..49b7690 --- /dev/null +++ b/.classpath @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..ef5dccf --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + HCF-Exem + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..3a21537 --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/bin/balances.yml b/bin/balances.yml new file mode 100644 index 0000000..18e0854 --- /dev/null +++ b/bin/balances.yml @@ -0,0 +1 @@ +balances: {} diff --git a/bin/config.cdl b/bin/config.cdl new file mode 100644 index 0000000..c8a74cc --- /dev/null +++ b/bin/config.cdl @@ -0,0 +1,306 @@ +// HCF Configuration File +// Be sure to double-check your config +// Credits - Techcable's Configuration API + +// If the plugin should attempt to limit entities to reduce lag. +// currently what this does is allow only 25 entities in one chunk. +handleEntityLimiting = true + +// If arrows shot from a bow with infinity should be removed +// when they land to reduce entity lag. +removeInfinityArrowsOnLand = true + +// The maximum Beacon strength level +beaconStrengthLevelLimit = 1 + +// If boats should not be allowed to be placed on land. +disableBoatPlacementOnLand = true + +enderpearlGlitching { + // If this plugin should try and block Enderpearl glitching. + enabled = true + + // If the enderpearl should be refunded if the player was detected. + refund = true +} + +// If enderchests should be disabled. +disableEnderchests = true + +// If beds cannot be placed in the Nether. +preventPlacingBedsNether = false + +// Timezone to use for events and stuff +serverTimeZone = "America/New_York" + +// The speed at which items in furnaces cook, set to 1.0 for default. +furnaceCookSpeedMultiplier = 6.0 + +brewingSpeedMultiplier = 6.0 + +// If you should be able to bottle exp by crafting a glass bottle. +bottledExp = true + +// If you should be able to de-enchant books by right clicking enchant tables. +bookDeenchanting = true + +// If death signs should spawn upon deaths. +deathSigns = true + +// If death signs should thaw upon deaths. +deathLightning = true + +// The current number of the map. +mapNumber = 1 + +// If the server is in a kit map mode. +kitMap = false + +// If ally damage should be prevented or just warn the attacker. +preventAllyDamage = true + +economy { + // The amount of money a player starts off with. + startingBalance = 0 +} + +spawners { + // If players should not be able to break spawners in the Nether. + preventBreakingNether = true + + // If players should not be able to place spawners in the Nether. + preventPlacingNether = true +} + +expMultiplier { + // The multipliers to set for experience, set to 1.0 to normalise as vanilla. + global = 2.0 + fishing = 2.0 + smelting = 2.0 + lootingPerLevel = 1.5 + luckPerLevel = 1.5 + fortunePerLevel = 1.5 +} + +scoreboard { + sidebar { + // The title of the sidebar, use {MAP_NUMBER} as a + // placeholder with & as colour codes. + title = "&9&lMC-Market &7(Map {MAP_NUMBER})" + + // If this plugin utilises the sidebar. + enabled = true + } + + nametags { + // If this plugin will utilise nametags. + enabled = true + } +} + +combatlog { + // If this plugin will protect from combat-logging. + enabled = true + + // The ticks for when a combat logger NPC should despawn. + despawnDelayTicks = 900 +} + +warzone { + // The radius of the warzone. + radiusOverworld = 1000 + radiusNether = 1000 +} + +factions { + conquest { + // How much points should a faction lose when a player dies in Conquest. + pointLossPerDeath = 20 + + // How much points should a faction need to win Conquest. + requiredVictoryPoints = 300 + + // If negative points are possible during conquest. + allowNegativePoints = true + } + + roads { + // If players are allowed to claim next to roads + allowClaimsBesides = true + } + + // List of faction names that cannot be used. + disallowedFactionNames = [ + "EOTW", + "MOKU" + ] + + home { + // The time in seconds to teleport to faction home, -1 to disable, 0 for instant + teleportDelay { + NETHER = 30 + THE_END = -1 + NORMAL = 10 + } + + // The maximum height to set a faction home, use -1 to ignore this. + maxHeight = -1 + + // If faction homing in enemy territory should be allowed. + allowTeleportingInEnemyTerritory = true + } + + // Minimum amount of characters a faction name must be. + nameMinCharacters = 3 + + // Maximum amount of characters a faction name must be. + nameMaxCharacters = 15 + + // Maximum amount of members a faction can own. + maxMembers = 20 + + // Maximum amount of claims a faction can own. + maxClaims = 8 + + // Maximum amount of allies a faction can have. + maxAllies = 0 + + subclaim { + // The minimum characters a player can name a subclaim. + nameMinCharacters = 3 + + // The maximum characters a player can name a subclaim. + nameMaxCharacters = 16 + } + + dtr { + regenFreeze { + // The minutes for faction DTR regen freeze to + // end not including any multipliers, etc. + baseMinutes = 40 + + // How much longer the DTR freeze should be for factions with + // more members. Set to 0 to disable. + minutesPerMember = 2 + } + + // The minimum DTR a faction can have. + minimum = -50 + + // The maximum DTR a faction will regenerate to. + maximum = 6.5 + + // Time in milliseconds between a DTR update. + millisecondsBetweenUpdates = 45000 + + // The DTR again when DTR updates. + incrementBetweenUpdates = 0.1 + } + + relationColours { + // The nametag and chat colours to show for faction relations. + wilderness = "DARK_GREEN" + warzone = "RED" + teammate = "DARK_GREEN" + ally = "AQUA" + enemy = "RED" + road = "RED" + safezone = "GREEN" + archerTagged = "BLUE" + combatTag = "DARK_RED" + enderPearl = "LIGHT_PURPLE" + invincibility = "DARK_GREEN" + gapple = "DARK_PURPLE" + logout = "GREEN" + stuck = "GREEN" + teleport = "DARK_AQUA" + + } + + joinNewFactionDelaySeconds = 15 +} + +deathban { + // The regular deathban duration. + baseDurationMinutes = 60 + + // The seconds before kicking after showing the user + // the respawn screen from a deathban. + respawnScreenSecondsBeforeKick = 15 +} + +end { + // If the end should be opened. + open = true + + // The location of the spawn point when leaving end by End Portal. + exitLocation = "world,0.5,75,0.5,0,0" + + // If fire should be extinguished when leaving the end through an End Portal. + extinguishFireOnExit = true + + // If strength should be removed when entering the end through an End Portal. + removeStrengthOnEntrance = true +} + +eotw { + chatSymbolPrefix = " \u2605" + chatSymbolSuffix = "" + + // List of UUIDs that capped last maps EOTW. + lastMapCapperUuids = [ + ] +} + +// The maximum levels an enchantment can be. +enchantmentLimits = [ + "PROTECTION_ENVIRONMENTAL = 1", + "PROTECTION_FIRE = 3", + "SILK_TOUCH = 1", + "DURABILITY = 3", + "PROTECTION_EXPLOSIONS = 3", + "LOOT_BONUS_BLOCKS = 3", + "PROTECTION_PROJECTILE = 3", + "OXYGEN = 3", + "WATER_WORKER = 1", + "THORNS = 0", + "DAMAGE_ALL = 1", + "ARROW_KNOCKBACK = 1", + "KNOCKBACK = 0", + "FIRE_ASPECT = 0", + "LOOT_BONUS_MOBS = 3", + "LUCK = 3", + "ARROW_DAMAGE = 3", + "LURE = 3" +] + +// The maximum levels a potion can be brewed to. +potionLimits = [ + "STRENGTH = 0", + "INVISIBILITY = 1", + "REGEN = 0", + "WEAKNESS = 0", + "INSTANT_DAMAGE = 0", + "SLOWNESS = 1", + "POISON = 1" +] + +subclaimSigns { + // Protects against members that are not on the sign opening. + private = true + + // Protects against any non-officer opening. + captain = true + + // Protects against any non-leader opening. + leader = false + + // If subclaim protected objects should be protected from hopper + // items too, disabling this may increase performance. + hopperCheck = true +} + +whitelist { + // Changes the vanilla whitelist message. + message = "&cThe server is currently locked, try again soon." +} \ No newline at end of file diff --git a/bin/config.yml b/bin/config.yml new file mode 100644 index 0000000..e0055de --- /dev/null +++ b/bin/config.yml @@ -0,0 +1,778 @@ +revive-settings: + gold: + use: "hcf.revive.gold" + prefix: "&6[GOLD] " + name: "GOLD" + minutes-cooldown: 30 + seconds-cooldown: 1800 + platinum: + use: "hcf.revive.platinum" + prefix: "&b[PLATINUM] " + name: "PLATINUM" + minutes-cooldown: 60 + seconds-cooldown: 3600 + +revive-messages: + successfully-revived: "&cYou have successfully revived '%target%'" + broadcast: "&c%prefix% &8%player% &7used his %rank% rank to revive &8%target%" + cooldown: "%prefix% &eYou still have cooldown &7(%cooldown%&7) &efor revive %name%!" +chat: + use-protocol-lib: true + spam-cooldown: 5 + disabled: + millis: 0 + slowed: + millis: 0 + slowed-delay: 15 + alliance: + prefix: "\xa7b(Ally-Chat) %player%: %message%" + faction: + prefix: "\xa72(Team-Chat) %player%: %message%" + public: + prefix-faction: "\xa76[%tag%\xa76] %player%\xa77: \xa7f%message%" + prefix-no-faction: "%player%\xa77: \xa7f%message%" +warp-manager: + warp-delay-millis: 2000 +auto-save: + enabled: true + time: "15min" + command: "save-all" + message: "&cSaving all data has finished." +anvil-spam-fixer: + enabled: true + violation: 3 + messages: + flag: "&c%PLAYER% &chas been flagged for anvil spamming &8(&c%VELOCITY%&fVL&8) (perm: hcf.anvilspam.alert)" +kitmap-gui: + enabled: true + title: "&6&lHCF &c[Map 1]" + id-animation: + - 7 + - 8 + - 0 + - 15 + - 12 +kitmap-selector: + enabled: true +border: + worldBorder: 3000 + netherBorder: 1000 + endBorder: 1500 +border-messages: + no-bucket-fill: "&cYou cannot fill buckets past the border." + no-bucket-empty: "&cYou cannot empty buckets past the border." + no-blocks-place: "&cYou cannot place blocks past the border." + no-blocks-break: "&cYou cannot break blocks past the border." + border-no-go: "&cYou cannot go past the border." + border-portal-no-go: "&cThis portals travel location was over the border. It has been moved inwards." +death-messages: + combat-logger: "&8(&cCombat-Logger&8) &e%logger%&4[%logger-kills%] &ehas been slain by %killer%&4[%killer-kills%]" + causes: + block-explosion: "&c%player%&4[%player-kills%] &ewas blown to death." + contact: "&c%player%&4[%player-kills%] &ewas slain by a, a, a &a&lCactus&e?" + drowning: "&c%player%&4[%player-kills%] &edrowned." + entity-attack: + player: "&c%player%&4[%player-kills%] &ewas slain by &c%killer%" + player-item: "&c%player%&4[%player-kills%] &ewas slain by &c%killer%&4[%killer-kills%] &eusing &c%killer-hand%" + player-no-item: "&c%player%&4[%player-kills%] &ewas slain by &c%killer%&4[%killer-kills%]" + entity-explosion: "&c%player%&4[%player-kills%] &edied in a explosion." + fall: "&c%player%&4[%player-kills%] &ehit the ground to hard." + falling-block: "&c%player%&4[%player-kills%] &edied to a falling block." + fire: "&c%player%&4[%player-kills%] &eforgot to bring a Fire Resistance potion." + fire-tick: "&c%player%&4[%player-kills%] &eforgot to bring a Fire Resistance potion.." + lava: "&c%player%&4[%player-kills%] &eforgot to bring a Fire Resistance potion." + lightning: "&c%player%&4[%player-kills%] &ewas struck by &fLightning&e." + magic: "&c%player%&4[%player-kills%] &edied to a magic." + melting: "&c%player%&4[%player-kills%] &edied." + poison: "&c%player%&4[%player-kills%] &edied to a poison." + projectile: + unknown: "&c%player%&4[%player-kills%] &edied." + bow-item: "&c%player%&4[%player-kills%] &ewas shot by &c%killer%&4[%killer-kills%]" + bow-item-distance: "&c%player%&4[%player-kills%] &ewas shot by &c%killer%&4[%killer-kills%] &eusing &c%killer-hand% &efrom &9&l%distance% blocks." + starvation: "&c%player%&4[%player-kills%] &eforgot to pack some lunch and starved to death." + suffocation: "&c%player%&4[%player-kills%] &esuffocated in a wall." + suicide: "&c%player%&4[%player-kills%] &ekilled himself." + thorns: "&c%player%&4[%player-kills%] &edied." + void: "&c%player%&4[%player-kills%] &efell into the void." + wither: "&c%player%&4[%player-kills%] &ewhitered away." + unknown: "&c%player%&4[%player-kills%] &edied." + custom: "&c%player%&4[%player-kills%] &edied." +skygear: + enabled: true + spawntoken: + cooldown: 120 + endportaltoken: + cooldown: 120 + coordinates: + x: 1500 + y: 75 + z: 1500 +throwable-cobwebs: + cooldown: 30 + despawn-after: 5 + vector-multiplier: 2 + cobweb-name: "&3ThrowableCobweb" +glowstone-mountain: + enabled: true + regeneration: 72000 + location: '[world,24.50070339453891,72.0,137.55239634209465]' +glowstone-mountain-messages: + regenerated: "&5Glowstone Mountain has been regenerated." + disabled: "&cGlowstone mountain is disabled." + set-disabled: "&cYou have disabled the Glowstone Mountain!" + set-enabled: "&aYou have enabled the Glowstone Mountain!" + set-location: "&aYou have set the location of Glowstone Mountain!" + faction-show-location: "&eLocation: set location in config" + reloaded: "&aYou have reloaded the config." +configuration: + server-name: "MC-Market" + teamspeak: "ts.mcmarket.com" + store: "store.buycraft.com" + website: "www.website.com" + starting-balance: 250 + famous-subscribers: 2000 + famous-videos: 2 + famous-views: 1000 + youtube-subscribers: 1000 + youtube-videos: 2 + youtube-views: 500 + splash-potion-velocity: 2.0 + use-dtc: false +deathmessages: + enabled: false + deathmessage-format: "%player%&4[%kills%&4]" +event-utilities: + timezone: "Europe/Ljubljana" + auto-run-scheduler: + enabled: true + time: "3h" + run-command: "event start %event%" + event-list: + - "Stronghold" + - "Palace" + - "Citadel" + - "Fury" + koth: + faction-color: "&9&l" + win-command: "key eventkey KOTH %key% %player% 2" + citadel: + faction-color: "&5&l" + win-command: "key eventkey CITADEL %key% %player% 2" + palace: + faction-color: "&e&l" + cap-time: "25min" + win-command: "key eventkey PALACE %key% %player% 2" + conquest: + faction-color: "&9&l" + win-command: "key eventkey CONQUEST %key% %player% 2" + fury: + faction-color: "&9&l" + switch-time: "1min" + cap-time: "30s" + required-points: 100 + point-loss-per-death: 10 + win-command: "key eventkey FURY %key% %player% 2" +faction-utilities: + elevators: + minecart: + enabled: true + combat-usage: false + sign: + enabled: true + enemy-claim-usage: false + combat-usage: false + end-portal-faction: + deathban: false + safezone: false + player-faction: + dtr-loss-per-death: 1.0 + sotw: + auto-inventory: false +killstreaks: + enabled: true + broadcast-message: "&c&l%player% &ehas reached kill streak of &c&l%killstreak% &eand received &c&l%item%" + items: + DontRemoveThis: + name: "DontRemove" + command: "dont remove this its an example" + kills: 100000 +deathban: + deathban1: + permission: 'deathban.1' + time: 30m + deathban2: + permission: 'deathban.2' + time: 60m + deathban3: + permission: 'deathban.3' + time: 90m + deathban4: + permission: 'deathban.4' + time: 120m + deathban5: + permission: 'deathban.5' + time: 140m + deathban6: + permission: 'deathban.6' + time: 160m +classes: + class-equiped: + - '&bClass: &l%class% &7-->&a Enabled' + - '&bClass Info: www.website.com/%class%' + class-un-equiped: + - '&bClass: &l%class% &7-->&c Disabled' + archer: + enabled: true + use-colorful-armor: true + name: "Archer" + damage-percentage: 20 + speed-cooldown: 60 + equipment: + helmet: LEATHER_HELMET + chestplate: LEATHER_CHESTPLATE + leggings: LEATHER_LEGGINGS + boots: LEATHER_BOOTS + bard: + enabled: true + name: "Bard" + max-energy: 100 + energy-per-second: 1.0 + teammate-nearby: 25 + buff-cooldown: 10 + buff-duration: 5 + held-item-message: true + effect-message: + - '&7&m--------------------------------' + - ' &e&lEffect: %effect%' + - ' &e&lCost: %energycost%' + - '&7&m--------------------------------' + equipment: + helmet: GOLD_HELMET + chestplate: GOLD_CHESTPLATE + leggings: GOLD_LEGGINGS + boots: GOLD_BOOTS + miner: + enabled: true + name: "Miner" + invisibility-y: 30 + equipment: + helmet: IRON_HELMET + chestplate: IRON_CHESTPLATE + leggings: IRON_LEGGINGS + boots: IRON_BOOTS + rogue: + enabled: true + name: "Rogue" + speed-cooldown: 1 + jump-cooldown: 1 + equipment: + helmet: CHAINMAIL_HELMET + chestplate: CHAINMAIL_CHESTPLATE + leggings: CHAINMAIL_LEGGINGS + boots: CHAINMAIL_BOOTS + ghost: + enabled: true + name: "Ghost" + mode-cooldown: 48 + equipment: + helmet: CHAINMAIL_HELMET + chestplate: DIAMOND_CHESTPLATE + leggings: CHAINMAIL_LEGGINGS + boots: DIAMOND_BOOTS +classes-messages: + archer: + cannot-tag-archers: "&eYou cannot archer tag other archers." + speed-cooldown: "&cYou cannot use Archer speed for another &c&l%cooldown%" + bard: + cannot-equip-class: "&cYou cannot equip Bard Class whilst PVP Protected." + energy-announcer: "&b&lBard energy is now at: &a%energy%" + buff-used: "&eYou have just used &aBard Buff ðat cost you &l%cost% &eof your Energy" + buff-cooldown: "&cYou cannot use this Bard buff for another %cooldown% seconds." + buff-in-safezone: "&cYou may not use bard buffs in safe-zones." + no-enough-energy: "&cYou need at least &l%cost% &cenergy to use this Bard buff, whilst you only have %energy%." + ghost: + damage-near: "&eGhoster has taken damage in stealth mode near you: &7(20x20)" + cooldown: "&cYou cannot use Ghost mode for another %cooldown% seconds." + normal-mode: "&eYou are now in &aNormal &emode." + stealth-mode: "&eYou are now in &7Stealth &emode." + power-mode: "&eYou are now in &cPower &emode &7&o(5 seconds)&e." + miner: + invisibility-added: "&eMiner &6invisibility &ehas been added." + invisibility-removed: "&eMiner &6invisibility &ehas been removed." + rogue: + backstabbed-you: "&c%player% &ehas backstabbed you." + you-backstabbed: "&eYou have backstabbed &c%player%&e." + speed-cooldown: "&cYou cannot use Rogue speed for another %cooldown%." + jump-cooldown: "&cYou cannot use Rogue jump for another %cooldown%." +staffmode: + enabled: true + scoreboard-lines: true + items: + teleportation: + item: COMPASS + amount: 1 + data: 0 + name: "&bTeleport Compass" + lore: + - "&7Right click block: Move through" + - "&7Left click: Move to block in line of sight" + slot: 0 + inspection: + item: BOOK + amount: 1 + data: 0 + name: "&bInspection Tool" + lore: + - "&7Right click to inspect player inventory" + slot: 1 + freeze: + item: ICE + amount: 1 + data: 0 + name: "&bFreeze Player" + lore: + - "&7Right click to freeze player" + slot: 4 + worldedit: + item: WOOD_AXE + amount: 1 + data: 0 + name: "&bWorldEdit Wand" + lore: + - "&7Use this to change blocks" + slot: 2 + xrayer-gui: + item: DIAMOND_PICKAXE + amount: 1 + data: 0 + name: "&bXrayer Gui" + lore: + - "&7Right click to open inventory with miners" + slot: 6 + random-teleportation: + item: RECORD_10 + amount: 1 + data: 0 + name: "&bRandom Teleport" + lore: + - "&7Right click to random teleport" + slot: 8 + staff-gui: + item: SKULL_ITEM + amount: 1 + data: 3 + name: "&bOnline Staff" + lore: + - "&7Right click to random teleport" + slot: 3 + vanish-enabled: + item: INK_SACK + amount: 1 + data: 10 + name: "&bVanished: &aTrue" + lore: + - "&7Right click to disable vanish" + slot: 7 + vanish-disabled: + item: INK_SACK + amount: 1 + data: 8 + name: "&bVanished: &cFalse" + lore: + - "&7Right click to enable vanish" + slot: 7 +scoreboard: + archer-timer: "Archer Mark" + archer-time: "10s" + archer-color: "&e&l" + combat-timer: "Spawn Tag" + combat-time: "30s" + combat-color: "&c&l" + enderpearl-timer: "Enderpearl" + enderpearl-time: "16s" + enderpearl-color: "&3&l" + gapple-timer: "Golden Apple" + gapple-time: "6h" + gapple-color: "&6&l" + apple-timer: "Apple" + apple-time: "30s" + apple-color: "&c&l" + warmup-timer: "Warmup" + warmup-color: "&a&l" + home-timer: "Home" + home-time: "10s" + home-color: "&9&l" + logout-timer: "Logout" + logout-time: "25s" + logout-color: "&4&l" + pvp-timer: "PvP Timer" + pvp-time: "1h" + pvp-color: "&a&l" + stuck-timer: "Stuck" + stuck-time: "3min" + stuck-color: "&4&l" + koth-color: "&9&l" + palace-color: "&6&l" + dtc-color: "&2&l" + focus-nametag-color: "&5&l" +scoreboard-lines: + bars: true + kitmap: + statistics: "&3&lStatistics" + balance: " &7\xbb &bBalance&7: &f%balance%" + kills: " &7\xbb &bKills&7: &f%kills%" + deaths: " &7\xbb &bDeaths&7: &f%deaths%" + killstreaks: " &7\xbb &bKillStreak&7: &f%killstreak%" + class-name: "&e&lClass&7: &c%class%" + stattrak: " &8\xbb &3&lStatTrak&7: &c%kills%" + cobwebs: " &8\xbb &6&lCobwebs&7: &c%cooldown%" + destroy-the-core: "&2&l%dtc-name%&7: &a%points%/%maxpoints%" + miner: + diamonds: " &6» &bDiamonds&7: &c%diamonds%" + cobble-enabled: " &6» &bCobble&7: &aTrue" + cobble-disabled: " &6» &bCobble&7: &cFalse" + invisibility-enabled: " &6» &bInvisible&7: &aTrue" + invisibility-disabled: " &6» &bInvisible&7: &cFalse" + bard: + buff-delay: "&a&lBuff Delay&7: &c%cooldown%" + bard-energy: "&b&lBard Energy&7: &c%energy%" + archer: + speed-cooldown: " &6» &eSpeed&7: &c%cooldown%" + rogue: + speed-cooldown: " &6» &eSpeed&7: &c%cooldown%" + jump-cooldown: " &6» &eJump&7: &c%cooldown%" + ghost: + normal-mode: "&aNormal" + stealth-mode: "&7Stealth" + power-mode: "&c&lPower" + active-mode: " &6\xbb &eMode&7: %mode%" + cooldown: " &6\xbb &eCooldown&7: &c%cooldown%" + staff-mode: + vanish-enabled: " &6%doublearrow% &eVanished&7: &aTrue" + vanish-disabled: " &6%doublearrow% &eVanished&7: &cFalse" + chat-mode-staff: " &6%doublearrow% &eChat&7: &aStaffChat" + chat-mode-global: " &6%doublearrow% &eChat&7: &cGlobalChat" + online: " &6%doublearrow% &eOnline&7: &c%online%" + ticks-per-second: " &6%doublearrow% &eTPS&7: &c%tps%" + eotw: + beginning: " &8» &cEOTW begins in&7: &c%time%" + cappable: " &8» &cCappable in&7: &c%time%" + sotw: + title: "&a&lStart of the World" + time-left: " &8» &c%time%" + fury: + title: "&6&lFury Event &7(%fury%)" + cap-time: "&e%formattedtime%" + switch-time: "&e%switchtime%" + leaderboard: "&6%count%. &e%faction%&7: &e%points% %difference%" +cmd-messages: + no-permission: "&cYou don't have access to this command." + join-message: + - '&7&m%line%' + - '&eWelcome to %title%' + - " &6\xbb &eFactions Size: &7%factionsinfo%" + - " &6\xbb &eMap Kit: &7Protection: %protection% / Sharpness: %sharpness%" + - " &6\xbb &eTeamspeak: &7%teamspeak%" + - " &6\xbb &eWebsite: &7%website%" + - '&7&m%line%' + - '&m' + cobble-disabled: "&7You have disabled cobble picking." + cobble-enabled: "&7You have enabled cobble picking." + coordinates: + - '&7&m--------------------------------' + - ' &e&lUse config.yml to edit coordinations' + - '&7&m--------------------------------' + focus-no-yourself: "&7You can't focus yourself!" + focus-no-faction: "&7You are not in a team!" + focus-target-no-faction: "&7Target is not in a team!" + focus-player-not-online: "&cThat player is not online." + focused-target: "&b&l%target% &7has been focused by &b&l%player%" + hidestaff-show: "&aYou will now be able to see the Staff." + hidestaff-hide: "&cYou will now not be able to see the Staff." + unfocused-target: "&b&l%player% &7has unfocused %target%." + logout-started: "&cYou are &4&lLoging out &cin 30 seconds.." + logout-already-active: "&cYour &4&lLogout &ctimer is already active." + mobdrops-enabled: "&7You have enabled mobdrops picking." + mobdrops-disabled: "&7You have disabled mobdrops picking." + playtime: "&6%target% &ehas been playing for &6%time% ðis map." + staffmode-enabled: "&eYou have enabled &6StaffMode" + staffmode-disabled: "&eYou have disabled &6StaffMode" + staffrevive-target-not-deathbanned: "&c%target% is not deathbanned" + staffrevive-target-revived: "&c%target% &ehas been revived." + request-cooldown: "&cYou still have cooldown %time% for using request" + request-message: "&7[REQUEST] &6&l%player% &chas requested help: &6&l%message%" + report-cooldown: "&cYou still have cooldown for %time%" + report-no-reason: "&cPlease specify reason." + report-message: "&c&lREPORT > &6%reporter% &chas reported &6%hacker% &cfor &6%reason%" + alert-message: "&c&lALERT > %message%" + feed-message: "&eYou have fed yourself" + flight-enabled: "&eYou have enabled your flight." + flight-disabled: "&eYou have disabled your flight." + freeze-no-yourself: "&cYou cannot freeze yourself" + freeze-no-staffmember: "&cYou cannot freeze staffmember." + freeze-player-not-found: "&cPlayer named %target% was not found." + freeze-message: + - "&8&m%line%" + - "" + - "" + - "&6You have been &cFROZEN." + - "&6Join our &cteamspeak, you have 3 minutes." + - "" + - "" + - "&8&m%line%" + invsee-player-not-found: "&cPlayer not found." + invsee-error: "&cERROR: You cannot modify inventory of player that are same or higher ranks than you." + list-message: "&cThere is currently %onlineplayers% online players out of %maxplayers%" + lff-message: + - '&7&m--------------------------------' + - '&m' + - '&6%player% &eis looking to join &6&lFACTION' + - '&eYou can also use placeholder %playerdisplayname%!' + - '&7&m--------------------------------' + removeperm-message: "&aSuccessfully removed %target%'s permissions!" + reset-reclaim-message: "&cYou have succesfully reset %target%'s reclaim settings." + reclaim-already: "&cYou have already reclaimed your donator perks!" + reclaim-no-rank: "&cYou do not have anything to reclaim!" + revive-broadcast: "&7 » &c&l%player% &eused their Diamond rank to revive %target%" + revive2-broadcast: "&7 » &c&l%player% &eused their Gold rank to revive %target%" + rename-message: "&aSuccessfully renamed item to: %name%" + panic-message: + - "&8&m----------------" + - "" + - "&4&l%player% &chas requested Panic Assistance!" + - "" + - "&8&m----------------" + spawn-teleport-message: "&aYou have been teleported to Spawn." + spawner-received: "&7You have received &c%spawner% spawner." + teleport-top-message: "&cYou have been teleported to the top." + vanish-enabled: "&7You have enabled your vanish mode." + vanish-disabled: "&7You have disabled your vanish mode." + lives-check-deathban: "&c%target% is not deathbanned." + lives-clear-deathbans: "&aAll deathbans have been successfully wipped." + lives-revive-not-deathbanned: "&c%target% is not deathbanned." + lives-revive-kitmap-on: "&cYou cannot revive players during KitMap" + lives-revive-eotw-on: "&cYou cannot revive players during End of the World" + lives-revive-enemy: "&cYou have used one life to revive:&r %target%" + lives-revive-teammate: "&cYou have used one life to revive:&r %target%" + lives-set-error: "&c%argument% is not a number." + lives-set-message: "&cYou have set %target%'s lives to %amount%" + bed-bombing-portal: "&cYou may not bedbomb near portal" + book-deenchant: "&eYou have reversed book's form." + crowbar-error: "&eYou can only use Crowbar in overworld." + crowbar-spawner-error: "This Crowbar has no more Spawner uses." + crowbar-endportal-error: "This Crowbar has no more Endportal uses." + deathban-eotw: "&cThanks for playing on our Map 1" + deathban-kick: "&cDeathbanned for %remaining% (%reason%)" + deathban-active: "&cYou have died because %reason% at %location% (%remaining%)" + deathban-active-with-lives: "&cYou have died because %reason% at %location% (%remaining%) You have %lives% lives, reconnect in %livesdelay%" + deathban-used-life: "You have used life to bypass deathban, you have now %lives% lives." + safezone-enderpearl-error: "&cYou may not pearl into the Safezones, your pearl has been refunded." + safezone-attack-error: "&cYou cannot attack players in Safezone" + safezone-out-attack-error: "&cYou cannot attack players that are in Safezone" + staff-connected: "&a&lStaff Online: &f%player%" + staff-disconnected: "&a&lStaff Offline: &f%player%" + subclaim-already-placed: "&cThere is already subclaim on this block: %block%" + subclaim-player-error: "&cSubclaim requires at least one name inserted." + subclaim-leader-error: "&cOnly leader can create LEADER subclaims." + sotw-start-error: "%argument% &cis not valid duration" + sotw-already-active: "&cSOTW is already active, /sotw cancel to end it." + sotw-started: "&cYou have started SOTW for the %time%" + sotw-start: + - "&aStart of the world has started &7(%time%)" + sotw-end: + - "&cStart of the world has ended. &4&lGOOD LUCK TO EVERYONE!" + void-fix-message: "&aYou were saved from falling in void in Overworld." + eotw-started: "&4&LEOTW &chas started." + eotw-claim-error: "&cYou cannot claim during EOTW." +faction-messages: + faction-show: + header: + - ' %faction% &7(%faction-online%/%faction-online-max%) &8- &aHome: &c%home% &7[%status%]' + allies: + - ' &eAllies: %allies%' + leader: + - ' &eLeader: %leader%' + coleaders: + - ' &eCo-Leaders: %co-leaders%' + captains: + - ' &eCaptains: %captains%' + members: + - ' &eMembers: %members%' + use-announcement: false + announcement: + - ' &eAnnouncement: &c%announcement%' + balance: + - ' &eBalance: &c%balance% &eKills: &c%factionkills%' + use-lives: false + lives: + - ' &eLives: &c%lives%' + koth-captures: + - ' &eKoth Captures: &c%koths%' + conquest-captures: + - ' &eConquest Captures: &c%conquests%' + citadel-captures: + - ' &eCitadel Captures: &c%citadels%' + fury-captures: + - ' &eFury Captures: &c%furies%' + palace-captures: + - ' &ePalace Captures: &c%palaces%' + use-founded: false + founded: + - ' &eFounded at: &c%founded%' + dtr: + - ' &eDeaths Until Raidable: [%dtr%/%maxdtr%]' + regen: + - ' &eTime Until Regen: &c%regen%' + faction-member-format: "%color%%name%&e[&a%kills%&e]" + ally-format: "%ally% &e[%ally-online%/%ally-online-max%]" + factionless-prefix: "*" + entering: '&eNow entering: %tofaction%&7(%deathbantofaction%&7)' + leaving: '&eNow leaving: %fromfaction%&7(%deathbanfromfaction%&7)' + created: "&eTeam %faction% &ehas been created by %player%" + disbanded: "&eTeam %faction% &ehas been disbanded by %player%" + renamed: "&eTeam %faction% &ehas been renamed to %factionnewname%" + member-online: "&a&lMember Online: &7%player%" + member-offline: "&c&lMember Offline: &7%player%" + use-default-help: true + custom-help: + - '&6&m--------------------------------------------------' + - '&9&lTeam Help' + - '&7&m--------------------------------------------------' + - '&9General commands' + - '&e/f create &7- Create a new faction' + - '&e/f join &7- Join to faction' + - '&e/f leave &7- Leave your current faction' + - '&e/f home &7- Teleport to your faction home' + - '&e/f d &7- Give money to your faction' + - '&m' + - '&9Information commands' + - '&e/f who &7- Display faction information' + - '&e/f map &7- Show nearby claims' + - '&e/f seechunk &7- Show chunk' + - '&e/f list &7- Show list of factions online' + - '&e/f top &7- Get top factions' + - '&m' + - '&9Moderator commands' + - '&e/f invite &7- Invite player to your faction' + - '&e/f deinvite &7- Revoke player invitation' + - '&e/f showinvites &7- List all pending invites' + - '&e/f kick &7- Kick player from faction' + - '&e/f title <#> &7Set title to player' + - '&e/f announce &7- Announce message to your faction' + - '&e/f claim &7- Start claim for your faction' + - '&e/f claimline <#> &7- Claim <#> line for your faction' + - '&e/f autoclaim &7- Start autoclam for your faction' + - '&e/f sethome &7- Sethome for your faction' + - '&e/f w &7- Take money from your faction' + - '&m' + - '&9Leader commands' + - '&e/f mod &7- Promote/Demote members/moderators' + - '&e/f unclaim &7- Unclaim land' + - '&e/f unclaimall &7- Unclaim all your lands' + - '&e/f tag &7- Rename your faction' + - '&e/f disband &7- Disband your faction' + - '&7&m--------------------------------------------------' + - '&6&m--------------------------------------------------' + warzone: + block-place-build-radius: 300 + requires-both-quadrants: false +kit-messages: + use-default-help: false + custom-help: + - '' + - '' + - '&3&lYou can edit this' + - '&c&lIN CONFIG!' +koth-messages: + controlling: "&cYou are now controlling &4%koth%" + controlling-lost: "&cYou are no longer controlling &4%koth%" + control-lost: "&8[&4&LKOTH&8] &4%player% &chas lost control of &4%koth% &c(%remaining%)" + someone-controlling: "&8[&4&LKOTH&8] &cSomeone is controlling &4%koth% &c(%remaining%)" +conquest-messages: + faction-required: "&cYou must be in faction to contest Conquest." + conquest-started: "&8[&3&lCONQUEST&8] &3%conquest% &9can now be contested." + attempting-control: "&8[&3&lCONQUEST&8] &9Attempting to control %conquest% &7(%remaining%)" + player-knocked: "&8[&3&lCONQUEST&8] &3%player% &9was knocked off %conquest%" + gained-points: "&8[&3&lCONQUEST&8] &3%faction% &9has gained 1 point for capturing %conquest% &7(%points%/%maxpoints%)" + lost-points: "&8[&3&lCONQUEST&8] &3%faction% &9has lost %deathpoints% because %player% died &7(%points%/%maxpoints%)" +citadel-messages: + controlling: "&dYou are now controlling &5%citadel%" + controlling-lost: "&dYou are no longer controlling &5%citadel%" + control-lost: "&8[&5&lCitadel&8] &5%player% &dhas lost control of &5%citadel% &d(%remaining%)" + someone-controlling: "&8[&5&lCitadel&8] &dSomeone is controlling 5%citadel% &d(%remaining%)" +palace-messages: + controlling: "&eYou are now controlling &6%palace%" + controlling-lost: "&eYou are no longer controlling &6%palace%" + control-lost: "&8[&6&lPalace&8] &6%player% &ehas lost control of &6%palace% &e(%remaining%)" + someone-controlling: "&8[&6&lPalace&8] &eSomeone is controlling &6%palace% &e(%remaining%)" +fury-messages: + faction-required: "&cYou must be in faction to contest Fury." + fury-started: "&6&lFURY &8> &6%fury% &ecan now be contested." + capzone-switch: "&6&lFURY &8> &eCapzone has been switched. &6%capzone% &eis new capzone." + attempting-control: "&6&lFURY &8> &eAttempting to control %fury% &7(%remaining%)" + player-knocked: "&6&lFURY &8> &e%player% &6was knocked off %fury%" + gained-points: "&6&lFURY &8> &6%faction% &ehas gained 1 point for capturing %fury% &7(%points%/%maxpoints%)" + lost-points: "&6&lFURY &8> &e%faction% &6has lost %deathpoints% because %player% died &7(%points%/%maxpoints%)" +miscellaneous-messages: + vanish-place-error: "&cYou cannot place blocks while you are vanished." + vanish-break-error: "&cYou cannot break blocks while you are vanished." + vanish-drop-item-error: "&cYou cannot drop items while you are in StaffMode." + wall-timer-notifier: "&cThis wall will prevent you from entering %claim% whilst you have your %timer% timer." +chest-configuration: + size: 9 + autosave: 10 + silentAutosave: false + clearOnDeath: false + dropOnDeath: false + permission-use-chest: "chest.use" + permission-others-chest: "chest.admin" + permission-bypass: "chest.bypass" + permission-clear-chest: "chest.clear" + permission-others-clear: "chest.admin" + permission-use-disposal: "disposal.use" + permission-savechest: "chest.savechest" + permission-savechests: "chest.savechests" + permission-use-workbench: "workbench.use" +chest-messages: + prefix: "&c[Chests]" + no-permission: "You don't have enough permissions." + no-safezone: "&cYou can only use chests in safezone." + gamemode-error: "&cYou cannot use chests in gamemode!" + cleared-chest: "&aSuccessfully clear your chest." +tablist: + player-info: "&ePlayer Info" + kill-counter: "&7Kills: " + death-counter: "&7Deaths: " + + location: "&eLocation" + + faction-info: "&eFaction Info" + dtr: "&eDTR: " + faction-online: "&eOnline: " + faction-balance: "&eBalance: $" + hq: "&eHQ: " + + next-koth: "&eNext KOTH" + none-scheduled: "&7None Scheduled" + + title: "&6&lMC-Market" + players-online: "&ePlayers Online" + faction-name-color: "&e" + + faction-list: "&eFaction List" + + end-portals: "&eEnd Portals:" + end-portals-coordinates: "&71000, 1000" + end-portals-quadrants: "&7in each quadrant" + + kit: "&eKit:" + kit-info: "&7Prot 1, Sharp 1" + + border: "&eBorder:" + border-info: "&73000" + + online-players: "&ePlayers Online:" + online-players-info: "&7%online-players%" + + citadel-cappers: "&eCitadel Cappers:" + citadel-cappers-info: "&7NoLimit" \ No newline at end of file diff --git a/bin/event-schedules.txt b/bin/event-schedules.txt new file mode 100644 index 0000000..92fb6ce --- /dev/null +++ b/bin/event-schedules.txt @@ -0,0 +1,2 @@ +# year,month,day,hour,minute:eventName (24 hour clock) +#2017,08,25,03,30,PM:Pagoda This would run event named 'Pagoda' at 3:30AM on the 25th of August, 2017. diff --git a/bin/faction-users.yml b/bin/faction-users.yml new file mode 100644 index 0000000..bf82e98 --- /dev/null +++ b/bin/faction-users.yml @@ -0,0 +1 @@ +users: {} diff --git a/bin/factions.yml b/bin/factions.yml new file mode 100644 index 0000000..10bc293 --- /dev/null +++ b/bin/factions.yml @@ -0,0 +1 @@ +factions: {} diff --git a/bin/items.csv b/bin/items.csv new file mode 100644 index 0000000..56c277d --- /dev/null +++ b/bin/items.csv @@ -0,0 +1,7449 @@ +#version: TeamCity +#If you change this file, it will not be automatically updated after the next release. +#item,id,metadata +stone,1,0 +sstone,1,0 +smoothstone,1,0 +rock,1,0 +grass,2,0 +greendirt,2,0 +greenearth,2,0 +greenland,2,0 +dirt,3,0 +earth,3,0 +land,3,0 +grasslessdirt,3,1 +grasslessearth,3,1 +grasslessland,3,1 +podzol,3,2 +cobblestone,4,0 +cstone,4,0 +cobble,4,0 +wood,5,0 +plank,5,0 +woodenplank,5,0 +woodplank,5,0 +wplank,5,0 +plankwooden,5,0 +plankwood,5,0 +plankw,5,0 +oakplank,5,0 +oakwoodenplank,5,0 +oakwoodplank,5,0 +oakwplank,5,0 +oakplankwooden,5,0 +oakplankwood,5,0 +oakplankw,5,0 +oplank,5,0 +owoodenplank,5,0 +owoodplank,5,0 +owplank,5,0 +oplankwooden,5,0 +oplankwood,5,0 +oplankw,5,0 +pineplank,5,1 +pinewoodenplank,5,1 +pinewoodplank,5,1 +pinewplank,5,1 +pineplankwooden,5,1 +pineplankwood,5,1 +pineplankw,5,1 +pplank,5,1 +pwoodenplank,5,1 +pwoodplank,5,1 +pwplank,5,1 +pplankwooden,5,1 +pplankwood,5,1 +pplankw,5,1 +darkplank,5,1 +darkwoodenplank,5,1 +darkwoodplank,5,1 +darkwplank,5,1 +darkplankwooden,5,1 +darkplankwood,5,1 +darkplankw,5,1 +dplank,5,1 +dwoodenplank,5,1 +dwoodplank,5,1 +dwplank,5,1 +dplankwooden,5,1 +dplankwood,5,1 +dplankw,5,1 +spruceplank,5,1 +sprucewoodenplank,5,1 +sprucewoodplank,5,1 +sprucewplank,5,1 +spruceplankwooden,5,1 +spruceplankwood,5,1 +spruceplankw,5,1 +splank,5,1 +swoodenplank,5,1 +swoodplank,5,1 +swplank,5,1 +splankwooden,5,1 +splankwood,5,1 +splankw,5,1 +birchplank,5,2 +birchwoodenplank,5,2 +birchwoodplank,5,2 +birchwplank,5,2 +birchplankwooden,5,2 +birchplankwood,5,2 +birchplankw,5,2 +bplank,5,2 +bwoodenplank,5,2 +bwoodplank,5,2 +bwplank,5,2 +bplankwooden,5,2 +bplankwood,5,2 +bplankw,5,2 +lightplank,5,2 +lightwoodenplank,5,2 +lightwoodplank,5,2 +lightwplank,5,2 +lightplankwooden,5,2 +lightplankwood,5,2 +lightplankw,5,2 +lplank,5,2 +lwoodenplank,5,2 +lwoodplank,5,2 +lwplank,5,2 +lplankwooden,5,2 +lplankwood,5,2 +lplankw,5,2 +whiteplank,5,2 +whitewoodenplank,5,2 +whitewoodplank,5,2 +whitewplank,5,2 +whiteplankwooden,5,2 +whiteplankwood,5,2 +whiteplankw,5,2 +wwoodenplank,5,2 +wwoodplank,5,2 +wwplank,5,2 +wplankwooden,5,2 +wplankwood,5,2 +wplankw,5,2 +jungleplank,5,3 +junglewoodenplank,5,3 +junglewoodplank,5,3 +junglewplank,5,3 +jungleplankwooden,5,3 +jungleplankwood,5,3 +jungleplankw,5,3 +jplank,5,3 +jwoodenplank,5,3 +jwoodplank,5,3 +jwplank,5,3 +jplankwooden,5,3 +jplankwood,5,3 +jplankw,5,3 +forestplank,5,3 +forestwoodenplank,5,3 +forestwoodplank,5,3 +forestwplank,5,3 +forestplankwooden,5,3 +forestplankwood,5,3 +forestplankw,5,3 +fplank,5,3 +fwoodenplank,5,3 +fwoodplank,5,3 +fwplank,5,3 +fplankwooden,5,3 +fplankwood,5,3 +fplankw,5,3 +acaciaplank,5,4 +acaciawoodenplank,5,4 +acaciawoodplank,5,4 +acaciawplank,5,4 +acaciaplankwooden,5,4 +acaciaplankwood,5,4 +acaciaplankw,5,4 +aplank,5,4 +awoodenplank,5,4 +awoodplank,5,4 +awplank,5,4 +aplankwooden,5,4 +aplankwood,5,4 +aplankw,5,4 +darkoakplank,5,5 +darkoakwoodenplank,5,5 +darkoakwoodplank,5,5 +darkoakwplank,5,5 +darkoakplankwooden,5,5 +darkoakplankwood,5,5 +darkoakplankw,5,5 +doakplank,5,5 +doakwoodenplank,5,5 +doakwoodplank,5,5 +doakwplank,5,5 +doakplankwooden,5,5 +doakplankwood,5,5 +doakplankw,5,5 +doplank,5,5 +dowoodenplank,5,5 +dowoodplank,5,5 +dowplank,5,5 +doplankwooden,5,5 +doplankwood,5,5 +doplankw,5,5 +sapling,6,0 +treesapling,6,0 +logsapling,6,0 +trunksapling,6,0 +woodsapling,6,0 +oaktreesapling,6,0 +oaklogsapling,6,0 +oaktrunksapling,6,0 +oakwoodsapling,6,0 +osapling,6,0 +otreesapling,6,0 +ologsapling,6,0 +otrunksapling,6,0 +owoodsapling,6,0 +darksapling,6,1 +darktreesapling,6,1 +darklogsapling,6,1 +darktrunksapling,6,1 +darkwoodsapling,6,1 +sprucesapling,6,1 +sprucetreesapling,6,1 +sprucelogsapling,6,1 +sprucetrunksapling,6,1 +sprucewoodsapling,6,1 +pinesapling,6,1 +pinetreesapling,6,1 +pinelogsapling,6,1 +pinetrunksapling,6,1 +pinewoodsapling,6,1 +dsapling,6,1 +dtreesapling,6,1 +dlogsapling,6,1 +dtrunksapling,6,1 +dwoodsapling,6,1 +ssapling,6,1 +streesapling,6,1 +slogsapling,6,1 +strunksapling,6,1 +swoodsapling,6,1 +psapling,6,1 +ptreesapling,6,1 +plogsapling,6,1 +ptrunksapling,6,1 +pwoodsapling,6,1 +birchsapling,6,2 +birchtreesapling,6,2 +birchlogsapling,6,2 +birchtrunksapling,6,2 +birchwoodsapling,6,2 +lightsapling,6,2 +lighttreesapling,6,2 +lightlogsapling,6,2 +lighttrunksapling,6,2 +lightwoodsapling,6,2 +whitesapling,6,2 +whitetreesapling,6,2 +whitelogsapling,6,2 +whitetrunksapling,6,2 +whitewoodsapling,6,2 +bsapling,6,2 +btreesapling,6,2 +blogsapling,6,2 +btrunksapling,6,2 +bwoodsapling,6,2 +lsapling,6,2 +ltreesapling,6,2 +llogsapling,6,2 +ltrunksapling,6,2 +lwoodsapling,6,2 +wsapling,6,2 +wtreesapling,6,2 +wlogsapling,6,2 +wtrunksapling,6,2 +wwoodsapling,6,2 +junglesapling,6,3 +jungletreesapling,6,3 +junglelogsapling,6,3 +jungletrunksapling,6,3 +junglewoodsapling,6,3 +forestsapling,6,3 +foresttreesapling,6,3 +forestlogsapling,6,3 +foresttrunksapling,6,3 +forestwoodsapling,6,3 +jsapling,6,3 +jtreesapling,6,3 +jlogsapling,6,3 +jtrunksapling,6,3 +jwoodsapling,6,3 +fsapling,6,3 +ftreesapling,6,3 +flogsapling,6,3 +ftrunksapling,6,3 +fwoodsapling,6,3 +acaciasapling,6,4 +acaciatreesapling,6,4 +acacialogsapling,6,4 +acaciatrunksapling,6,4 +acaciawoodsapling,6,4 +asapling,6,4 +atreesapling,6,4 +alogsapling,6,4 +atrunksapling,6,4 +awoodsapling,6,4 +darkoaksapling,6,5 +darkoaktreesapling,6,5 +darkoaklogsapling,6,5 +darkoaktrunksapling,6,5 +darkoakwoodsapling,6,5 +doaksapling,6,5 +doaktreesapling,6,5 +doaklogsapling,6,5 +doaktrunksapling,6,5 +dosapling,6,5 +dowoodsapling,6,5 +dotreesapling,6,5 +dologsapling,6,5 +dotrunksapling,6,5 +bedrock,7,0 +oprock,7,0 +opblock,7,0 +adminblock,7,0 +adminrock,7,0 +adminium,7,0 +water,8,0 +stationarywater,9,0 +stillwater,9,0 +swater,9,0 +lava,10,0 +stationarylava,11,0 +stilllava,11,0 +slava,11,0 +sand,12,0 +redsand,12,1 +rsand,12,1 +gravel,13,0 +goldore,14,0 +oregold,14,0 +gore,14,0 +oreg,14,0 +ogold,14,0 +goldo,14,0 +ironore,15,0 +oreiron,15,0 +irono,15,0 +oiron,15,0 +steelore,15,0 +oresteel,15,0 +steelo,15,0 +osteel,15,0 +iore,15,0 +orei,15,0 +sore,15,0 +ores,15,0 +coalore,16,0 +orecoal,16,0 +coalo,16,0 +ocoal,16,0 +core,16,0 +tree,17,0 +log,17,0 +trunk,17,0 +oak,17,0 +oaktree,17,0 +oaklog,17,0 +oaktrunk,17,0 +oakwood,17,0 +otree,17,0 +olog,17,0 +otrunk,17,0 +owood,17,0 +pine,17,1 +pinetree,17,1 +pinelog,17,1 +pinetrunk,17,1 +pinewood,17,1 +darktree,17,1 +darklog,17,1 +darktrunk,17,1 +darkwood,17,1 +spruce,17,1 +sprucetree,17,1 +sprucelog,17,1 +sprucetrunk,17,1 +sprucewood,17,1 +dtree,17,1 +dlog,17,1 +dtrunk,17,1 +dwood,17,1 +stree,17,1 +slog,17,1 +strunk,17,1 +swood,17,1 +ptree,17,1 +plog,17,1 +ptrunk,17,1 +pwood,17,1 +birch,17,2 +birchtree,17,2 +birchlog,17,2 +birchtrunk,17,2 +birchwood,17,2 +whitetree,17,2 +whitelog,17,2 +whitetrunk,17,2 +whitewood,17,2 +lighttree,17,2 +lightlog,17,2 +lighttrunk,17,2 +lightwood,17,2 +btree,17,2 +blog,17,2 +btrunk,17,2 +bwood,17,2 +wtree,17,2 +wlog,17,2 +wtrunk,17,2 +wwood,17,2 +ltree,17,2 +llog,17,2 +ltrunk,17,2 +lwood,17,2 +jungletree,17,3 +junglelog,17,3 +jungletrunk,17,3 +junglewood,17,3 +jungle,17,3 +forest,17,3 +foresttree,17,3 +forestlog,17,3 +foresttrunk,17,3 +forestwood,17,3 +jtree,17,3 +jlog,17,3 +jtrunk,17,3 +jwood,17,3 +ftree,17,3 +flog,17,3 +ftrunk,17,3 +fwood,17,3 +leaves,18,0 +leaf,18,0 +treeleaves,18,0 +logleaves,18,0 +trunkleaves,18,0 +woodleaves,18,0 +oakleaves,18,0 +oakleaf,18,0 +oleaves,18,0 +oleaf,18,0 +oaktreeleaves,18,0 +oaklogleaves,18,0 +oaktrunkleaves,18,0 +oakwoodleaves,18,0 +otreeleaves,18,0 +ologleaves,18,0 +otrunkleaves,18,0 +owoodleaves,18,0 +treeleaf,18,0 +logleaf,18,0 +trunkleaf,18,0 +woodleaf,18,0 +oaktreeleaf,18,0 +oaklogleaf,18,0 +oaktrunkleaf,18,0 +oakwoodleaf,18,0 +otreeleaf,18,0 +ologleaf,18,0 +otrunkleaf,18,0 +owoodleaf,18,0 +pineleaves,18,1 +pineleaf,18,1 +pleaves,18,1 +pleaf,18,1 +pinetreeleaves,18,1 +pinelogleaves,18,1 +pinetrunkleaves,18,1 +pinewoodleaves,18,1 +ptreeleaves,18,1 +plogleaves,18,1 +ptrunkleaves,18,1 +pwoodleaves,18,1 +spruceleaves,18,1 +spruceleaf,18,1 +sleaves,18,1 +sleaf,18,1 +sprucetreeleaves,18,1 +sprucelogleaves,18,1 +sprucetrunkleaves,18,1 +sprucewoodleaves,18,1 +streeleaves,18,1 +slogleaves,18,1 +strunkleaves,18,1 +swoodleaves,18,1 +darkleaves,18,1 +darkleaf,18,1 +dleaves,18,1 +dleaf,18,1 +darktreeleaves,18,1 +darklogleaves,18,1 +darktrunkleaves,18,1 +darkwoodleaves,18,1 +dtreeleaves,18,1 +dlogleaves,18,1 +dtrunkleaves,18,1 +dwoodleaves,18,1 +sprucetreeleaf,18,1 +sprucelogleaf,18,1 +sprucetrunkleaf,18,1 +sprucewoodleaf,18,1 +streeleaf,18,1 +slogleaf,18,1 +strunkleaf,18,1 +swoodleaf,18,1 +pinetreeleaf,18,1 +pinelogleaf,18,1 +pinetrunkleaf,18,1 +pinewoodleaf,18,1 +ptreeleaf,18,1 +plogleaf,18,1 +ptrunkleaf,18,1 +pwoodleaf,18,1 +darktreeleaf,18,1 +darklogleaf,18,1 +darktrunkleaf,18,1 +darkwoodleaf,18,1 +dtreeleaf,18,1 +dlogleaf,18,1 +dtrunkleaf,18,1 +dwoodleaf,18,1 +birchleaves,18,2 +birchleaf,18,2 +bleaves,18,2 +bleaf,18,2 +birchtreeleaves,18,2 +birchlogleaves,18,2 +birchtrunkleaves,18,2 +birchwoodleaves,18,2 +btreeleaves,18,2 +blogleaves,18,2 +btrunkleaves,18,2 +bwoodleaves,18,2 +lightleaves,18,2 +lightleaf,18,2 +lleaves,18,2 +lleaf,18,2 +lighttreeleaves,18,2 +lightlogleaves,18,2 +lighttrunkleaves,18,2 +lightwoodleaves,18,2 +ltreeleaves,18,2 +llogleaves,18,2 +ltrunkleaves,18,2 +lwoodleaves,18,2 +whiteleaves,18,2 +whiteleaf,18,2 +wleaves,18,2 +wleaf,18,2 +whitetreeleaves,18,2 +whitelogleaves,18,2 +whitetrunkleaves,18,2 +whitewoodleaves,18,2 +wtreeleaves,18,2 +wlogleaves,18,2 +wtrunkleaves,18,2 +wwoodleaves,18,2 +birchtreeleaf,18,2 +birchlogleaf,18,2 +birchtrunkleaf,18,2 +birchwoodleaf,18,2 +btreeleaf,18,2 +blogleaf,18,2 +btrunkleaf,18,2 +bwoodleaf,18,2 +lighttreeleaf,18,2 +lightlogleaf,18,2 +lighttrunkleaf,18,2 +lightwoodleaf,18,2 +ltreeleaf,18,2 +llogleaf,18,2 +ltrunkleaf,18,2 +lwoodleaf,18,2 +whitetreeleaf,18,2 +whitelogleaf,18,2 +whitetrunkleaf,18,2 +whitewoodleaf,18,2 +wtreeleaf,18,2 +wlogleaf,18,2 +wtrunkleaf,18,2 +wwoodleaf,18,2 +jungleleaves,18,3 +jungleleaf,18,3 +jleaves,18,3 +jleaf,18,3 +jungletreeleaves,18,3 +junglelogleaves,18,3 +jungletrunkleaves,18,3 +junglewoodleaves,18,3 +jtreeleaves,18,3 +jlogleaves,18,3 +jtrunkleaves,18,3 +jwoodleaves,18,3 +forestleaves,18,3 +forestleaf,18,3 +fleaves,18,3 +fleaf,18,3 +foresttreeleaves,18,3 +forestlogleaves,18,3 +foresttrunkleaves,18,3 +forestwoodleaves,18,3 +ftreeleaves,18,3 +flogleaves,18,3 +ftrunkleaves,18,3 +fwoodleaves,18,3 +jungletreeleaf,18,3 +junglelogleaf,18,3 +jungletrunkleaf,18,3 +junglewoodleaf,18,3 +jtreeleaf,18,3 +jlogleaf,18,3 +jtrunkleaf,18,3 +jwoodleaf,18,3 +foresttreeleaf,18,3 +forestlogleaf,18,3 +foresttrunkleaf,18,3 +forestwoodleaf,18,3 +ftreeleaf,18,3 +flogleaf,18,3 +ftrunkleaf,18,3 +fwoodleaf,18,3 +sponge,19,0 +glass,20,0 +blockglass,20,0 +glassblock,20,0 +lapislazuliore,21,0 +lapislazulio,21,0 +orelapislazuli,21,0 +olapislazuli,21,0 +lapisore,21,0 +lapiso,21,0 +orelapis,21,0 +olapis,21,0 +lore,21,0 +orel,21,0 +lapislazuliblock,22,0 +blocklapislazuli,22,0 +lapisblock,22,0 +blocklapis,22,0 +lblock,22,0 +blockl,22,0 +dispenser,23,0 +dispense,23,0 +sandstone,24,0 +sastone,24,0 +creepersandstone,24,1 +creepersastone,24,1 +creepsandstone,24,1 +creepsastone,24,1 +csandstone,24,1 +csastone,24,1 +hieroglyphicsandstone,24,1 +hieroglyphicsastone,24,1 +hieroglyphsandstone,24,1 +hieroglyphsastone,24,1 +hsandstone,24,1 +hsastone,24,1 +pyramidsandstone,24,1 +pyramidsastone,24,1 +psandstone,24,1 +psastone,24,1 +chiseledsandstone,24,1 +chiseledsastone,24,1 +chiselsandstone,24,1 +chiselsastone,24,1 +smoothsandstone,24,2 +smoothsastone,24,2 +ssandstone,24,2 +smsastone,24,2 +ssastone,24,2 +noteblock,25,0 +musicblock,25,0 +nblock,25,0 +mblock,25,0 +poweredtrack,27,0 +poweredrails,27,0 +poweredrail,27,0 +boostertrack,27,0 +boosterrails,27,0 +boosterrail,27,0 +powertrack,27,0 +powerrails,27,0 +powerrail,27,0 +boosttrack,27,0 +boostrails,27,0 +boostrail,27,0 +ptrack,27,0 +prails,27,0 +prail,27,0 +btrack,27,0 +brails,27,0 +brail,27,0 +detectortrack,28,0 +detectorrails,28,0 +detectorrail,28,0 +detectingtrack,28,0 +detectingrails,28,0 +detectingrail,28,0 +detecttrack,28,0 +detectrails,28,0 +detectrail,28,0 +dtrack,28,0 +drails,28,0 +drail,28,0 +stickypistonbase,29,0 +stickypiston,29,0 +stickpistonbase,29,0 +stickpiston,29,0 +stickyp,29,0 +spistonbase,29,0 +spiston,29,0 +pistonstickybase,29,0 +pistonsticky,29,0 +pistonstickbase,29,0 +pistonstick,29,0 +pistonsbase,29,0 +pistons,29,0 +psticky,29,0 +pstick,29,0 +spiderweb,30,0 +cobweb,30,0 +sweb,30,0 +cweb,30,0 +web,30,0 +longgrass,31,1 +tallgrass,31,1 +wildgrass,31,1 +grasslong,31,1 +grasstall,31,1 +grasswild,31,1 +lgrass,31,1 +tgrass,31,1 +wgrass,31,1 +fern,31,2 +bush,31,2 +deadshrub,32,0 +dshrub,32,0 +deadbush,32,0 +dbush,32,0 +deadsapling,32,0 +piston,33,0 +pistonbase,33,0 +pistonblock,33,0 +whitewool,35,0 +whitecloth,35,0 +whitecotton,35,0 +wcloth,35,0 +wwool,35,0 +wcotton,35,0 +cloth,35,0 +wool,35,0 +cotton,35,0 +orangewool,35,1 +orangecloth,35,1 +orangecotton,35,1 +ocloth,35,1 +owool,35,1 +ocotton,35,1 +magentawool,35,2 +magentacloth,35,2 +magentacotton,35,2 +mcloth,35,2 +mwool,35,2 +mcotton,35,2 +lightbluewool,35,3 +lightbluecloth,35,3 +lightbluecotton,35,3 +lbluecloth,35,3 +lbluewool,35,3 +lbluecotton,35,3 +lightblucloth,35,3 +lightbluwool,35,3 +lightblucotton,35,3 +lblucloth,35,3 +lbluwool,35,3 +lblucotton,35,3 +lbcloth,35,3 +lbwool,35,3 +lbcotton,35,3 +yellowwool,35,4 +yellowcloth,35,4 +yellowcotton,35,4 +ycloth,35,4 +ywool,35,4 +ycotton,35,4 +lightgreenwool,35,5 +lightgreencloth,35,5 +lightgreencotton,35,5 +lgreencloth,35,5 +lgreenwool,35,5 +lgreencotton,35,5 +lightgrecloth,35,5 +lightgrewool,35,5 +lightgrecotton,35,5 +lgrecloth,35,5 +lgrewool,35,5 +lgrecotton,35,5 +limecloth,35,5 +limewool,35,5 +limecotton,35,5 +lcloth,35,5 +lwool,35,5 +lcotton,35,5 +pinkwool,35,6 +pinkcloth,35,6 +pinkcotton,35,6 +picloth,35,6 +piwool,35,6 +picotton,35,6 +darkgraywool,35,7 +darkgraycloth,35,7 +darkgraycotton,35,7 +darkgreywool,35,7 +darkgreycloth,35,7 +darkgreycotton,35,7 +dgraycloth,35,7 +dgraywool,35,7 +dgraycotton,35,7 +dgreycloth,35,7 +dgreywool,35,7 +dgreycotton,35,7 +darkgracloth,35,7 +darkgrawool,35,7 +darkgracotton,35,7 +dgracloth,35,7 +dgrawool,35,7 +dgracotton,35,7 +graycloth,35,7 +graywool,35,7 +graycotton,35,7 +greycloth,35,7 +greywool,35,7 +greycotton,35,7 +gracloth,35,7 +grawool,35,7 +gracotton,35,7 +lightgraywool,35,8 +lightgraycloth,35,8 +lightgraycotton,35,8 +lgraycloth,35,8 +lgraywool,35,8 +lgraycotton,35,8 +lightgreywool,35,8 +lightgreycloth,35,8 +lightgreycotton,35,8 +lgreycloth,35,8 +lgreywool,35,8 +lgreycotton,35,8 +lightgracloth,35,8 +lightgrawool,35,8 +lightgracotton,35,8 +lgracloth,35,8 +lgrawool,35,8 +lgracotton,35,8 +silvercloth,35,8 +silverwool,35,8 +silvercotton,35,8 +sicloth,35,8 +siawool,35,8 +siacotton,35,8 +cyanwool,35,9 +cyancloth,35,9 +cyancotton,35,9 +ccloth,35,9 +cwool,35,9 +ccotton,35,9 +purplewool,35,10 +purplecloth,35,10 +purplecotton,35,10 +pucloth,35,10 +puwool,35,10 +pucotton,35,10 +bluewool,35,11 +bluecloth,35,11 +bluecotton,35,11 +blucloth,35,11 +bluwool,35,11 +blucotton,35,11 +brownwool,35,12 +browncloth,35,12 +browncotton,35,12 +brocloth,35,12 +browool,35,12 +brocotton,35,12 +darkgreenwool,35,13 +darkgreencloth,35,13 +darkgreencotton,35,13 +dgreencloth,35,13 +dgreenwool,35,13 +dgreencotton,35,13 +greencloth,35,13 +greenwool,35,13 +greencotton,35,13 +darkgrecloth,35,13 +darkgrewool,35,13 +darkgrecotton,35,13 +dgrecloth,35,13 +dgrewool,35,13 +dgrecotton,35,13 +grecloth,35,13 +grewool,35,13 +grecotton,35,13 +redwool,35,14 +redcloth,35,14 +redcotton,35,14 +rcloth,35,14 +rwool,35,14 +rcotton,35,14 +blackwool,35,15 +blackcloth,35,15 +blackcotton,35,15 +blacloth,35,15 +blawool,35,15 +blacotton,35,15 +dandelion,37,0 +yellowdandelion,37,0 +ydandelion,37,0 +yellowflower,37,0 +yflower,37,0 +flower,37,0 +rose,38,0 +redrose,38,0 +rrose,38,0 +redflower,38,0 +rflower,38,0 +poppy,38,0 +redpoppy,38,0 +blueorchid,38,1 +cyanorchid,38,1 +lightblueorchid,38,1 +lblueorchid,38,1 +orchid,38,1 +allium,38,2 +magentaallium,38,2 +azurebluet,38,3 +whiteazurebluet,38,3 +abluet,38,3 +azureb,38,3 +houstonia,38,3 +redtulip,38,4 +tulipred,38,4 +rtulip,38,4 +tulipr,38,4 +orangetulip,38,5 +tuliporange,38,5 +otulip,38,5 +tulipo,38,5 +whitetulip,38,6 +tulipwhite,38,6 +wtulip,38,6 +tulipw,38,6 +pinktulip,38,7 +tulippink,38,7 +ptulip,38,7 +tulipp,38,7 +oxeye,38,8 +daisy,38,8 +oxeyedaisy,38,8 +daisyoxeye,38,8 +moondaisy,38,8 +daisymoon,38,8 +lightgrayoxeye,38,8 +lgrayoxeye,38,8 +lightgreyoxeye,38,8 +lgreyoxeye,38,8 +brownmushroom,39,0 +brownshroom,39,0 +brownmush,39,0 +bmushroom,39,0 +bshroom,39,0 +bmush,39,0 +redmushroom,40,0 +redshroom,40,0 +redmush,40,0 +rmushroom,40,0 +rshroom,40,0 +rmush,40,0 +goldblock,41,0 +blockgold,41,0 +gblock,41,0 +blockg,41,0 +ironblock,42,0 +steelblock,42,0 +blockiron,42,0 +blocksteel,42,0 +iblock,42,0 +stblock,42,0 +blocki,42,0 +blockst,42,0 +stonedoublestep,43,0 +stonedstep,43,0 +sdoublestep,43,0 +sdstep,43,0 +doublestonestep,43,0 +dstonestep,43,0 +doublesstep,43,0 +doublestep,43,0 +dstep,43,0 +stonedoubleslab,43,0 +stonedslab,43,0 +sdoubleslab,43,0 +sdslab,43,0 +doublestoneslab,43,0 +dstoneslab,43,0 +doublesslab,43,0 +doubleslab,43,0 +dslab,43,0 +stonedoublehalfblock,43,0 +stonedhalfblock,43,0 +sdoublehalfblock,43,0 +sdhalfblock,43,0 +doublestonehalfblock,43,0 +dstonehalfblock,43,0 +doubleshalfblock,43,0 +doublehalfblock,43,0 +dhalfblock,43,0 +sandstonedoublestep,43,1 +sandstonedstep,43,1 +sstonedoublestep,43,1 +sstonedstep,43,1 +ssdoublestep,43,1 +ssdstep,43,1 +doublesandstonestep,43,1 +dsandstonestep,43,1 +doublesstonestep,43,1 +dsstonestep,43,1 +doublessstep,43,1 +dsstep,43,1 +sandstonedoubleslab,43,1 +sandstonedslab,43,1 +sstonedoubleslab,43,1 +sstonedslab,43,1 +ssdoubleslab,43,1 +ssdslab,43,1 +doublesandstoneslab,43,1 +dsandstoneslab,43,1 +doublesstoneslab,43,1 +dsstoneslab,43,1 +doublessslab,43,1 +dsslab,43,1 +sandstonedoublehalfblock,43,1 +sandstonedhalfblock,43,1 +sstonedoublehalfblock,43,1 +sstonedhalfblock,43,1 +ssdoublehalfblock,43,1 +ssdhalfblock,43,1 +doublesandstonehalfblock,43,1 +dsandstonehalfblock,43,1 +doublesstonehalfblock,43,1 +dsstonehalfblock,43,1 +doublesshalfblock,43,1 +dsshalfblock,43,1 +plankstonedoublestep,43,2 +woodenstonedoublestep,43,2 +woodenstonedstep,43,2 +woodstonedoublestep,43,2 +woodstonedstep,43,2 +wstonedoublestep,43,2 +wstonedstep,43,2 +doublewoodenstonestep,43,2 +dwoodenstonestep,43,2 +doublewoodstonestep,43,2 +dwoodstonestep,43,2 +doublewstonestep,43,2 +dwstonestep,43,2 +woodenstonedoubleslab,43,2 +woodenstonedslab,43,2 +woodstonedoubleslab,43,2 +woodstonedslab,43,2 +wstonedoubleslab,43,2 +wstonedslab,43,2 +doublewoodenstoneslab,43,2 +dwoodenstoneslab,43,2 +doublewoodstoneslab,43,2 +dwoodstoneslab,43,2 +doublewstoneslab,43,2 +dwstoneslab,43,2 +woodenstonedoublehalfblock,43,2 +woodenstonedhalfblock,43,2 +woodstonedoublehalfblock,43,2 +woodstonedhalfblock,43,2 +wstonedoublehalfblock,43,2 +wstonedhalfblock,43,2 +doublewoodenstonehalfblock,43,2 +dwoodenstonehalfblock,43,2 +doublewoodstonehalfblock,43,2 +dwoodstonehalfblock,43,2 +doublewstonehalfblock,43,2 +dwstonehalfblock,43,2 +cobblestonedoublestep,43,3 +cobblestonedstep,43,3 +cobbledoublestep,43,3 +cobbledstep,43,3 +cstonedoublestep,43,3 +cstonedstep,43,3 +csdoublestep,43,3 +csdstep,43,3 +doublecobblestonestep,43,3 +dcobblestonestep,43,3 +doublecobblestep,43,3 +dcobblestep,43,3 +doublecstonestep,43,3 +dcstonestep,43,3 +doublecsstep,43,3 +dcsstep,43,3 +cobblestonedoubleslab,43,3 +cobblestonedslab,43,3 +cobbledoubleslab,43,3 +cobbledslab,43,3 +cstonedoubleslab,43,3 +cstonedslab,43,3 +csdoubleslab,43,3 +csdslab,43,3 +doublecobblestoneslab,43,3 +dcobblestoneslab,43,3 +doublecobbleslab,43,3 +dcobbleslab,43,3 +doublecstoneslab,43,3 +dcstoneslab,43,3 +doublecsslab,43,3 +dcsslab,43,3 +cobblestonedoublehalfblock,43,3 +cobblestonedhalfblock,43,3 +cobbledoublehalfblock,43,3 +cobbledhalfblock,43,3 +cstonedoublehalfblock,43,3 +cstonedhalfblock,43,3 +csdoublehalfblock,43,3 +csdhalfblock,43,3 +doublecobblestonehalfblock,43,3 +dcobblestonehalfblock,43,3 +doublecobblehalfblock,43,3 +dcobblehalfblock,43,3 +doublecstonehalfblock,43,3 +dcstonehalfblock,43,3 +doublecshalfblock,43,3 +dcshalfblock,43,3 +brickdoublestep,43,4 +brickdstep,43,4 +bdoublestep,43,4 +bdstep,43,4 +brickdoubleslab,43,4 +brickdslab,43,4 +bdoubleslab,43,4 +bdslab,43,4 +doublebrickstep,43,4 +dbrickstep,43,4 +doublebstep,43,4 +dbstep,43,4 +doublebrickslab,43,4 +dbrickslab,43,4 +doublebslab,43,4 +dbslab,43,4 +brickdoublehalfblock,43,4 +brickdhalfblock,43,4 +bdoublehalfblock,43,4 +bdhalfblock,43,4 +doublebrickhalfblock,43,4 +dbrickhalfblock,43,4 +doublebhalfblock,43,4 +dbhalfblock,43,4 +stonebrickdoublestep,43,5 +stonebrickdstep,43,5 +stonebdoublestep,43,5 +stonebdstep,43,5 +sbrickdoublestep,43,5 +sbrickdstep,43,5 +sbdoublestep,43,5 +sbdstep,43,5 +stonebrickdoubleslab,43,5 +stonebrickdslab,43,5 +stonebdoubleslab,43,5 +stonebdslab,43,5 +sbrickdoubleslab,43,5 +sbrickdslab,43,5 +sbdoubleslab,43,5 +sbdslab,43,5 +doublestonebrickstep,43,5 +dstonebrickstep,43,5 +doublestonebstep,43,5 +dstonebstep,43,5 +doublesbrickstep,43,5 +dsbrickstep,43,5 +doublesbstep,43,5 +dsbstep,43,5 +doublestonebrickslab,43,5 +dstonebrickslab,43,5 +doublestonebslab,43,5 +dstonebslab,43,5 +doublesbrickslab,43,5 +dsbrickdslab,43,5 +doublesbslab,43,5 +dsbslab,43,5 +stonebrickdoublehalfblock,43,5 +stonebrickdhalfblock,43,5 +stonebdoublehalfblock,43,5 +stonebdhalfblock,43,5 +sbrickdoublehalfblock,43,5 +sbrickdhalfblock,43,5 +sbdoublehalfblock,43,5 +sbdhalfblock,43,5 +doublestonebrickhalfblock,43,5 +dstonebrickhalfblock,43,5 +doublestonebhalfblock,43,5 +dstonebhalfblock,43,5 +doublesbrickhalfblock,43,5 +dsbrickhalfblock,43,5 +doublesbhalfblock,43,5 +dsbhalfblock,43,5 +netherbrickdoubleslab,43,6 +hellbrickdoubleslab,43,6 +nbrickdoubleslab,43,6 +hbrickdoubleslab,43,6 +netherdoubleslab,43,6 +helldoubleslab,43,6 +nbdoubleslab,43,6 +hbdoubleslab,43,6 +hdoubleslab,43,6 +ndoubleslab,43,6 +netherbrickdoublestep,43,6 +hellbrickdoublestep,43,6 +nbrickdoublestep,43,6 +hbrickdoublestep,43,6 +netherdoublestep,43,6 +helldoublestep,43,6 +nbdoublestep,43,6 +hbdoublestep,43,6 +ndoublestep,43,6 +hdoublestep,43,6 +netherbrickdoublehalfblock,43,6 +hellbrickdoublehalfblock,43,6 +nbrickdoublehalfblock,43,6 +hbrickdoublehalfblock,43,6 +netherdoublehalfblock,43,6 +helldoublehalfblock,43,6 +nbdoublehalfblock,43,6 +hbdoublehalfblock,43,6 +ndoublehalfblock,43,6 +hdoublehalfblock,43,6 +netherbrickdslab,43,6 +hellbrickdslab,43,6 +nbrickdslab,43,6 +hbrickdslab,43,6 +netherdslab,43,6 +helldslab,43,6 +nbdslab,43,6 +hbdslab,43,6 +hdslab,43,6 +ndslab,43,6 +netherbrickdstep,43,6 +hellbrickdstep,43,6 +nbrickdstep,43,6 +hbrickdstep,43,6 +netherdstep,43,6 +helldstep,43,6 +nbdstep,43,6 +hbdstep,43,6 +ndstep,43,6 +hdstep,43,6 +netherbrickdhalfblock,43,6 +hellbrickdhalfblock,43,6 +nbrickdhalfblock,43,6 +hbrickdhalfblock,43,6 +netherdhalfblock,43,6 +helldhalfblock,43,6 +nbdhalfblock,43,6 +hbdhalfblock,43,6 +ndhalfblock,43,6 +hdhalfblock,43,6 +doublenetherbrickslab,43,6 +doublehellbrickslab,43,6 +doublenbrickslab,43,6 +doublehbrickslab,43,6 +doublenetherslab,43,6 +doublehellslab,43,6 +doublenbslab,43,6 +doublehbslab,43,6 +doublehslab,43,6 +doublenslab,43,6 +doublenetherbrickstep,43,6 +doublehellbrickstep,43,6 +doublenbrickstep,43,6 +doublehbrickstep,43,6 +doublenetherstep,43,6 +doublehellstep,43,6 +doublenbstep,43,6 +doublehbstep,43,6 +doublenstep,43,6 +doublehstep,43,6 +doublenetherbrickhalfblock,43,6 +doublehellbrickhalfblock,43,6 +doublenbrickhalfblock,43,6 +doublehbrickhalfblock,43,6 +doublenetherhalfblock,43,6 +doublehellhalfblock,43,6 +doublenbhalfblock,43,6 +doublehbhalfblock,43,6 +doublenhalfblock,43,6 +doublehhalfblock,43,6 +dnetherbrickslab,43,6 +dhellbrickslab,43,6 +dnbrickslab,43,6 +dhbrickslab,43,6 +dnetherslab,43,6 +dhellslab,43,6 +dnbslab,43,6 +dhbslab,43,6 +dhslab,43,6 +dnslab,43,6 +dnetherbrickstep,43,6 +dhellbrickstep,43,6 +dnbrickstep,43,6 +dhbrickstep,43,6 +dnetherstep,43,6 +dhellstep,43,6 +dnbstep,43,6 +dhbstep,43,6 +dnstep,43,6 +dhstep,43,6 +dnetherbrickhalfblock,43,6 +dhellbrickhalfblock,43,6 +dnbrickhalfblock,43,6 +dhbrickhalfblock,43,6 +dnetherhalfblock,43,6 +dhellhalfblock,43,6 +dnbhalfblock,43,6 +dhbhalfblock,43,6 +dnhalfblock,43,6 +dhhalfblock,43,6 +netherquartzdoublestep,43,7 +hellquartzdoublestep,43,7 +deathquartzdoublestep,43,7 +nquartzdoublestep,43,7 +hquartzdoublestep,43,7 +dquartzdoublestep,43,7 +quartzdoublestep,43,7 +nqdoublestep,43,7 +hqdoublestep,43,7 +dqdoublestep,43,7 +qdoublestep,43,7 +netherquartzdoubleslab,43,7 +hellquartzdoubleslab,43,7 +deathquartzdoubleslab,43,7 +nquartzdoubleslab,43,7 +hquartzdoubleslab,43,7 +dquartzdoubleslab,43,7 +quartzdoubleslab,43,7 +nqdoubleslab,43,7 +hqdoubleslab,43,7 +dqdoubleslab,43,7 +qdoubleslab,43,7 +netherquartzdoublehalfblock,43,7 +hellquartzdoublehalfblock,43,7 +deathquartzdoublehalfblock,43,7 +nquartzdoublehalfblock,43,7 +hquartzdoublehalfblock,43,7 +dquartzdoublehalfblock,43,7 +quartzdoublehalfblock,43,7 +nqdoublehalfblock,43,7 +hqdoublehalfblock,43,7 +dqdoublehalfblock,43,7 +qdoublehalfblock,43,7 +netherquartzdslab,43,7 +hellquartzdslab,43,7 +deathquartzdslab,43,7 +nquartzdslab,43,7 +hquartzdslab,43,7 +dquartzdslab,43,7 +quartzdslab,43,7 +nqdslab,43,7 +hqdslab,43,7 +dqdslab,43,7 +qdslab,43,7 +netherquartzdstep,43,7 +hellquartzdstep,43,7 +deathquartzdstep,43,7 +nquartzdstep,43,7 +hquartzdstep,43,7 +dquartzdstep,43,7 +quartzdstep,43,7 +nqdstep,43,7 +hqdstep,43,7 +dqdstep,43,7 +qdstep,43,7 +netherquartzdhalfblock,43,7 +hellquartzdhalfblock,43,7 +deathquartzdhalfblock,43,7 +nquartzdhalfblock,43,7 +hquartzdhalfblock,43,7 +dquartzdhalfblock,43,7 +quartzdhalfblock,43,7 +nqdhalfblock,43,7 +hqdhalfblock,43,7 +dqdhalfblock,43,7 +qdhalfblock,43,7 +doublenetherquartzslab,43,7 +doublehellquartzslab,43,7 +doubledeathquartzslab,43,7 +doublenquartzslab,43,7 +doublehquartzslab,43,7 +doubledquartzslab,43,7 +doublequartzslab,43,7 +doublenqslab,43,7 +doublehqslab,43,7 +doubledqslab,43,7 +doubleqslab,43,7 +doublenetherquartzstep,43,7 +doublehellquartzstep,43,7 +doubledeathquartzstep,43,7 +doublenquartzstep,43,7 +doublehquartzstep,43,7 +doubledquartzstep,43,7 +doublequartzstep,43,7 +doublenqstep,43,7 +doublehqstep,43,7 +doubledqstep,43,7 +doubleqstep,43,7 +doublenetherquartzhalfblock,43,7 +doublehellquartzhalfblock,43,7 +doubledeathquartzhalfblock,43,7 +doublenquartzhalfblock,43,7 +doublehquartzhalfblock,43,7 +doubledquartzhalfblock,43,7 +doublequartzhalfblock,43,7 +doublenqhalfblock,43,7 +doublehqhalfblock,43,7 +doubledqhalfblock,43,7 +doubleqhalfblock,43,7 +dnetherquartzslab,43,7 +dhellquartzslab,43,7 +ddeathquartzslab,43,7 +dnquartzslab,43,7 +dhquartzslab,43,7 +ddquartzslab,43,7 +dnqslab,43,7 +dhqslab,43,7 +ddqslab,43,7 +dnetherquartzstep,43,7 +dhellquartzstep,43,7 +ddeathquartzstep,43,7 +dnquartzstep,43,7 +dhquartzstep,43,7 +ddquartzstep,43,7 +dnqstep,43,7 +dhqstep,43,7 +ddqstep,43,7 +dnetherquartzhalfblock,43,7 +dhellquartzhalfblock,43,7 +ddeathquartzhalfblock,43,7 +dnquartzhalfblock,43,7 +dhquartzhalfblock,43,7 +ddquartzhalfblock,43,7 +dnqhalfblock,43,7 +dhqhalfblock,43,7 +ddqhalfblock,43,7 +smoothstonedoubleslab,43,8 +smoothstonedoublestep,43,8 +smoothstonedoublehalfblock,43,8 +smoothstonedslab,43,8 +smoothstonedstep,43,8 +smoothstonedhalfblock,43,8 +doublesmoothstoneslab,43,8 +doublesmoothstonestep,43,8 +doublesmoothstonehalfblock,43,8 +dsmoothstoneslab,43,8 +dsmoothstonestep,43,8 +dsmoothstonehalfblock,43,8 +smoothsandstonedoubleslab,43,9 +ssandstonedoubleslab,43,9 +ssstonedoubleslab,43,9 +sssdoubleslab,43,9 +smoothsandstonedoublestep,43,9 +ssandstonedoublestep,43,9 +ssstonedoublestep,43,9 +sssdoublestep,43,9 +smoothsandstonedoublehalfblock,43,9 +ssandstonedoublehalfblock,43,9 +ssstonedoublehalfblock,43,9 +sssdoublehalfblock,43,9 +smoothsandstonedslab,43,9 +ssandstonedslab,43,9 +ssstonedslab,43,9 +sssdslab,43,9 +smoothsandstonedstep,43,9 +ssandstonedstep,43,9 +ssstonedstep,43,9 +sssdstep,43,9 +smoothsandstonedhalfblock,43,9 +ssandstonedhalfblock,43,9 +ssstonedhalfblock,43,9 +sssdhalfblock,43,9 +doublesmoothsandstoneslab,43,9 +doublessandstoneslab,43,9 +doublessstoneslab,43,9 +doublesssslab,43,9 +doublesmoothsandstonestep,43,9 +doublessandstonestep,43,9 +doublessstonestep,43,9 +doublesssstep,43,9 +doublesmoothsandstonehalfblock,43,9 +doublessandstonehalfblock,43,9 +doublessstonehalfblock,43,9 +doublessshalfblock,43,9 +dsmoothsandstoneslab,43,9 +dssandstoneslab,43,9 +dssstoneslab,43,9 +dsssslab,43,9 +dsmoothsandstonestep,43,9 +dssandstonestep,43,9 +dssstonestep,43,9 +dsssstep,43,9 +dsmoothsandstonehalfblock,43,9 +dssandstonehalfblock,43,9 +dssstonehalfblock,43,9 +dssshalfblock,43,9 +smoothstonestep,44,0 +stonestep,44,0 +sstep,44,0 +step,44,0 +smoothstoneslab,44,0 +stoneslab,44,0 +sslab,44,0 +slab,44,0 +smoothstonehalfblock,44,0 +stonehalfblock,44,0 +shalfblock,44,0 +halfblock,44,0 +sandstonestep,44,1 +sstonestep,44,1 +ssstep,44,1 +sandstoneslab,44,1 +sstoneslab,44,1 +ssslab,44,1 +sandstonehalfblock,44,1 +sstonehalfblock,44,1 +sshalfblock,44,1 +woodenstonestep,44,2 +woodstonestep,44,2 +wstonestep,44,2 +woodenstoneslab,44,2 +woodstoneslab,44,2 +wstoneslab,44,2 +woodenstonehalfblock,44,2 +woodstonehalfblock,44,2 +wstonehalfblock,44,2 +cobblestonestep,44,3 +cobblestep,44,3 +cstonestep,44,3 +csstep,44,3 +cobblestoneslab,44,3 +cobbleslab,44,3 +cstoneslab,44,3 +csslab,44,3 +cobblestonehalfblock,44,3 +cobblehalfblock,44,3 +cstonehalfblock,44,3 +cshalfblock,44,3 +brickstep,44,4 +bstep,44,4 +brickslab,44,4 +bslab,44,4 +brickhalfblock,44,4 +bhalfblock,44,4 +stonebrickstep,44,5 +stonebstep,44,5 +sbrickstep,44,5 +sbstep,44,5 +stonebrickslab,44,5 +stonebslab,44,5 +sbrickslab,44,5 +sbslab,44,5 +stonebrickhalfblock,44,5 +stonebhalfblock,44,5 +sbrickhalfblock,44,5 +sbhalfblock,44,5 +netherbrickslab,44,6 +hellbrickslab,44,6 +nbrickslab,44,6 +hbrickslab,44,6 +netherslab,44,6 +hellslab,44,6 +nbslab,44,6 +hbslab,44,6 +hslab,44,6 +nslab,44,6 +netherbrickstep,44,6 +hellbrickstep,44,6 +nbrickstep,44,6 +hbrickstep,44,6 +netherstep,44,6 +hellstep,44,6 +nbstep,44,6 +hbstep,44,6 +nstep,44,6 +hstep,44,6 +netherbrickhalfblock,44,6 +hellbrickhalfblock,44,6 +nbrickhalfblock,44,6 +hbrickhalfblock,44,6 +netherhalfblock,44,6 +hellhalfblock,44,6 +nbhalfblock,44,6 +hbhalfblock,44,6 +nhalfblock,44,6 +hhalfblock,44,6 +netherquartzstep,44,7 +hellquartzstep,44,7 +deathquartzstep,44,7 +nquartzstep,44,7 +hquartzstep,44,7 +dquartzstep,44,7 +quartzstep,44,7 +nqstep,44,7 +hqstep,44,7 +dqstep,44,7 +qstep,44,7 +netherquartzslab,44,7 +hellquartzslab,44,7 +deathquartzslab,44,7 +nquartzslab,44,7 +hquartzslab,44,7 +dquartzslab,44,7 +quartzslab,44,7 +nqslab,44,7 +hqslab,44,7 +dqslab,44,7 +qslab,44,7 +netherquartzhalfblock,44,7 +hellquartzhalfblock,44,7 +deathquartzhalfblock,44,7 +nquartzhalfblock,44,7 +hquartzhalfblock,44,7 +dquartzhalfblock,44,7 +quartzhalfblock,44,7 +nqhalfblock,44,7 +hqhalfblock,44,7 +dqhalfblock,44,7 +qhalfblock,44,7 +brickblock,45,0 +blockbrick,45,0 +bblock,45,0 +blockb,45,0 +tnt,46,0 +tntblock,46,0 +blocktnt,46,0 +bombblock,46,0 +blockbomb,46,0 +dynamiteblock,46,0 +blockdynamite,46,0 +bomb,46,0 +dynamite,46,0 +bookcase,47,0 +casebook,47,0 +bookshelf,47,0 +shelfbook,47,0 +bookblock,47,0 +blockbook,47,0 +mossycobblestone,48,0 +mosscobblestone,48,0 +mcobblestone,48,0 +mossycobble,48,0 +mosscobble,48,0 +mcobble,48,0 +mossstone,48,0 +mossystone,48,0 +mstone,48,0 +obsidian,49,0 +obsi,49,0 +obby,49,0 +torch,50,0 +burningstick,50,0 +burnstick,50,0 +fire,51,0 +flame,51,0 +flames,51,0 +mobspawner,52,0 +mobcage,52,0 +monsterspawner,52,0 +monstercage,52,0 +mspawner,52,0 +mcage,52,0 +spawner,52,0 +cage,52,0 +woodenstairs,53,0 +woodstairs,53,0 +wstairs,53,0 +woodenstair,53,0 +woodstair,53,0 +wstair,53,0 +chest,54,0 +container,54,0 +diamondore,56,0 +crystalore,56,0 +orediamond,56,0 +orecrystal,56,0 +dore,56,0 +ored,56,0 +diamondblock,57,0 +blockdiamond,57,0 +crystalblock,57,0 +blockcrystal,57,0 +dblock,57,0 +blockd,57,0 +workbench,58,0 +craftingbench,58,0 +crafterbench,58,0 +craftbench,58,0 +worktable,58,0 +craftingtable,58,0 +craftertable,58,0 +crafttable,58,0 +wbench,58,0 +cbench,58,0 +soil,60,0 +furnace,61,0 +litfurnace,62,0 +lfurnace,62,0 +burningfurnace,62,0 +burnfurnace,62,0 +bfurnace,62,0 +ladder,65,0 +minecarttrack,66,0 +minecartrails,66,0 +minecartrail,66,0 +mcarttrack,66,0 +mcartrails,66,0 +mcartrail,66,0 +mctrack,66,0 +mcrails,66,0 +mcrail,66,0 +track,66,0 +rails,66,0 +rail,66,0 +cobblestonestairs,67,0 +cstonestairs,67,0 +stonestairs,67,0 +cobblestairs,67,0 +csstairs,67,0 +sstairs,67,0 +cstairs,67,0 +cobblestonestair,67,0 +cstonestair,67,0 +stonestair,67,0 +cobblestair,67,0 +csstair,67,0 +sstair,67,0 +cstair,67,0 +lever,69,0 +stonepressureplate,70,0 +stonepressplate,70,0 +stonepplate,70,0 +stoneplate,70,0 +spressureplate,70,0 +spressplate,70,0 +spplate,70,0 +splate,70,0 +smoothstonepressureplate,70,0 +smoothstonepressplate,70,0 +smoothstonepplate,70,0 +smoothstoneplate,70,0 +sstonepressureplate,70,0 +sstonepressplate,70,0 +sstonepplate,70,0 +sstoneplate,70,0 +woodenpressureplate,72,0 +woodenpressplate,72,0 +woodenpplate,72,0 +woodenplate,72,0 +woodpressureplate,72,0 +woodpressplate,72,0 +woodpplate,72,0 +woodplate,72,0 +wpressureplate,72,0 +wpressplate,72,0 +wpplate,72,0 +wplate,72,0 +redstoneore,73,0 +redsore,73,0 +redore,73,0 +rstoneore,73,0 +rsore,73,0 +rore,73,0 +oreredstone,73,0 +orereds,73,0 +orered,73,0 +orerstone,73,0 +orers,73,0 +orer,73,0 +redstonetorch,76,0 +rstonetorch,76,0 +redstorch,76,0 +redtorch,76,0 +rstorch,76,0 +stonebutton,77,0 +smoothstonebutton,77,0 +sstonebutton,77,0 +sbutton,77,0 +button,77,0 +snowcover,78,0 +snowcovering,78,0 +scover,78,0 +ice,79,0 +frozenwater,79,0 +waterfrozen,79,0 +freezewater,79,0 +waterfreeze,79,0 +snowblock,80,0 +blocksnow,80,0 +sblock,80,0 +blocks,80,0 +cactus,81,0 +cactuses,81,0 +cacti,81,0 +clayblock,82,0 +blockclay,82,0 +cblock,82,0 +blockc,82,0 +jukebox,84,0 +jbox,84,0 +woodenfence,85,0 +fence,85,0 +woodfence,85,0 +wfence,85,0 +fencewooden,85,0 +fencewood,85,0 +fencew,85,0 +pumpkin,86,0 +netherrack,87,0 +netherrock,87,0 +netherstone,87,0 +hellrack,87,0 +hellrock,87,0 +hellstone,87,0 +deathrack,87,0 +deathrock,87,0 +deathstone,87,0 +nrack,87,0 +nrock,87,0 +nstone,87,0 +hrack,87,0 +hrock,87,0 +hstone,87,0 +drack,87,0 +drock,87,0 +dstone,87,0 +soulsand,88,0 +slowsand,88,0 +slowmud,88,0 +ssand,88,0 +smud,88,0 +mud,88,0 +glowstone,89,0 +glowingstoneblock,89,0 +lightstoneblock,89,0 +glowstoneblock,89,0 +blockglowingstone,89,0 +blocklightstone,89,0 +blockglowstone,89,0 +glowingstone,89,0 +lightstone,89,0 +glowingblock,89,0 +lightblock,89,0 +glowblock,89,0 +lstone,89,0 +gstone,89,0 +portal,90,0 +jackolantern,91,0 +pumpkinlantern,91,0 +glowingpumpkin,91,0 +lightpumpkin,91,0 +jpumpkin,91,0 +plantren,91,0 +glowpumpkin,91,0 +gpumpkin,91,0 +lpumpkin,91,0 +lockedchest,95,0 +lockchest,95,0 +jokechest,95,0 +whiteglass,95,0 +whitesglass,95,0 +whitestainedglass,95,0 +wglass,95,0 +wsglass,95,0 +wstainedglass,95,0 +sglass,95,0 +stainedglass,95,0 +orangeglass,95,1 +orangesglass,95,1 +orangestainedglass,95,1 +oglass,95,1 +osglass,95,1 +ostainedglass,95,1 +magentaglass,95,2 +magentasglass,95,2 +magentastainedglass,95,2 +mglass,95,2 +msglass,95,2 +mstainedglass,95,2 +lightblueglass,95,3 +lightbluesglass,95,3 +lightbluestainedglass,95,3 +lblueglass,95,3 +lbluesglass,95,3 +lbluestainedglass,95,3 +lightbluglass,95,3 +lightblusglass,95,3 +lightblustainedglass,95,3 +lbluglass,95,3 +lblusglass,95,3 +lblustainedglass,95,3 +lbglass,95,3 +lbsglass,95,3 +lbstainedglass,95,3 +yellowglass,95,4 +yellowsglass,95,4 +yellowstainedglass,95,4 +yglass,95,4 +ysglass,95,4 +ystainedglass,95,4 +lightgreenglass,95,5 +lightgreensglass,95,5 +lightgreenstainedglass,95,5 +lgreenglass,95,5 +lgreensglass,95,5 +lgreenstainedglass,95,5 +lightgreglass,95,5 +lightgresglass,95,5 +lightgrestainedglass,95,5 +lgreglass,95,5 +lgresglass,95,5 +lgrestainedglass,95,5 +limeglass,95,5 +limesglass,95,5 +limestainedglass,95,5 +lglass,95,5 +lsglass,95,5 +lstainedglass,95,5 +pinkglass,95,6 +pinksglass,95,6 +pinkstainedglass,95,6 +piglass,95,6 +pisglass,95,6 +pistainedglass,95,6 +darkgrayglass,95,7 +darkgraysglass,95,7 +darkgraystainedglass,95,7 +dgrayglass,95,7 +dgraysglass,95,7 +dgraystainedglass,95,7 +darkgreyglass,95,7 +darkgreysglass,95,7 +darkgreystainedglass,95,7 +dgreyglass,95,7 +dgreysglass,95,7 +dgreystainedglass,95,7 +darkgraglass,95,7 +darkgrasglass,95,7 +darkgrastainedglass,95,7 +dgraglass,95,7 +dgrasglass,95,7 +dgrastainedglass,95,7 +grayglass,95,7 +graysglass,95,7 +graystainedglass,95,7 +greyglass,95,7 +greysglass,95,7 +greystainedglass,95,7 +graglass,95,7 +grasglass,95,7 +grastainedglass,95,7 +lightgrayglass,95,8 +lightgraysglass,95,8 +lightgraystainedglass,95,8 +lgrayglass,95,8 +lgraysglass,95,8 +lgraystainedglass,95,8 +lightgreyglass,95,8 +lightgreysglass,95,8 +lightgreystainedglass,95,8 +lgreyglass,95,8 +lgreysglass,95,8 +lgreystainedglass,95,8 +lightgraglass,95,8 +lightgrasglass,95,8 +lightgrastainedglass,95,8 +lgraglass,95,8 +lgrasglass,95,8 +lgrastainedglass,95,8 +silverglass,95,8 +silversglass,95,8 +silverstainedglass,95,8 +siglass,95,8 +siasglass,95,8 +siastainedglass,95,8 +cyanglass,95,9 +cyansglass,95,9 +cyanstainedglass,95,9 +cglass,95,9 +csglass,95,9 +cstainedglass,95,9 +purpleglass,95,10 +purplesglass,95,10 +purplestainedglass,95,10 +puglass,95,10 +pusglass,95,10 +pustainedglass,95,10 +blueglass,95,11 +bluesglass,95,11 +bluestainedglass,95,11 +bluglass,95,11 +blusglass,95,11 +blustainedglass,95,11 +brownglass,95,12 +brownsglass,95,12 +brownstainedglass,95,12 +broglass,95,12 +brosglass,95,12 +brostainedglass,95,12 +darkgreenglass,95,13 +darkgreensglass,95,13 +darkgreenstainedglass,95,13 +dgreenglass,95,13 +dgreensglass,95,13 +dgreenstainedglass,95,13 +greenglass,95,13 +greensglass,95,13 +greenstainedglass,95,13 +darkgreglass,95,13 +darkgresglass,95,13 +darkgrestainedglass,95,13 +dgreglass,95,13 +dgresglass,95,13 +dgrestainedglass,95,13 +greglass,95,13 +gresglass,95,13 +grestainedglass,95,13 +redglass,95,14 +redsglass,95,14 +redstainedglass,95,14 +rglass,95,14 +rsglass,95,14 +rstainedglass,95,14 +blackglass,95,15 +blacksglass,95,15 +blackstainedglass,95,15 +blaglass,95,15 +blasglass,95,15 +blastainedglass,95,15 +trapdoor,96,0 +doortrap,96,0 +hatch,96,0 +tdoor,96,0 +doort,96,0 +trapd,96,0 +dtrap,96,0 +silverfish,97,0 +silverfishsmoothstone,97,0 +silverfishsstone,97,0 +sfishsmoothstone,97,0 +sfishsstone,97,0 +fishsmoothstone,97,0 +fishsstone,97,0 +sfsmoothstone,97,0 +sfsstone,97,0 +trapsmoothstone,97,0 +trapsstone,97,0 +monsteregg,97,0 +monstereggsmoothstone,97,0 +monstereggsstone,97,0 +meggsmoothstone,97,0 +meggsstone,97,0 +mesmoothstone,97,0 +messtone,97,0 +silverfishcobblestone,97,1 +silverfishcstone,97,1 +sfishcobblestone,97,1 +sfishcstone,97,1 +fishcobblestone,97,1 +fishcstone,97,1 +sfcobblestone,97,1 +sfcstone,97,1 +trapcobblestone,97,1 +trapcstone,97,1 +monstereggcobblestone,97,1 +monstereggcstone,97,1 +meggcobblestone,97,1 +meggcstone,97,1 +mecobblestone,97,1 +mecstone,97,1 +silverfishstonebrick,97,2 +silverfishsbrick,97,2 +sfishstonebrick,97,2 +sfishsbrick,97,2 +fishstonebrick,97,2 +fishsbrick,97,2 +sfstonebrick,97,2 +sfsbrick,97,2 +trapstonebrick,97,2 +trapsbrick,97,2 +monstereggstonebrick,97,2 +monstereggsbrick,97,2 +meggstonebrick,97,2 +meggsbrick,97,2 +mestonebrick,97,2 +mesbrick,97,2 +silverfishmossystonebrick,97,3 +silverfishmossstonebrick,97,3 +silverfishmstonebrick,97,3 +silverfishmsbrick,97,3 +sfishmossystonebrick,97,3 +sfishmossstonebrick,97,3 +sfishmstonebrick,97,3 +sfishmsbrick,97,3 +fishmossystonebrick,97,3 +fishmossstonebrick,97,3 +fishmstonebrick,97,3 +fishmsbrick,97,3 +sfmossystonebrick,97,3 +sfmossstonebrick,97,3 +sfmstonebrick,97,3 +sfmsbrick,97,3 +trapmossystonebrick,97,3 +trapmossstonebrick,97,3 +trapmstonebrick,97,3 +trapmsbrick,97,3 +monstereggmossystonebrick,97,3 +monstereggmossstonebrick,97,3 +monstereggmstonebrick,97,3 +monstereggmsbrick,97,3 +meggmossystonebrick,97,3 +meggmossstonebrick,97,3 +meggmstonebrick,97,3 +meggmsbrick,97,3 +memossystonebrick,97,3 +memossstonebrick,97,3 +memstonebrick,97,3 +memsbrick,97,3 +silverfishcrackedstonebrick,97,4 +silverfishcrackstonebrick,97,4 +silverfishcrstonebrick,97,4 +silverfishcrsbrick,97,4 +sfishcrackedstonebrick,97,4 +sfishcrackstonebrick,97,4 +sfishcrstonebrick,97,4 +sfishcrsbrick,97,4 +fishcrackedstonebrick,97,4 +fishcrackstonebrick,97,4 +fishcrstonebrick,97,4 +fishcrsbrick,97,4 +sfcrackedstonebrick,97,4 +sfcrackstonebrick,97,4 +sfcrstonebrick,97,4 +sfcrsbrick,97,4 +trapcrackedstonebrick,97,4 +trapcrackstonebrick,97,4 +trapcrstonebrick,97,4 +trapcrsbrick,97,4 +monstereggcrackedstonebrick,97,4 +monstereggcrackstonebrick,97,4 +monstereggcrstonebrick,97,4 +monstereggcrsbrick,97,4 +meggcrackedstonebrick,97,4 +meggcrackstonebrick,97,4 +meggcrstonebrick,97,4 +meggcrsbrick,97,4 +mecrackedstonebrick,97,4 +mecrackstonebrick,97,4 +mecrstonebrick,97,4 +mecrsbrick,97,4 +silverfishcirclestonebrick,97,5 +silverfishcistonebrick,97,5 +silverfishcisbrick,97,5 +sfishcirclestonebrick,97,5 +sfishcistonebrick,97,5 +sfishcisbrick,97,5 +fishcirclestonebrick,97,5 +fishcistonebrick,97,5 +fishcisbrick,97,5 +sfcirclestonebrick,97,5 +sfcistonebrick,97,5 +sfcisbrick,97,5 +trapcirclestonebrick,97,5 +trapcistonebrick,97,5 +trapcisbrick,97,5 +monstereggcirclestonebrick,97,5 +monstereggcistonebrick,97,5 +monstereggcisbrick,97,5 +meggcirclestonebrick,97,5 +meggcistonebrick,97,5 +meggcisbrick,97,5 +mecirclestonebrick,97,5 +mecistonebrick,97,5 +mecisbrick,97,5 +stonebrick,98,0 +stonebricks,98,0 +stonebrickblock,98,0 +stonebb,98,0 +sbrick,98,0 +mossystonebrick,98,1 +mossystonebricks,98,1 +mossystonebrickblock,98,1 +mossystonebb,98,1 +mossstonebrick,98,1 +mossstonebricks,98,1 +mossstonebrickblock,98,1 +mossstonebb,98,1 +mstonebrick,98,1 +mstonebricks,98,1 +mstonebrickblock,98,1 +mstonebb,98,1 +mosssbrick,98,1 +mosssbricks,98,1 +mosssbrickblock,98,1 +mosssbb,98,1 +msbrick,98,1 +msbricks,98,1 +msbrickblock,98,1 +crackedstone,98,2 +crackedstonebrick,98,2 +crackedstonebricks,98,2 +crackedstonebrickblock,98,2 +crackedstonebb,98,2 +crackstonebrick,98,2 +crackstonebricks,98,2 +crackstonebrickblock,98,2 +crackstonebb,98,2 +crstonebrick,98,2 +crstonebricks,98,2 +crstonebrickblock,98,2 +crstonebb,98,2 +cracksbrick,98,2 +cracksbricks,98,2 +cracksbrickblock,98,2 +cracksbb,98,2 +crsbrick,98,2 +crsbricks,98,2 +crsbrickblock,98,2 +circlestone,98,3 +circlestonebrick,98,3 +circlestonebricks,98,3 +circlestonebrickblock,98,3 +circlestonebb,98,3 +cistonebrick,98,3 +cistonebricks,98,3 +cistonebrickblock,98,3 +cistonebb,98,3 +circlesbrick,98,3 +circlesbricks,98,3 +circlesbrickblock,98,3 +circlesbb,98,3 +cisbrick,98,3 +cisbricks,98,3 +cisbrickblock,98,3 +giantredmushroom,99,0 +hugeredmushroom,99,0 +bigredmushroom,99,0 +gredmushroom,99,0 +hredmushroom,99,0 +bredmushroom,99,0 +giantrmushroom,99,0 +hugermushroom,99,0 +bigrmushroom,99,0 +grmushroom,99,0 +hrmushroom,99,0 +brmushroom,99,0 +giantredmush,99,0 +hugeredmush,99,0 +bigredmush,99,0 +gredmush,99,0 +hredmush,99,0 +bredmush,99,0 +giantrmush,99,0 +hugermush,99,0 +bigrmush,99,0 +grmush,99,0 +hrmush,99,0 +brmush,99,0 +giantbrownmushroom,100,0 +hugebrownmushroom,100,0 +bigbrownmushroom,100,0 +gbrownmushroom,100,0 +hbrownmushroom,100,0 +bbrownmushroom,100,0 +giantbmushroom,100,0 +hugebmushroom,100,0 +bigbmushroom,100,0 +gbmushroom,100,0 +hbmushroom,100,0 +bbmushroom,100,0 +giantbrownmush,100,0 +hugebrownmush,100,0 +bigbrownmush,100,0 +gbrownmush,100,0 +hbrownmush,100,0 +bbrownmush,100,0 +giantbmush,100,0 +hugebmush,100,0 +bigbmush,100,0 +gbmush,100,0 +hbmush,100,0 +bbmush,100,0 +ironbars,101,0 +ironbarsb,101,0 +ironbarsblock,101,0 +ironfence,101,0 +metalbars,101,0 +metalbarsb,101,0 +metalbarsblock,101,0 +metalfence,101,0 +jailbars,101,0 +jailbarsb,101,0 +jailbarsblock,101,0 +jailfence,101,0 +mbars,101,0 +mbarsb,101,0 +mbarsblock,101,0 +mfence,101,0 +jbars,101,0 +jbarsb,101,0 +jbarsblock,101,0 +jfence,101,0 +ibars,101,0 +ibarsb,101,0 +ibarsblock,101,0 +ifence,101,0 +glasspane,102,0 +glassp,102,0 +paneglass,102,0 +pglass,102,0 +flatglass,102,0 +fglass,102,0 +skinnyglass,102,0 +glassflat,102,0 +glassf,102,0 +glassskinny,102,0 +glasss,102,0 +melon,103,0 +watermelon,103,0 +greenmelon,103,0 +melongreen,103,0 +melonblock,103,0 +watermelonblock,103,0 +greenmelonblock,103,0 +vines,106,0 +vine,106,0 +greenvines,106,0 +greenvine,106,0 +gardenvines,106,0 +gardenvine,106,0 +vinesgreen,106,0 +vinegreen,106,0 +vinesgarden,106,0 +vinegarden,106,0 +vinesg,106,0 +vineg,106,0 +gvines,106,0 +gvine,106,0 +woodgate,107,0 +woodenfencegate,107,0 +wfencegate,107,0 +woodfencegate,107,0 +woodengate,107,0 +wgate,107,0 +gate,107,0 +gardengate,107,0 +ggate,107,0 +fencegate,107,0 +fgate,107,0 +brickstairs,108,0 +redbrickstairs,108,0 +redbstairs,108,0 +rbrickstairs,108,0 +bstairs,108,0 +redstairs,108,0 +brickstair,108,0 +redbrickstair,108,0 +redbstair,108,0 +rbrickstair,108,0 +bstair,108,0 +redstair,108,0 +stonebrickstairs,109,0 +stonebstairs,109,0 +sbstairs,109,0 +cementbrickstairs,109,0 +cementstairs,109,0 +cementbstairs,109,0 +cbstairs,109,0 +greybrickstairs,109,0 +greybstairs,109,0 +greystairs,109,0 +mycelium,110,0 +purplegrass,110,0 +pinkgrass,110,0 +mycel,110,0 +swampgrass,110,0 +sgrass,110,0 +mushroomgrass,110,0 +mushgrass,110,0 +lilypad,111,0 +waterlily,111,0 +lily,111,0 +swamppad,111,0 +lpad,111,0 +wlily,111,0 +netherbrickblock,112,0 +hellbrickblock,112,0 +deathbrickblock,112,0 +nbrickblock,112,0 +hbrickblock,112,0 +dbrickblock,112,0 +netherbblock,112,0 +hellbblock,112,0 +deathbblock,112,0 +nbblock,112,0 +hbblock,112,0 +dbblock,112,0 +netherbrickfence,113,0 +hellbrickfence,113,0 +nbrickfence,113,0 +hbrickfence,113,0 +netherbfence,113,0 +hellbfence,113,0 +netherfence,113,0 +hellfence,113,0 +nbfence,113,0 +hbfence,113,0 +nfence,113,0 +hfence,113,0 +netherbrickstairs,114,0 +hellbrickstairs,114,0 +nbrickstairs,114,0 +hbrickstairs,114,0 +netherbstairs,114,0 +hellbstairs,114,0 +netherstairs,114,0 +hellstairs,114,0 +nbstairs,114,0 +hbstairs,114,0 +nstairs,114,0 +hstairs,114,0 +netherbrickstair,114,0 +hellbrickstair,114,0 +nbrickstair,114,0 +hbrickstair,114,0 +netherbstair,114,0 +hellbstair,114,0 +netherstair,114,0 +hellstair,114,0 +nbstair,114,0 +hbstair,114,0 +nstair,114,0 +hstair,114,0 +enchantmenttable,116,0 +enchantingtable,116,0 +enchanttable,116,0 +etable,116,0 +magicaltable,116,0 +magictable,116,0 +mtable,116,0 +enchantmentdesk,116,0 +enchantingdesk,116,0 +enchantdesk,116,0 +edesk,116,0 +magicaldesk,116,0 +magicdesk,116,0 +mdesk,116,0 +booktable,116,0 +bookdesk,116,0 +btable,116,0 +bdesk,116,0 +enderportal,119,0 +endergoo,119,0 +endgoo,119,0 +endportal,119,0 +egoo,119,0 +eportal,119,0 +enderportalframe,120,0 +endportalframe,120,0 +endgooframe,120,0 +endergooframe,120,0 +egooframe,120,0 +eportalframe,120,0 +enderframe,120,0 +endframe,120,0 +enderstone,121,0 +endstone,121,0 +endrock,121,0 +enderrock,121,0 +erock,121,0 +estone,121,0 +enderdragonegg,122,0 +endegg,122,0 +dragonegg,122,0 +degg,122,0 +bossegg,122,0 +begg,122,0 +redstonelamp,123,0 +redlamp,123,0 +rslamp,123,0 +woodendoublestep,125,0 +woodendstep,125,0 +wooddoublestep,125,0 +wooddstep,125,0 +wdoublestep,125,0 +wdstep,125,0 +doublewoodenstep,125,0 +dwoodenstep,125,0 +doublewoodstep,125,0 +dwoodstep,125,0 +doublewstep,125,0 +dwstep,125,0 +woodendoubleslab,125,0 +woodendslab,125,0 +wooddoubleslab,125,0 +wooddslab,125,0 +wdoubleslab,125,0 +wdslab,125,0 +doublewoodenslab,125,0 +dwoodenslab,125,0 +doublewoodslab,125,0 +dwoodslab,125,0 +doublewslab,125,0 +dwslab,125,0 +woodendoublehalfblock,125,0 +woodendhalfblock,125,0 +wooddoublehalfblock,125,0 +wooddhalfblock,125,0 +wdoublehalfblock,125,0 +wdhalfblock,125,0 +doublewoodenhalfblock,125,0 +dwoodenhalfblock,125,0 +doublewoodhalfblock,125,0 +dwoodhalfblock,125,0 +doublewhalfblock,125,0 +dwhalfblock,125,0 +oakwoodendoublehalfblock,125,0 +oakwoodendhalfblock,125,0 +oakwooddoublehalfblock,125,0 +oakwooddhalfblock,125,0 +oakwdoublehalfblock,125,0 +oakwdhalfblock,125,0 +oakdoublewoodenhalfblock,125,0 +oakdwoodenhalfblock,125,0 +oakdoublewoodhalfblock,125,0 +oakdwoodhalfblock,125,0 +oakdoublewhalfblock,125,0 +oakdwhalfblock,125,0 +oakdoublehalfblock,125,0 +oakdhalfblock,125,0 +odhalfblock,125,0 +oakwoodendoublestep,125,0 +oakwoodendstep,125,0 +oakwooddoublestep,125,0 +oakwooddstep,125,0 +oakwdoublestep,125,0 +oakwdstep,125,0 +oakdoublewoodenstep,125,0 +oakdwoodenstep,125,0 +oakdoublewoodstep,125,0 +oakdwoodstep,125,0 +oakdoublewstep,125,0 +oakdwstep,125,0 +oakdoublestep,125,0 +oakdstep,125,0 +odstep,125,0 +oakwoodendoubleslab,125,0 +oakwoodendslab,125,0 +oakwooddoubleslab,125,0 +oakwooddslab,125,0 +oakwdoubleslab,125,0 +oakwdslab,125,0 +oakdoublewoodenslab,125,0 +oakdwoodenslab,125,0 +oakdoublewoodslab,125,0 +oakdwoodslab,125,0 +oakdoublewslab,125,0 +oakdwslab,125,0 +oakdoubleslab,125,0 +oakdslab,125,0 +odslab,125,0 +sprucewoodendoublestep,125,1 +sprucewoodendstep,125,1 +sprucewooddoublestep,125,1 +sprucewooddstep,125,1 +sprucewdoublestep,125,1 +sprucewdstep,125,1 +sprucedoublewoodenstep,125,1 +sprucedwoodenstep,125,1 +sprucedoublewoodstep,125,1 +sprucedwoodstep,125,1 +sprucedoublewstep,125,1 +sprucedwstep,125,1 +sprucedoublestep,125,1 +sprucedstep,125,1 +sprucewoodendoubleslab,125,1 +sprucewoodendslab,125,1 +sprucewooddoubleslab,125,1 +sprucewooddslab,125,1 +sprucewdoubleslab,125,1 +sprucewdslab,125,1 +sprucedoublewoodenslab,125,1 +sprucedwoodenslab,125,1 +sprucedoublewoodslab,125,1 +sprucedwoodslab,125,1 +sprucedoublewslab,125,1 +sprucedwslab,125,1 +sprucedoubleslab,125,1 +sprucedslab,125,1 +sprucewoodendoublehalfblock,125,1 +sprucewoodendhalfblock,125,1 +sprucewooddoublehalfblock,125,1 +sprucewooddhalfblock,125,1 +sprucewdoublehalfblock,125,1 +sprucewdhalfblock,125,1 +sprucedoublewoodenhalfblock,125,1 +sprucedwoodenhalfblock,125,1 +sprucedoublewoodhalfblock,125,1 +sprucedwoodhalfblock,125,1 +sprucedoublewhalfblock,125,1 +sprucedwhalfblock,125,1 +sprucedoublehalfblock,125,1 +sprucedhalfblock,125,1 +darkwoodendoublestep,125,1 +darkwoodendstep,125,1 +darkwooddoublestep,125,1 +darkwooddstep,125,1 +darkwdoublestep,125,1 +darkwdstep,125,1 +darkdoublewoodenstep,125,1 +darkdwoodenstep,125,1 +darkdoublewoodstep,125,1 +darkdwoodstep,125,1 +darkdoublewstep,125,1 +darkdwstep,125,1 +darkdoublestep,125,1 +darkdstep,125,1 +ddstep,125,1 +darkwoodendoubleslab,125,1 +darkwoodendslab,125,1 +darkwooddoubleslab,125,1 +darkwooddslab,125,1 +darkwdoubleslab,125,1 +darkwdslab,125,1 +darkdoublewoodenslab,125,1 +darkdwoodenslab,125,1 +darkdoublewoodslab,125,1 +darkdwoodslab,125,1 +darkdoublewslab,125,1 +darkdwslab,125,1 +darkdoubleslab,125,1 +darkdslab,125,1 +ddslab,125,1 +darkwoodendoublehalfblock,125,1 +darkwoodendhalfblock,125,1 +darkwooddoublehalfblock,125,1 +darkwooddhalfblock,125,1 +darkwdoublehalfblock,125,1 +darkwdhalfblock,125,1 +darkdoublewoodenhalfblock,125,1 +darkdwoodenhalfblock,125,1 +darkdoublewoodhalfblock,125,1 +darkdwoodhalfblock,125,1 +darkdoublewhalfblock,125,1 +darkdwhalfblock,125,1 +darkdoublehalfblock,125,1 +darkdhalfblock,125,1 +ddhalfblock,125,1 +birchwoodendoublestep,125,2 +birchwoodendstep,125,2 +birchwooddoublestep,125,2 +birchwooddstep,125,2 +birchwdoublestep,125,2 +birchwdstep,125,2 +birchdoublewoodenstep,125,2 +birchdwoodenstep,125,2 +birchdoublewoodstep,125,2 +birchdwoodstep,125,2 +birchdoublewstep,125,2 +birchdwstep,125,2 +birchdoublestep,125,2 +birchdstep,125,2 +birchwoodendoubleslab,125,2 +birchwoodendslab,125,2 +birchwooddoubleslab,125,2 +birchwooddslab,125,2 +birchwdoubleslab,125,2 +birchwdslab,125,2 +birchdoublewoodenslab,125,2 +birchdwoodenslab,125,2 +birchdoublewoodslab,125,2 +birchdwoodslab,125,2 +birchdoublewslab,125,2 +birchdwslab,125,2 +birchdoubleslab,125,2 +birchdslab,125,2 +birchwoodendoublehalfblock,125,2 +birchwoodendhalfblock,125,2 +birchwooddoublehalfblock,125,2 +birchwooddhalfblock,125,2 +birchwdoublehalfblock,125,2 +birchwdhalfblock,125,2 +birchdoublewoodenhalfblock,125,2 +birchdwoodenhalfblock,125,2 +birchdoublewoodhalfblock,125,2 +birchdwoodhalfblock,125,2 +birchdoublewhalfblock,125,2 +birchdwhalfblock,125,2 +birchdoublehalfblock,125,2 +birchdhalfblock,125,2 +lightwoodendoublehalfblock,125,2 +lightwoodendhalfblock,125,2 +lightwooddoublehalfblock,125,2 +lightwooddhalfblock,125,2 +lightwdoublehalfblock,125,2 +lightwdhalfblock,125,2 +lightdoublewoodenhalfblock,125,2 +lightdwoodenhalfblock,125,2 +lightdoublewoodhalfblock,125,2 +lightdwoodhalfblock,125,2 +lightdoublewhalfblock,125,2 +lightdwhalfblock,125,2 +lightdoublehalfblock,125,2 +lightdhalfblock,125,2 +ldhalfblock,125,2 +lightwoodendoublestep,125,2 +lightwoodendstep,125,2 +lightwooddoublestep,125,2 +lightwooddstep,125,2 +lightwdoublestep,125,2 +lightwdstep,125,2 +lightdoublewoodenstep,125,2 +lightdwoodenstep,125,2 +lightdoublewoodstep,125,2 +lightdwoodstep,125,2 +lightdoublewstep,125,2 +lightdwstep,125,2 +lightdoublestep,125,2 +lightdstep,125,2 +ldstep,125,2 +lightwoodendoubleslab,125,2 +lightwoodendslab,125,2 +lightwooddoubleslab,125,2 +lightwooddslab,125,2 +lightwdoubleslab,125,2 +lightwdslab,125,2 +lightdoublewoodenslab,125,2 +lightdwoodenslab,125,2 +lightdoublewoodslab,125,2 +lightdwoodslab,125,2 +lightdoublewslab,125,2 +lightdwslab,125,2 +lightdoubleslab,125,2 +lightdslab,125,2 +ldslab,125,2 +junglewoodendoublestep,125,3 +junglewoodendstep,125,3 +junglewooddoublestep,125,3 +junglewooddstep,125,3 +junglewdoublestep,125,3 +junglewdstep,125,3 +jungledoublewoodenstep,125,3 +jungledwoodenstep,125,3 +jungledoublewoodstep,125,3 +jungledwoodstep,125,3 +jungledoublewstep,125,3 +jungledwstep,125,3 +jungledoublestep,125,3 +jungledstep,125,3 +jdstep,125,3 +junglewoodendoubleslab,125,3 +junglewoodendslab,125,3 +junglewooddoubleslab,125,3 +junglewooddslab,125,3 +junglewdoubleslab,125,3 +junglewdslab,125,3 +jungledoublewoodenslab,125,3 +jungledwoodenslab,125,3 +jungledoublewoodslab,125,3 +jungledwoodslab,125,3 +jungledoublewslab,125,3 +jungledwslab,125,3 +jungledoubleslab,125,3 +jungledslab,125,3 +jdslab,125,3 +junglewoodendoublehalfblock,125,3 +junglewoodendhalfblock,125,3 +junglewooddoublehalfblock,125,3 +junglewooddhalfblock,125,3 +junglewdoublehalfblock,125,3 +junglewdhalfblock,125,3 +jungledoublewoodenhalfblock,125,3 +jungledwoodenhalfblock,125,3 +jungledoublewoodhalfblock,125,3 +jungledwoodhalfblock,125,3 +jungledoublewhalfblock,125,3 +jungledwhalfblock,125,3 +jungledoublehalfblock,125,3 +jungledhalfblock,125,3 +jdhalfblock,125,3 +forestwoodendoublehalfblock,125,3 +forestwoodendhalfblock,125,3 +forestwooddoublehalfblock,125,3 +forestwooddhalfblock,125,3 +forestwdoublehalfblock,125,3 +forestwdhalfblock,125,3 +forestdoublewoodenhalfblock,125,3 +forestdwoodenhalfblock,125,3 +forestdoublewoodhalfblock,125,3 +forestdwoodhalfblock,125,3 +forestdoublewhalfblock,125,3 +forestdwhalfblock,125,3 +forestdoublehalfblock,125,3 +forestdhalfblock,125,3 +fdhalfblock,125,3 +forestwoodendoublestep,125,3 +forestwoodendstep,125,3 +forestwooddoublestep,125,3 +forestwooddstep,125,3 +forestwdoublestep,125,3 +forestwdstep,125,3 +forestdoublewoodenstep,125,3 +forestdwoodenstep,125,3 +forestdoublewoodstep,125,3 +forestdwoodstep,125,3 +forestdoublewstep,125,3 +forestdwstep,125,3 +forestdoublestep,125,3 +forestdstep,125,3 +fdstep,125,3 +forestwoodendoubleslab,125,3 +forestwoodendslab,125,3 +forestwooddoubleslab,125,3 +forestwooddslab,125,3 +forestwdoubleslab,125,3 +forestwdslab,125,3 +forestdoublewoodenslab,125,3 +forestdwoodenslab,125,3 +forestdoublewoodslab,125,3 +forestdwoodslab,125,3 +forestdoublewslab,125,3 +forestdwslab,125,3 +forestdoubleslab,125,3 +forestdslab,125,3 +fdslab,125,3 +acaciawoodendoublestep,125,4 +acaciawoodendstep,125,4 +acaciawooddoublestep,125,4 +acaciawooddstep,125,4 +acaciawdoublestep,125,4 +acaciawdstep,125,4 +acaciadoublewoodenstep,125,4 +acaciadwoodenstep,125,4 +acaciadoublewoodstep,125,4 +acaciadwoodstep,125,4 +acaciadoublewstep,125,4 +acaciadwstep,125,4 +acaciadoublestep,125,4 +acaciadstep,125,4 +adstep,125,4 +acaciawoodendoubleslab,125,4 +acaciawoodendslab,125,4 +acaciawooddoubleslab,125,4 +acaciawooddslab,125,4 +acaciawdoubleslab,125,4 +acaciawdslab,125,4 +acaciadoublewoodenslab,125,4 +acaciadwoodenslab,125,4 +acaciadoublewoodslab,125,4 +acaciadwoodslab,125,4 +acaciadoublewslab,125,4 +acaciadwslab,125,4 +acaciadoubleslab,125,4 +acaciadslab,125,4 +adslab,125,4 +acaciawoodendoublehalfblock,125,4 +acaciawoodendhalfblock,125,4 +acaciawooddoublehalfblock,125,4 +acaciawooddhalfblock,125,4 +acaciawdoublehalfblock,125,4 +acaciawdhalfblock,125,4 +acaciadoublewoodenhalfblock,125,4 +acaciadwoodenhalfblock,125,4 +acaciadoublewoodhalfblock,125,4 +acaciadwoodhalfblock,125,4 +acaciadoublewhalfblock,125,4 +acaciadwhalfblock,125,4 +acaciadoublehalfblock,125,4 +acaciadhalfblock,125,4 +adhalfblock,125,4 +darkoakwoodendoublehalfblock,125,5 +darkoakwoodendhalfblock,125,5 +darkoakwooddoublehalfblock,125,5 +darkoakwooddhalfblock,125,5 +darkoakwdoublehalfblock,125,5 +darkoakwdhalfblock,125,5 +darkoakdoublewoodenhalfblock,125,5 +darkoakdwoodenhalfblock,125,5 +darkoakdoublewoodhalfblock,125,5 +darkoakdwoodhalfblock,125,5 +darkoakdoublewhalfblock,125,5 +darkoakdwhalfblock,125,5 +darkoakdoublehalfblock,125,5 +darkoakdhalfblock,125,5 +dodhalfblock,125,5 +darkoakwoodendoublestep,125,5 +darkoakwoodendstep,125,5 +darkoakwooddoublestep,125,5 +darkoakwooddstep,125,5 +darkoakwdoublestep,125,5 +darkoakwdstep,125,5 +darkoakdoublewoodenstep,125,5 +darkoakdwoodenstep,125,5 +darkoakdoublewoodstep,125,5 +darkoakdwoodstep,125,5 +darkoakdoublewstep,125,5 +darkoakdwstep,125,5 +darkoakdoublestep,125,5 +darkoakdstep,125,5 +dodstep,125,5 +darkoakwoodendoubleslab,125,5 +darkoakwoodendslab,125,5 +darkoakwooddoubleslab,125,5 +darkoakwooddslab,125,5 +darkoakwdoubleslab,125,5 +darkoakwdslab,125,5 +darkoakdoublewoodenslab,125,5 +darkoakdwoodenslab,125,5 +darkoakdoublewoodslab,125,5 +darkoakdwoodslab,125,5 +darkoakdoublewslab,125,5 +darkoakdwslab,125,5 +darkoakdoubleslab,125,5 +darkoakdslab,125,5 +dodslab,125,5 +woodenstep,126,0 +woodstep,126,0 +wstep,126,0 +woodenslab,126,0 +woodslab,126,0 +wslab,126,0 +woodenhalfblock,126,0 +woodhalfblock,126,0 +whalfblock,126,0 +oakwoodenstep,126,0 +oakwoodstep,126,0 +oakwstep,126,0 +oakstep,126,0 +ostep,126,0 +oakwoodenslab,126,0 +oakwoodslab,126,0 +oakwslab,126,0 +oakslab,126,0 +oslab,126,0 +oakwoodenhalfblock,126,0 +oakwoodhalfblock,126,0 +oakwhalfblock,126,0 +oakhalfblock,126,0 +ohalfblock,126,0 +sprucewoodenstep,126,1 +sprucewoodstep,126,1 +sprucewstep,126,1 +sprucestep,126,1 +sprucewoodenslab,126,1 +sprucewoodslab,126,1 +sprucewslab,126,1 +spruceslab,126,1 +sprucewoodenhalfblock,126,1 +sprucewoodhalfblock,126,1 +sprucewhalfblock,126,1 +sprucehalfblock,126,1 +darkwoodenstep,126,1 +darkwoodstep,126,1 +darkwstep,126,1 +darkstep,126,1 +darkwoodenslab,126,1 +darkwoodslab,126,1 +darkwslab,126,1 +darkslab,126,1 +darkwoodenhalfblock,126,1 +darkwoodhalfblock,126,1 +darkwhalfblock,126,1 +darkhalfblock,126,1 +birchwoodenstep,126,2 +birchwoodstep,126,2 +birchwstep,126,2 +birchstep,126,2 +birchwoodenslab,126,2 +birchwoodslab,126,2 +birchwslab,126,2 +birchslab,126,2 +birchwoodenhalfblock,126,2 +birchwoodhalfblock,126,2 +birchwhalfblock,126,2 +birchhalfblock,126,2 +lightwoodenstep,126,2 +lightwoodstep,126,2 +lightwstep,126,2 +lightstep,126,2 +lstep,126,2 +lightwoodenslab,126,2 +lightwoodslab,126,2 +lightwslab,126,2 +lightslab,126,2 +lslab,126,2 +lightwoodenhalfblock,126,2 +lightwoodhalfblock,126,2 +lightwhalfblock,126,2 +lighthalfblock,126,2 +lhalfblock,126,2 +junglewoodenstep,126,3 +junglewoodstep,126,3 +junglewstep,126,3 +junglestep,126,3 +jstep,126,3 +junglewoodenslab,126,3 +junglewoodslab,126,3 +junglewslab,126,3 +jungleslab,126,3 +jslab,126,3 +junglewoodenhalfblock,126,3 +junglewoodhalfblock,126,3 +junglewhalfblock,126,3 +junglehalfblock,126,3 +jhalfblock,126,3 +forestwoodenstep,126,3 +forestwoodstep,126,3 +forestwstep,126,3 +foreststep,126,3 +fstep,126,3 +forestwoodenslab,126,3 +forestwoodslab,126,3 +forestwslab,126,3 +forestslab,126,3 +fslab,126,3 +forestwoodenhalfblock,126,3 +forestwoodhalfblock,126,3 +forestwhalfblock,126,3 +foresthalfblock,126,3 +fhalfblock,126,3 +acaciawoodenstep,126,4 +acaciawoodstep,126,4 +acaciawstep,126,4 +acaciastep,126,4 +astep,126,4 +acaciawoodenslab,126,4 +acaciawoodslab,126,4 +acaciawslab,126,4 +acaciaslab,126,4 +aslab,126,4 +acaciawoodenhalfblock,126,4 +acaciawoodhalfblock,126,4 +acaciawhalfblock,126,4 +acaciahalfblock,126,4 +ahalfblock,126,4 +darkoakwoodenstep,126,5 +darkoakwoodstep,126,5 +darkoakwstep,126,5 +darkoakstep,126,5 +dostep,126,5 +darkoakwoodenslab,126,5 +darkoakwoodslab,126,5 +darkoakwslab,126,5 +darkoakslab,126,5 +doslab,126,5 +darkoakwoodenhalfblock,126,5 +darkoakwoodhalfblock,126,5 +darkoakwhalfblock,126,5 +darkoakhalfblock,126,5 +dohalfblock,126,5 +cocoaplant,127,0 +cocoplant,127,0 +cplant,127,0 +cocoafruit,127,0 +cocofruit,127,0 +cfruit,127,0 +cocoapod,127,0 +cocopod,127,0 +cpod,127,0 +sandstonestairs,128,0 +sandstairs,128,0 +sandsstairs,128,0 +sstonestairs,128,0 +ssstairs,128,0 +sandstair,128,0 +sandstonestair,128,0 +sandsstair,128,0 +sstonestair,128,0 +ssstair,128,0 +emeraldore,129,0 +eore,129,0 +oreemerald,129,0 +oree,129,0 +enderchest,130,0 +endchest,130,0 +echest,130,0 +chestender,130,0 +chestend,130,0 +cheste,130,0 +endercontainer,130,0 +endcontainer,130,0 +econtainer,130,0 +tripwirehook,131,0 +tripwire,131,0 +trip,131,0 +tripwirelever,131,0 +triphook,131,0 +emeraldblock,133,0 +blockemerald,133,0 +eblock,133,0 +blocke,133,0 +sprucewoodenstairs,134,0 +sprucewoodstairs,134,0 +sprucewstairs,134,0 +sprucestairs,134,0 +darkwoodenstairs,134,0 +darkwoodstairs,134,0 +darkwstairs,134,0 +darkstairs,134,0 +dstairs,134,0 +sprucewoodenstair,134,0 +sprucewoodstair,134,0 +sprucewstair,134,0 +sprucestair,134,0 +darkwoodenstair,134,0 +darkwoodstair,134,0 +darkwstair,134,0 +darkstair,134,0 +dstair,134,0 +birchwoodenstairs,135,0 +birchwoodstairs,135,0 +birchwstairs,135,0 +birchstairs,135,0 +lightwoodenstairs,135,0 +lightwoodstairs,135,0 +lightwstairs,135,0 +lightstairs,135,0 +lstairs,135,0 +birchwoodenstair,135,0 +birchwoodstair,135,0 +birchwstair,135,0 +birchstair,135,0 +lightwoodenstair,135,0 +lightwoodstair,135,0 +lightwstair,135,0 +lightstair,135,0 +lstair,135,0 +junglewoodenstairs,136,0 +junglewoodstairs,136,0 +junglewstairs,136,0 +junglestairs,136,0 +jstairs,136,0 +forestwoodenstairs,136,0 +forestwoodstairs,136,0 +forestwstairs,136,0 +foreststairs,136,0 +fstairs,136,0 +junglewoodenstair,136,0 +junglewoodstair,136,0 +junglewstair,136,0 +junglestair,136,0 +jstair,136,0 +forestwoodenstair,136,0 +forestwoodstair,136,0 +forestwstair,136,0 +foreststair,136,0 +fstair,136,0 +commandblock,137,0 +blockcommand,137,0 +cmdblock,137,0 +blockcmd,137,0 +macroblock,137,0 +blockmacro,137,0 +beacon,138,0 +beaconblock,138,0 +cobblestonewall,139,0 +cstonewall,139,0 +cobblewall,139,0 +cobblestonefence,139,0 +cstonefence,139,0 +cobblefence,139,0 +cswall,139,0 +csfence,139,0 +cwall,139,0 +cfence,139,0 +mosscobblestonewall,139,1 +mosscstonewall,139,1 +mosscobblewall,139,1 +mcobblestonewall,139,1 +mcstonewall,139,1 +mcobblewall,139,1 +mosscobblestonefence,139,1 +mosscstonefence,139,1 +mosscobblefence,139,1 +mcobblestonefence,139,1 +mcstonefence,139,1 +mcobblefence,139,1 +mcswall,139,0 +mcsfence,139,0 +mcwall,139,0 +mcfence,139,0 +plantedcarrot,141,0 +plantcarrot,141,0 +carrots,141,0 +growingcarrot,141,0 +potatoplant,142,0 +potatoes,142,0 +plantedpotato,142,0 +plantpotato,142,0 +growingpotato,142,0 +woodenbutton,143,0 +woodenplankbutton,143,0 +woodplankbutton,143,0 +wplankbutton,143,0 +plankbutton,143,0 +woodbutton,143,0 +wbutton,143,0 +anvil,145,0 +slightlydamagedanvil,145,1 +slightdamageanvil,145,1 +damagedanvil,145,1 +verydamagedanvil,145,2 +trapchest,146,0 +trappedchest,146,0 +chesttrapped,146,0 +chesttrap,146,0 +goldpressureplate,147,0 +weightedgoldpressureplate,147,0 +weightgoldpressureplate,147,0 +wgoldpressureplate,147,0 +weightedgoldpressplate,147,0 +weightgoldpressplate,147,0 +wgoldpressplate,147,0 +goldpressplate,147,0 +weightedgoldpplate,147,0 +weightgoldpplate,147,0 +wgoldpplate,147,0 +goldpplate,147,0 +weightedgoldplate,147,0 +weightgoldplate,147,0 +wgoldplate,147,0 +goldplate,147,0 +weightedgpressureplate,147,0 +weightgpressureplate,147,0 +wgpressureplate,147,0 +gpressureplate,147,0 +weightedgpressplate,147,0 +weightgpressplate,147,0 +wgpressplate,147,0 +gpressplate,147,0 +weightedgpplate,147,0 +weightgpplate,147,0 +wgpplate,147,0 +gpplate,147,0 +weightedgplate,147,0 +weightgplate,147,0 +wgplate,147,0 +gplate,147,0 +ironpressureplate,148,0 +weightedironpressureplate,148,0 +weightironpressureplate,148,0 +wironpressureplate,148,0 +weightedironpressplate,148,0 +weightironpressplate,148,0 +wironpressplate,148,0 +ironpressplate,148,0 +weightedironpplate,148,0 +weightironpplate,148,0 +wironpplate,148,0 +ironpplate,148,0 +weightedironplate,148,0 +weightironplate,148,0 +wironplate,148,0 +ironplate,148,0 +weightedipressureplate,148,0 +weightipressureplate,148,0 +wipressureplate,148,0 +ipressureplate,148,0 +weightedipressplate,148,0 +weightipressplate,148,0 +wipressplate,148,0 +ipressplate,148,0 +weightedipplate,148,0 +weightipplate,148,0 +wipplate,148,0 +ipplate,148,0 +weightediplate,148,0 +weightiplate,148,0 +wiplate,148,0 +iplate,148,0 +daylightsensor,151,0 +daylightsense,151,0 +lightsensor,151,0 +lightsense,151,0 +daysensor,151,0 +daysense,151,0 +timesensor,151,0 +timesense,151,0 +redstoneblock,152,0 +rstoneblock,152,0 +redsblock,152,0 +rsblock,152,0 +blockredstone,152,0 +blockrstone,152,0 +blockreds,152,0 +blockrs,152,0 +netherquartzore,153,0 +hellquartzore,153,0 +deathquartzore,153,0 +nquartzore,153,0 +hquartzore,153,0 +dquartzore,153,0 +quartzore,153,0 +netherqore,153,0 +hellqore,153,0 +deathqore,153,0 +nqore,153,0 +hqore,153,0 +dqore,153,0 +qore,153,0 +hopper,154,0 +chestpuller,154,0 +chestpull,154,0 +cheststorer,154,0 +cheststore,154,0 +itempuller,154,0 +itempull,154,0 +itemstorer,154,0 +itemstore,154,0 +quartzblock,155,0 +netherquartzblock,155,0 +nqblock,155,0 +qblock,155,0 +chiseledquartzblock,155,1 +chiselquartzblock,155,1 +cquartzblock,155,1 +cqblock,155,1 +pillarquartzblock,155,2 +pquartzblock,155,2 +pqblock,155,2 +quartzstairs,156,0 +qstairs,156,0 +quartzstair,156,0 +qstair,156,0 +activatorrails,157,0 +activaterails,157,0 +triggerrails,157,0 +arails,157,0 +trails,157,0 +activatorrail,157,0 +activaterail,157,0 +triggerrail,157,0 +arail,157,0 +trail,157,0 +activatortrack,157,0 +activatetrack,157,0 +triggertrack,157,0 +atrack,157,0 +ttrack,157,0 +dropper,158,0 +drop,158,0 +chestdispenser,158,0 +chestdispense,158,0 +chestdropper,158,0 +chestdrop,158,0 +whiteclay,159,0 +whitesclay,159,0 +whitestainedclay,159,0 +wclay,159,0 +wsclay,159,0 +wstainedclay,159,0 +sclay,159,0 +stainedclay,159,0 +orangeclay,159,1 +orangesclay,159,1 +orangestainedclay,159,1 +oclay,159,1 +osclay,159,1 +ostainedclay,159,1 +magentaclay,159,2 +magentasclay,159,2 +magentastainedclay,159,2 +mclay,159,2 +msclay,159,2 +mstainedclay,159,2 +lightblueclay,159,3 +lightbluesclay,159,3 +lightbluestainedclay,159,3 +lblueclay,159,3 +lbluesclay,159,3 +lbluestainedclay,159,3 +lightbluclay,159,3 +lightblusclay,159,3 +lightblustainedclay,159,3 +lbluclay,159,3 +lblusclay,159,3 +lblustainedclay,159,3 +lbclay,159,3 +lbsclay,159,3 +lbstainedclay,159,3 +yellowclay,159,4 +yellowsclay,159,4 +yellowstainedclay,159,4 +yclay,159,4 +ysclay,159,4 +ystainedclay,159,4 +lightgreenclay,159,5 +lightgreensclay,159,5 +lightgreenstainedclay,159,5 +lgreenclay,159,5 +lgreensclay,159,5 +lgreenstainedclay,159,5 +lightgreclay,159,5 +lightgresclay,159,5 +lightgrestainedclay,159,5 +lgreclay,159,5 +lgresclay,159,5 +lgrestainedclay,159,5 +limeclay,159,5 +limesclay,159,5 +limestainedclay,159,5 +lclay,159,5 +lsclay,159,5 +lstainedclay,159,5 +pinkclay,159,6 +pinksclay,159,6 +pinkstainedclay,159,6 +piclay,159,6 +pisclay,159,6 +pistainedclay,159,6 +darkgrayclay,159,7 +darkgraysclay,159,7 +darkgraystainedclay,159,7 +dgrayclay,159,7 +dgraysclay,159,7 +dgraystainedclay,159,7 +darkgreyclay,159,7 +darkgreeysclay,159,7 +darkgreystainedclay,159,7 +dgreyclay,159,7 +dgreysclay,159,7 +dgreystainedclay,159,7 +darkgraclay,159,7 +darkgrasclay,159,7 +darkgrastainedclay,159,7 +dgraclay,159,7 +dgrasclay,159,7 +dgrastainedclay,159,7 +grayclay,159,7 +graysclay,159,7 +graystainedclay,159,7 +greyclay,159,7 +greysclay,159,7 +greystainedclay,159,7 +graclay,159,7 +grasclay,159,7 +grastainedclay,159,7 +lightgrayclay,159,8 +lightgraysclay,159,8 +lightgraystainedclay,159,8 +lgrayclay,159,8 +lgraysclay,159,8 +lgraystainedclay,159,8 +lightgreyclay,159,8 +lightgreysclay,159,8 +lightgreystainedclay,159,8 +lgreyclay,159,8 +lgreysclay,159,8 +lgreystainedclay,159,8 +lightgraclay,159,8 +lightgrasclay,159,8 +lightgrastainedclay,159,8 +lgraclay,159,8 +lgrasclay,159,8 +lgrastainedclay,159,8 +silverclay,159,8 +silversclay,159,8 +silverstainedclay,159,8 +siclay,159,8 +siasclay,159,8 +siastainedclay,159,8 +cyanclay,159,9 +cyansclay,159,9 +cyanstainedclay,159,9 +cclay,159,9 +csclay,159,9 +cstainedclay,159,9 +purpleclay,159,10 +purplesclay,159,10 +purplestainedclay,159,10 +puclay,159,10 +pusclay,159,10 +pustainedclay,159,10 +blueclay,159,11 +bluesclay,159,11 +bluestainedclay,159,11 +bluclay,159,11 +blusclay,159,11 +blustainedclay,159,11 +brownclay,159,12 +brownsclay,159,12 +brownstainedclay,159,12 +broclay,159,12 +brosclay,159,12 +brostainedclay,159,12 +darkgreenclay,159,13 +darkgreensclay,159,13 +darkgreenstainedclay,159,13 +dgreenclay,159,13 +dgreensclay,159,13 +dgreenstainedclay,159,13 +greenclay,159,13 +greensclay,159,13 +greenstainedclay,159,13 +darkgreclay,159,13 +darkgresclay,159,13 +darkgrestainedclay,159,13 +dgreclay,159,13 +dgresclay,159,13 +dgrestainedclay,159,13 +greclay,159,13 +gresclay,159,13 +grestainedclay,159,13 +redclay,159,14 +redsclay,159,14 +redstainedclay,159,14 +rclay,159,14 +rsclay,159,14 +rstainedclay,159,14 +blackclay,159,15 +blacksclay,159,15 +blackstainedclay,159,15 +blaclay,159,15 +blasclay,159,15 +blastainedclay,159,15 +whiteglasspane,160,0 +whitesglasspane,160,0 +whitestainedglasspane,160,0 +wglasspane,160,0 +wsglasspane,160,0 +wstainedglasspane,160,0 +sglasspane,160,0 +stainedglasspane,160,0 +orangeglasspane,160,1 +orangesglasspane,160,1 +orangestainedglasspane,160,1 +oglasspane,160,1 +osglasspane,160,1 +ostainedglasspane,160,1 +magentaglasspane,160,2 +magentasglasspane,160,2 +magentastainedglasspane,160,2 +mglasspane,160,2 +msglasspane,160,2 +mstainedglasspane,160,2 +lightblueglasspane,160,3 +lightbluesglasspane,160,3 +lightbluestainedglasspane,160,3 +lblueglasspane,160,3 +lbluesglasspane,160,3 +lbluestainedglasspane,160,3 +lightbluglasspane,160,3 +lightblusglasspane,160,3 +lightblustainedglasspane,160,3 +lbluglasspane,160,3 +lblusglasspane,160,3 +lblustainedglasspane,160,3 +lbglasspane,160,3 +lbsglasspane,160,3 +lbstainedglasspane,160,3 +yellowglasspane,160,4 +yellowsglasspane,160,4 +yellowstainedglasspane,160,4 +yglasspane,160,4 +ysglasspane,160,4 +ystainedglasspane,160,4 +lightgreenglasspane,160,5 +lightgreensglasspane,160,5 +lightgreenstainedglasspane,160,5 +lgreenglasspane,160,5 +lgreensglasspane,160,5 +lgreenstainedglasspane,160,5 +lightgreglasspane,160,5 +lightgresglasspane,160,5 +lightgrestainedglasspane,160,5 +lgreglasspane,160,5 +lgresglasspane,160,5 +lgrestainedglasspane,160,5 +limeglasspane,160,5 +limesglasspane,160,5 +limestainedglasspane,160,5 +lglasspane,160,5 +lsglasspane,160,5 +lstainedglasspane,160,5 +pinkglasspane,160,6 +pinksglasspane,160,6 +pinkstainedglasspane,160,6 +piglasspane,160,6 +pisglasspane,160,6 +pistainedglasspane,160,6 +darkgrayglasspane,160,7 +darkgraysglasspane,160,7 +darkgraystainedglasspane,160,7 +dgrayglasspane,160,7 +dgraysglasspane,160,7 +dgraystainedglasspane,160,7 +darkgreyglasspane,160,7 +darkgreysglasspane,160,7 +darkgreystainedglasspane,160,7 +dgreyglasspane,160,7 +dgreysglasspane,160,7 +dgreystainedglasspane,160,7 +darkgraglasspane,160,7 +darkgrasglasspane,160,7 +darkgrastainedglasspane,160,7 +dgraglasspane,160,7 +dgrasglasspane,160,7 +dgrastainedglasspane,160,7 +grayglasspane,160,7 +graysglasspane,160,7 +graystainedglasspane,160,7 +greyglasspane,160,7 +greysglasspane,160,7 +greystainedglasspane,160,7 +graglasspane,160,7 +grasglasspane,160,7 +grastainedglasspane,160,7 +lightgrayglasspane,160,8 +lightgraysglasspane,160,8 +lightgraystainedglasspane,160,8 +lgrayglasspane,160,8 +lgraysglasspane,160,8 +lgraystainedglasspane,160,8 +lightgreyglasspane,160,8 +lightgreysglasspane,160,8 +lightgreystainedglasspane,160,8 +lgreyglasspane,160,8 +lgreysglasspane,160,8 +lgreystainedglasspane,160,8 +lightgraglasspane,160,8 +lightgrasglasspane,160,8 +lightgrastainedglasspane,160,8 +lgraglasspane,160,8 +lgrasglasspane,160,8 +lgrastainedglasspane,160,8 +silverglasspane,160,8 +silversglasspane,160,8 +silverstainedglasspane,160,8 +siglasspane,160,8 +siasglasspane,160,8 +siastainedglasspane,160,8 +cyanglasspane,160,9 +cyansglasspane,160,9 +cyanstainedglasspane,160,9 +cglasspane,160,9 +csglasspane,160,9 +cstainedglasspane,160,9 +purpleglasspane,160,10 +purplesglasspane,160,10 +purplestainedglasspane,160,10 +puglasspane,160,10 +pusglasspane,160,10 +pustainedglasspane,160,10 +blueglasspane,160,11 +bluesglasspane,160,11 +bluestainedglasspane,160,11 +bluglasspane,160,11 +blusglasspane,160,11 +blustainedglasspane,160,11 +brownglasspane,160,12 +brownsglasspane,160,12 +brownstainedglasspane,160,12 +broglasspane,160,12 +brosglasspane,160,12 +brostainedglasspane,160,12 +darkgreenglasspane,160,13 +darkgreensglasspane,160,13 +darkgreenstainedglasspane,160,13 +dgreenglasspane,160,13 +dgreensglasspane,160,13 +dgreenstainedglasspane,160,13 +greenglasspane,160,13 +greensglasspane,160,13 +greenstainedglasspane,160,13 +darkgreglasspane,160,13 +darkgresglasspane,160,13 +darkgrestainedglasspane,160,13 +dgreglasspane,160,13 +dgresglasspane,160,13 +dgrestainedglasspane,160,13 +greglasspane,160,13 +gresglasspane,160,13 +grestainedglasspane,160,13 +redglasspane,160,14 +redsglasspane,160,14 +redstainedglasspane,160,14 +rglasspane,160,14 +rsglasspane,160,14 +rstainedglasspane,160,14 +blackglasspane,160,15 +blacksglasspane,160,15 +blackstainedglasspane,160,15 +blaglasspane,160,15 +blasglasspane,160,15 +blastainedglasspane,160,15 +acacialeaves,161,0 +acaciatreeleaves,161,0 +acacialogleaves,161,0 +acaciatrunkleaves,161,0 +acaciawoodleaves,161,0 +aleaves,161,0 +atreeleaves,161,0 +alogleaves,161,0 +atrunkleaves,161,0 +awoodleaves,161,0 +acacialeave,161,0 +acaciatreeleave,161,0 +acacialogleave,161,0 +acaciatrunkleave,161,0 +acaciawoodleave,161,0 +aleave,161,0 +atreeleave,161,0 +alogleave,161,0 +atrunkleave,161,0 +awoodleave,161,0 +acaciatreeleaf,161,0 +acacialogleaf,161,0 +acaciatrunkleaf,161,0 +acaciawoodleaf,161,0 +aleaf,161,0 +atreeleaf,161,0 +alogleaf,161,0 +atrunkleaf,161,0 +awoodleaf,161,0 +darkoakleaves,161,1 +darkoaktreeleaves,161,1 +darkoaklogleaves,161,1 +darkoaktrunkleaves,161,1 +darkoakwoodleaves,161,1 +doakleaves,161,1 +doaktreeleaves,161,1 +doaklogleaves,161,1 +doaktrunkleaves,161,1 +doakwoodleaves,161,1 +doleaves,161,1 +dotreeleaves,161,1 +dologleaves,161,1 +dotrunkleaves,161,1 +dowoodleaves,161,1 +darkoakleave,161,1 +darkoaktreeleave,161,1 +darkoaklogleave,161,1 +darkoaktrunkleave,161,1 +darkoakwoodleave,161,1 +doakleave,161,1 +doaktreeleave,161,1 +doaklogleave,161,1 +doaktrunkleave,161,1 +doakwoodleave,161,1 +doleave,161,1 +dotreeleave,161,1 +dologleave,161,1 +dotrunkleave,161,1 +dowoodleave,161,1 +darkoaktreeleaf,161,1 +darkoaklogleaf,161,1 +darkoaktrunkleaf,161,1 +darkoakwoodleaf,161,1 +doakleaf,161,1 +doaktreeleaf,161,1 +doaklogleaf,161,1 +doaktrunkleaf,161,1 +doakwoodleaf,161,1 +doleaf,161,1 +dotreeleaf,161,1 +dologleaf,161,1 +dotrunkleaf,161,1 +dowoodleaf,161,1 +acacia,162,0 +acaciatree,162,0 +acacialog,162,0 +acaciatrunk,162,0 +acaciawood,162,0 +atree,162,0 +alog,162,0 +atrunk,162,0 +awood,162,0 +darkoak,162,1 +darkoaktree,162,1 +darkoaklog,162,1 +darkoaktrunk,162,1 +darkoakwood,162,1 +doak,162,1 +doaktree,162,1 +doaklog,162,1 +doaktrunk,162,1 +doakwood,162,1 +dotree,162,1 +dolog,162,1 +dotrunk,162,1 +dowood,162,1 +acaciawoodenstairs,163,0 +acaciawoodstairs,163,0 +acaciawstairs,163,0 +acaciastairs,163,0 +awoodenstairs,163,0 +awoodstairs,163,0 +awstairs,163,0 +astairs,163,0 +acaciawoodenstair,163,0 +acaciawoodstair,163,0 +acaciawstair,163,0 +acaciastair,163,0 +awoodenstair,163,0 +awoodstair,163,0 +awstair,163,0 +astair,163,0 +darkoakwoodenstairs,164,0 +darkoakwoodstairs,164,0 +darkoakwstairs,164,0 +darkoakstairs,164,0 +doakwoodenstairs,164,0 +doakwoodstairs,164,0 +doakwstairs,164,0 +doakstairs,164,0 +dowoodenstairs,164,0 +dowoodstairs,164,0 +dowstairs,164,0 +dostairs,164,0 +darkoakwoodenstair,164,0 +darkoakwoodstair,164,0 +darkoakwstair,164,0 +darkoakstair,164,0 +doakwoodenstair,164,0 +doakwoodstair,164,0 +doakwstair,164,0 +doakstair,164,0 +dowoodenstair,164,0 +dowoodstair,164,0 +dowstair,164,0 +dostair,164,0 +hay,170,0 +hayblock,170,0 +haybale,170,0 +baleofhay,170,0 +hayofbale,170,0 +whitecarpet,171,0 +whitefloor,171,0 +wcarpet,171,0 +wfloor,171,0 +carpet,171,0 +floor,171,0 +orangecarpet,171,1 +orangefloor,171,1 +ocarpet,171,1 +ofloor,171,1 +magentacarpet,171,2 +magentafloor,171,2 +mcarpet,171,2 +mfloor,171,2 +lightbluecarpet,171,3 +lightbluefloor,171,3 +lbluecarpet,171,3 +lbluefloor,171,3 +lbcarpet,171,3 +lbfloor,171,3 +lightblucarpet,171,3 +lightblufloor,171,3 +lblucarpet,171,3 +lblufloor,171,3 +yellowcarpet,171,4 +yellowfloor,171,4 +ycarpet,171,4 +yfloor,171,4 +lightgreencarpet,171,5 +lightgreenfloor,171,5 +lgreencarpet,171,5 +lgreenfloor,171,5 +lightgrecarpet,171,5 +lightgrefloor,171,5 +lgrecarpet,171,5 +lgrefloor,171,5 +limecarpet,171,5 +limefloor,171,5 +lcarpet,171,5 +lfloor,171,5 +pinkcarpet,171,6 +pinkfloor,171,6 +picarpet,171,6 +pifloor,171,6 +darkgraycarpet,171,7 +darkgrayfloor,171,7 +dgraycarpet,171,7 +dgrayfloor,171,7 +darkgreycarpet,171,7 +darkgreyfloor,171,7 +dgreycarpet,171,7 +dgreyfloor,171,7 +darkgracarpet,171,7 +darkgrafloor,171,7 +dgracarpet,171,7 +dgrafloor,171,7 +graycarpet,171,7 +grayfloor,171,7 +greycarpet,171,7 +greyfloor,171,7 +gracarpet,171,7 +grafloor,171,7 +lightgraycarpet,171,8 +lightgrayfloor,171,8 +lgraycarpet,171,8 +lgrayfloor,171,8 +lightgreycarpet,171,8 +lightgreyfloor,171,8 +lgreycarpet,171,8 +lgreyfloor,171,8 +lightgracarpet,171,8 +lightgrafloor,171,8 +lgracarpet,171,8 +lgrafloor,171,8 +silvercarpet,171,8 +silverfloor,171,8 +sicarpet,171,8 +siafloor,171,8 +cyancarpet,171,9 +cyanfloor,171,9 +ccarpet,171,9 +cfloor,171,9 +purplecarpet,171,10 +purplefloor,171,10 +pucarpet,171,10 +pufloor,171,10 +bluecarpet,171,11 +bluefloor,171,11 +blucarpet,171,11 +blufloor,171,11 +browncarpet,171,12 +brownfloor,171,12 +brocarpet,171,12 +brofloor,171,12 +darkgreencarpet,171,13 +darkgreenfloor,171,13 +dgreencarpet,171,13 +dgreenfloor,171,13 +greencarpet,171,13 +greenfloor,171,13 +darkgrecarpet,171,13 +darkgrefloor,171,13 +dgrecarpet,171,13 +dgrefloor,171,13 +grecarpet,171,13 +grefloor,171,13 +redcarpet,171,14 +redfloor,171,14 +rcarpet,171,14 +rfloor,171,14 +blackcarpet,171,15 +blackfloor,171,15 +blacarpet,171,15 +blafloor,171,15 +hardenedclay,172,0 +hardclay,172,0 +hclay,172,0 +coalblock,173,0 +blockcoal,173,0 +coblock,173,0 +blockco,173,0 +coalb,173,0 +bcoal,173,0 +packedice,174,0 +packice,174,0 +solidice,174,0 +sunflower,175,0 +yellowsunflower,175,0 +lilac,175,1 +magentalilac,175,1 +syringa,175,1 +longtallgrass,175,2 +extratallgrass,175,2 +doubletallgrass,175,2 +largetallgrass,175,2 +longtgrass,175,2 +extratgrass,175,2 +doubletgrass,175,2 +largetgrass,175,2 +ltgrass,175,2 +etgrass,175,2 +dtgrass,175,2 +bigfern,175,3 +largefern,175,3 +doublefern,175,3 +bfern,175,3 +lfern,175,3 +dfern,175,3 +rosebush,175,4 +redrosebush,175,4 +peony,175,5 +pinkpeony,175,5 +paeonia,175,5 +ironshovel,256,0 +ironspade,256,0 +ishovel,256,0 +ispade,256,0 +steelshovel,256,0 +steelspade,256,0 +ironpickaxe,257,0 +ironpick,257,0 +steelpickaxe,257,0 +steelpick,257,0 +ipickaxe,257,0 +ipick,257,0 +ironaxe,258,0 +iaxe,258,0 +steelaxe,258,0 +flintandsteel,259,0 +flintandiron,259,0 +flintandtinder,259,0 +flintnsteel,259,0 +flintniron,259,0 +flintntinder,259,0 +flintsteel,259,0 +flintiron,259,0 +flinttinder,259,0 +lighter,259,0 +apple,260,0 +normalapple,260,0 +redapple,260,0 +bow,261,0 +arrow,262,0 +coal,263,0 +charcoal,263,1 +ccoal,263,1 +diamond,264,0 +crystal,264,0 +ironingot,265,0 +ironbar,265,0 +ironi,265,0 +steelingot,265,0 +steelbar,265,0 +steeli,265,0 +iingot,265,0 +ibar,265,0 +ingotiron,265,0 +bariron,265,0 +iiron,265,0 +ingotsteel,265,0 +barsteel,265,0 +isteel,265,0 +ingoti,265,0 +bari,265,0 +goldingot,266,0 +goldbar,266,0 +goldi,266,0 +gingot,266,0 +gbar,266,0 +ingotgold,266,0 +bargold,266,0 +igold,266,0 +ingotg,266,0 +barg,266,0 +ironsword,267,0 +steelsword,267,0 +isword,267,0 +woodensword,268,0 +woodsword,268,0 +wsword,268,0 +woodenshovel,269,0 +woodenspade,269,0 +woodshovel,269,0 +woodspade,269,0 +wshovel,269,0 +wspade,269,0 +woodenpickaxe,270,0 +woodenpick,270,0 +woodpickaxe,270,0 +woodpick,270,0 +wpickaxe,270,0 +wpick,270,0 +woodenaxe,271,0 +woodaxe,271,0 +waxe,271,0 +stonesword,272,0 +cobblestonesword,272,0 +cstonesword,272,0 +cssword,272,0 +ssword,272,0 +stoneshovel,273,0 +cobblestoneshovel,273,0 +cobblestonespade,273,0 +cstoneshovel,273,0 +cstonespade,273,0 +stonespade,273,0 +csshovel,273,0 +csspade,273,0 +sshovel,273,0 +sspade,273,0 +stonepickaxe,274,0 +cobblestonepickaxe,274,0 +cobblestonepick,274,0 +cstonepickaxe,274,0 +cstonepick,274,0 +stonepick,274,0 +cspickaxe,274,0 +cspick,274,0 +spickaxe,274,0 +spick,274,0 +stoneaxe,275,0 +cobblestoneaxe,275,0 +cstoneaxe,275,0 +csaxe,275,0 +saxe,275,0 +diamondsword,276,0 +crystalsword,276,0 +dsword,276,0 +diamondshovel,277,0 +diamondspade,277,0 +crystalshovel,277,0 +crystalspade,277,0 +dshovel,277,0 +dspade,277,0 +diamondpickaxe,278,0 +diamondpick,278,0 +crystalpickaxe,278,0 +crystalpick,278,0 +dpickaxe,278,0 +dpick,278,0 +diamondaxe,279,0 +crystalaxe,279,0 +daxe,279,0 +stick,280,0 +twig,280,0 +branch,280,0 +bowl,281,0 +woodenbowl,281,0 +woodbowl,281,0 +mushroomsoup,282,0 +mrsoup,282,0 +soup,282,0 +goldsword,283,0 +gsword,283,0 +goldshovel,284,0 +goldspade,284,0 +gshovel,284,0 +gspade,284,0 +goldpickaxe,285,0 +goldpick,285,0 +gpickaxe,285,0 +gpick,285,0 +goldaxe,286,0 +gaxe,286,0 +string,287,0 +thread,287,0 +feather,288,0 +gunpowder,289,0 +sulfur,289,0 +woodenhoe,290,0 +woodhoe,290,0 +whoe,290,0 +stonehoe,291,0 +cobblestonehoe,291,0 +cstonehoe,291,0 +cshoe,291,0 +shoe,291,0 +ironhoe,292,0 +steelhoe,292,0 +ihoe,292,0 +diamondhoe,293,0 +crystalhoe,293,0 +dhoe,293,0 +goldhoe,294,0 +ghoe,294,0 +seeds,295,0 +seed,295,0 +wheat,296,0 +crops,296,0 +crop,296,0 +bread,297,0 +leatherhelmet,298,0 +leatherhelm,298,0 +leatherhat,298,0 +leathercoif,298,0 +lhelmet,298,0 +lhelm,298,0 +lhat,298,0 +lcoif,298,0 +leatherchestplate,299,0 +leatherplatebody,299,0 +leatherplate,299,0 +leathershirt,299,0 +leathertunic,299,0 +lchestplate,299,0 +lplatebody,299,0 +lplate,299,0 +lshirt,299,0 +ltunic,299,0 +leatherleggings,300,0 +leatherlegs,300,0 +leatherpants,300,0 +lleggings,300,0 +llegs,300,0 +lpants,300,0 +leatherboots,301,0 +leathershoes,301,0 +lboots,301,0 +lshoes,301,0 +chainmailhelmet,302,0 +chainmailhelm,302,0 +chainmailhat,302,0 +chainmailcoif,302,0 +chainmhelmet,302,0 +chainmhelm,302,0 +chainmhat,302,0 +chainmcoif,302,0 +cmailhelmet,302,0 +cmailhelm,302,0 +cmailhat,302,0 +cmailcoif,302,0 +chainhelmet,302,0 +chainhelm,302,0 +chainhat,302,0 +chaincoif,302,0 +cmhelmet,302,0 +cmhelm,302,0 +cmhat,302,0 +cmcoif,302,0 +chainmailchestplate,303,0 +chainmailplatebody,303,0 +chainmailplate,303,0 +chainmailshirt,303,0 +chainmailtunic,303,0 +chainmchestplate,303,0 +chainmplatebody,303,0 +chainmplate,303,0 +chainmshirt,303,0 +chainmtunic,303,0 +cmailchestplate,303,0 +cmailplatebody,303,0 +cmailplate,303,0 +cmailshirt,303,0 +cmailtunic,303,0 +chainchestplate,303,0 +chainplatebody,303,0 +chainplate,303,0 +chainshirt,303,0 +chaintunic,303,0 +cmchestplate,303,0 +cmplatebody,303,0 +cmplate,303,0 +cmshirt,303,0 +cmtunic,303,0 +chainmailleggings,304,0 +chainmaillegs,304,0 +chainmailpants,304,0 +chainmleggings,304,0 +chainmlegs,304,0 +chainmpants,304,0 +cmailleggings,304,0 +cmaillegs,304,0 +cmailpants,304,0 +chainleggings,304,0 +chainlegs,304,0 +chainpants,304,0 +cmleggings,304,0 +cmlegs,304,0 +cmpants,304,0 +chainmailboots,305,0 +chainmailshoes,305,0 +chainmboots,305,0 +chainmshoes,305,0 +cmailboots,305,0 +cmailshoes,305,0 +chainboots,305,0 +chainshoes,305,0 +cmboots,305,0 +cmshoes,305,0 +ironhelmet,306,0 +ironhelm,306,0 +ironhat,306,0 +ironcoif,306,0 +ihelmet,306,0 +ihelm,306,0 +ihat,306,0 +icoif,306,0 +steelhelmet,306,0 +steelhelm,306,0 +steelhat,306,0 +steelcoif,306,0 +shelmet,306,0 +shelm,306,0 +shat,306,0 +scoif,306,0 +ironchestplate,307,0 +ironplatebody,307,0 +ironshirt,307,0 +irontunic,307,0 +ichestplate,307,0 +iplatebody,307,0 +ishirt,307,0 +itunic,307,0 +steelchestplate,307,0 +steelplatebody,307,0 +steelplate,307,0 +steelshirt,307,0 +steeltunic,307,0 +schestplate,307,0 +splatebody,307,0 +sshirt,307,0 +stunic,307,0 +ironleggings,308,0 +ironlegs,308,0 +ironpants,308,0 +ileggings,308,0 +ilegs,308,0 +ipants,308,0 +steelleggings,308,0 +steellegs,308,0 +steelpants,308,0 +sleggings,308,0 +slegs,308,0 +spants,308,0 +ironboots,309,0 +ironshoes,309,0 +iboots,309,0 +ishoes,309,0 +steelboots,309,0 +steelshoes,309,0 +sboots,309,0 +sshoes,309,0 +diamondhelmet,310,0 +diamondhelm,310,0 +diamondhat,310,0 +diamondcoif,310,0 +dhelmet,310,0 +dhelm,310,0 +dhat,310,0 +dcoif,310,0 +crystalhelmet,310,0 +crystalhelm,310,0 +crystalhat,310,0 +crystalcoif,310,0 +chelmet,310,0 +chelm,310,0 +chat,310,0 +ccoif,310,0 +diamondchestplate,311,0 +diamondplatebody,311,0 +diamondplate,311,0 +diamondshirt,311,0 +diamondtunic,311,0 +dchestplate,311,0 +dplatebody,311,0 +dplate,311,0 +dshirt,311,0 +dtunic,311,0 +crystalchestplate,311,0 +crystalplatebody,311,0 +crystalplate,311,0 +crystalshirt,311,0 +crystaltunic,311,0 +cchestplate,311,0 +cplatebody,311,0 +cplate,311,0 +cshirt,311,0 +ctunic,311,0 +diamondleggings,312,0 +diamondlegs,312,0 +diamondpants,312,0 +dleggings,312,0 +dlegs,312,0 +dpants,312,0 +crystalleggings,312,0 +crystallegs,312,0 +crystalpants,312,0 +cleggings,312,0 +clegs,312,0 +cpants,312,0 +diamondboots,313,0 +diamondshoes,313,0 +dboots,313,0 +dshoes,313,0 +crystalboots,313,0 +crystalshoes,313,0 +cboots,313,0 +cshoes,313,0 +goldhelmet,314,0 +goldhelm,314,0 +goldhat,314,0 +goldcoif,314,0 +ghelmet,314,0 +ghelm,314,0 +ghat,314,0 +gcoif,314,0 +goldchestplate,315,0 +goldplatebody,315,0 +goldshirt,315,0 +goldtunic,315,0 +gchestplate,315,0 +gplatebody,315,0 +gplateplate,315,0 +gshirt,315,0 +gtunic,315,0 +goldleggings,316,0 +goldlegs,316,0 +goldpants,316,0 +gleggings,316,0 +glegs,316,0 +gpants,316,0 +goldboots,317,0 +goldshoes,317,0 +gboots,317,0 +gshoes,317,0 +flint,318,0 +pork,319,0 +porkchop,319,0 +rawpork,319,0 +rpork,319,0 +rawporkchop,319,0 +rporkchop,319,0 +cookedpork,320,0 +grilledpork,320,0 +grillpork,320,0 +gpork,320,0 +cookpork,320,0 +cpork,320,0 +grilledporkchop,320,0 +grillporkchop,320,0 +gporkchop,320,0 +cookedporkchop,320,0 +cookporkchop,320,0 +cporkchop,320,0 +bacon,320,0 +painting,321,0 +picture,321,0 +goldenapple,322,0 +goldapple,322,0 +gapple,322,0 +enchantedgoldenapple,322,1 +enchantedgoldapple,322,1 +enchantedgapple,322,1 +supergoldenapple,322,1 +supergoldapple,322,1 +supergapple,322,1 +magicalgoldenapple,322,1 +magicalgoldapple,322,1 +magicalgapple,322,1 +magicgoldenapple,322,1 +magicgoldapple,322,1 +magicgapple,322,1 +egoldenapple,322,1 +egoldapple,322,1 +egapple,322,1 +sgoldenapple,322,1 +sgoldapple,322,1 +sgapple,322,1 +mgoldenapple,322,1 +mgoldapple,322,1 +mgapple,322,1 +sign,323,0 +woodendoor,324,0 +wooddoor,324,0 +wdoor,324,0 +door,324,0 +bucket,325,0 +bukkit,325,0 +waterbucket,326,0 +waterbukkit,326,0 +wbucket,326,0 +wbukkit,326,0 +magmabucket,327,0 +magmabukkit,327,0 +lavabucket,327,0 +lavabukkit,327,0 +lbucket,327,0 +lbukkit,327,0 +minecart,328,0 +mcart,328,0 +cart,328,0 +saddle,329,0 +irondoor,330,0 +idoor,330,0 +steeldoor,330,0 +sdoor,330,0 +dooriron,330,0 +doori,330,0 +doorsteel,330,0 +doors,330,0 +redstonedust,331,0 +redstone,331,0 +rstonedust,331,0 +rstone,331,0 +redsdust,331,0 +reddust,331,0 +rsdust,331,0 +rdust,331,0 +snow,332,0 +snowball,332,0 +snball,332,0 +sball,332,0 +boat,333,0 +leather,334,0 +cowhide,334,0 +hide,334,0 +milkbucket,335,0 +milkbukkit,335,0 +mbucket,335,0 +mbukkit,335,0 +claybrick,336,0 +brick,336,0 +redbrick,336,0 +rbrick,336,0 +clayball,337,0 +cball,337,0 +clay,337,0 +reeds,338,0 +reed,338,0 +sugarcane,338,0 +scane,338,0 +bamboo,338,0 +paper,339,0 +papyrus,339,0 +book,340,0 +slimeball,341,0 +slball,341,0 +chestminecart,342,0 +storageminecart,342,0 +storagemcart,342,0 +chestmcart,342,0 +storagecart,342,0 +chestcart,342,0 +sminecart,342,0 +cminecart,342,0 +smcart,342,0 +cmcart,342,0 +scart,342,0 +ccart,342,0 +furnaceminecart,343,0 +engineminecart,343,0 +poweredminecart,343,0 +powerminecart,343,0 +enginemcart,343,0 +poweredmcart,343,0 +powermcart,343,0 +furnacemcart,343,0 +enginecart,343,0 +poweredcart,343,0 +powercart,343,0 +furnacecart,343,0 +eminecart,343,0 +pminecart,343,0 +fminecart,343,0 +emcart,343,0 +pmcart,343,0 +fmcart,343,0 +ecart,343,0 +pcart,343,0 +fcart,343,0 +egg,344,0 +compass,345,0 +fishingrod,346,0 +fishrod,346,0 +frod,346,0 +rod,346,0 +watch,347,0 +goldwatch,347,0 +goldclock,347,0 +gwatch,347,0 +gclock,347,0 +clock,347,0 +glowstonedust,348,0 +glowingstonedust,348,0 +lightstonedust,348,0 +lbdust,348,0 +gbdust,348,0 +lsdust,348,0 +gsdust,348,0 +rawfish,349,0 +rafish,349,0 +fish,349,0 +rawsalmonfish,349,1 +rasalmonfish,349,1 +salmonfish,349,1 +rawsalmon,349,1 +rasalmon,349,1 +salmon,349,1 +sfish,349,1 +fishs,349,1 +rawclownfish,349,2 +raclownfish,349,2 +clownfish,349,2 +rawnemo,349,2 +ranemo,349,2 +nemo,349,2 +nemofish,349,2 +fishnemo,349,2 +clfish,349,2 +fishcl,349,2 +nfish,349,2 +fishn,349,2 +rawpufferfish,349,3 +rapufferfish,349,3 +pufferfish,349,3 +pufffish,349,3 +fishpuff,349,3 +pfish,349,3 +fishp,349,3 +cookedfish,350,0 +cookfish,350,0 +cfish,350,0 +grilledfish,350,0 +grillfish,350,0 +gfish,350,0 +roastedfish,350,0 +roastfish,350,0 +rofish,350,0 +cookedsalmonfish,350,1 +cooksalmonfish,350,1 +csalmonfish,350,1 +grilledsalmonfish,350,1 +grillsalmonfish,350,1 +gsalmonfish,350,1 +roastedsalmonfish,350,1 +roastsalmonfish,350,1 +rosalmonfish,350,1 +cookedsalmon,350,1 +cooksalmon,350,1 +csalmon,350,1 +grilledsalmon,350,1 +grillsalmon,350,1 +gsalmon,350,1 +roastedsalmon,350,1 +roastsalmon,350,1 +rosalmon,350,1 +dye,351,0 +inksack,351,0 +inksac,351,0 +isack,351,0 +isac,351,0 +sack,351,0 +sac,351,0 +blackinksack,351,0 +blackinksac,351,0 +blackisack,351,0 +blackisac,351,0 +blacksack,351,0 +blacksac,351,0 +inksackblack,351,0 +inksacblack,351,0 +isackblack,351,0 +isacblack,351,0 +sackblack,351,0 +sacblack,351,0 +blackinksackcolour,351,0 +blackinksaccolour,351,0 +blackisackcolour,351,0 +blackisaccolour,351,0 +blacksackcolour,351,0 +blacksaccolour,351,0 +inksackblackcolour,351,0 +inksacblackcolour,351,0 +isackblackcolour,351,0 +isacclackcolour,351,0 +sackblackcolour,351,0 +sacblackcolour,351,0 +blackinksackcolor,351,0 +blackinksaccolor,351,0 +blackisackcolor,351,0 +blackisaccolor,351,0 +blacksackcolor,351,0 +blacksaccolor,351,0 +inksackblackcolor,351,0 +inksacblackcolor,351,0 +isackblackcolor,351,0 +isacblackcolor,351,0 +sackblackcolor,351,0 +sacblackcolor,351,0 +blackinksackdye,351,0 +blackinksacdye,351,0 +blackisackdye,351,0 +blackisacdye,351,0 +blacksackdye,351,0 +blacksacdye,351,0 +inksackblackdye,351,0 +inksacblackdye,351,0 +isackblackdye,351,0 +isacclackdye,351,0 +sackblackdye,351,0 +sacblackdye,351,0 +blackcolor,351,0 +blackdye,351,0 +rosered,351,1 +roseredcolor,351,1 +roseredcolour,351,1 +rosereddye,351,1 +redrosecolor,351,1 +redrosecolour,351,1 +redrosedye,351,1 +redr,351,1 +redrcolor,351,1 +redrcolour,351,1 +redrdye,351,1 +redcolor,351,1 +redcolour,351,1 +reddye,351,1 +cactusgreen,351,2 +greencactus,351,2 +cactusgreencolour,351,2 +greencactuscolour,351,2 +cactusgreencolor,351,2 +greencactuscolor,351,2 +cactusgreendye,351,2 +greencactusdye,351,2 +greencolour,351,2 +greencolor,351,2 +greendye,351,2 +cocoabeans,351,3 +cocoabean,351,3 +cocobeans,351,3 +cocobean,351,3 +cbeans,351,3 +cbean,351,3 +beans,351,3 +bean,351,3 +browncocoabeans,351,3 +browncocoabean,351,3 +browncocobeans,351,3 +browncocobean,351,3 +browncbeans,351,3 +browncbean,351,3 +brownbeans,351,3 +brownbean,351,3 +brownb,351,3 +cocoabeanscolour,351,3 +cocoabeancolour,351,3 +cocobeanscolour,351,3 +cocobeancolour,351,3 +cbeanscolour,351,3 +cbeancolour,351,3 +beanscolour,351,3 +beancolour,351,3 +browncocoabeanscolour,351,3 +browncocoabeancolour,351,3 +browncocobeanscolour,351,3 +browncocobeancolour,351,3 +browncbeanscolour,351,3 +browncbeancolour,351,3 +brownbeanscolour,351,3 +brownbeancolour,351,3 +brownbcolour,351,3 +cocoabeanscolor,351,3 +cocoabeancolor,351,3 +cocobeanscolor,351,3 +cocobeancolor,351,3 +cbeanscolor,351,3 +cbeancolor,351,3 +beanscolor,351,3 +beancolor,351,3 +browncocoabeanscolor,351,3 +browncocoabeancolor,351,3 +browncocobeanscolor,351,3 +browncocobeancolor,351,3 +browncbeanscolor,351,3 +browncbeancolor,351,3 +brownbeanscolor,351,3 +brownbeancolor,351,3 +brownbcolor,351,3 +cocoabeansdye,351,3 +cocoabeandye,351,3 +cocobeansdye,351,3 +cocobeandye,351,3 +cbeansdye,351,3 +cbeandye,351,3 +beansdye,351,3 +beandye,351,3 +browncocoabeansdye,351,3 +browncocoabeandye,351,3 +browncocobeansdye,351,3 +browncocobeandye,351,3 +browncbeansdye,351,3 +browncbeandye,351,3 +brownbeansdye,351,3 +brownbeandye,351,3 +brownbdye,351,3 +browncolour,351,3 +browncolor,351,3 +browndye,351,3 +lapislazuli,351,4 +bluelapislazuli,351,4 +bluelapisl,351,4 +bluelapis,351,4 +bluel,351,4 +lapislazuliblue,351,4 +lapislblue,351,4 +lapisblue,351,4 +lapisl,351,4 +lapis,351,4 +bluelapislazulicolour,351,4 +bluelapislcolour,351,4 +bluelapiscolour,351,4 +lapislazulibluecolour,351,4 +lapislbluecolour,351,4 +lapisbluecolour,351,4 +lapislazulicolour,351,4 +lapislcolour,351,4 +lapiscolour,351,4 +bluelapislazulicolor,351,4 +bluelapislcolor,351,4 +bluelapiscolor,351,4 +lapislazulibluecolor,351,4 +lapislbluecolor,351,4 +lapisbluecolor,351,4 +lapislazulicolor,351,4 +lapislcolor,351,4 +lapiscolor,351,4 +bluelapislazulidye,351,4 +bluelapisldye,351,4 +bluelapisdye,351,4 +lapislazulibluedye,351,4 +lapislbluedye,351,4 +lapisbluedye,351,4 +lapislazulidye,351,4 +lapisldye,351,4 +lapisdye,351,4 +bluecolour,351,4 +bluecolor,351,4 +bluedye,351,4 +purpledye,351,5 +purplecolour,351,5 +purplecolor,351,5 +cyandye,351,6 +cyancolour,351,6 +cyancolor,351,6 +lightgraydye,351,7 +lightgraycolour,351,7 +lightgraycolor,351,7 +lgraycolour,351,7 +lgraycolor,351,7 +lgraydye,351,7 +lightgreydye,351,7 +lightgreycolour,351,7 +lightgreycolor,351,7 +lgreycolour,351,7 +lgreycolor,351,7 +lgreydye,351,7 +silvercolour,351,7 +silvercolor,351,7 +silverdye,351,7 +darkgraydye,351,8 +darkgraycolour,351,8 +darkgraycolor,351,8 +dgraycolour,351,8 +dgraycolor,351,8 +dgraydye,351,8 +graycolour,351,8 +graycolor,351,8 +graydye,351,8 +darkgreydye,351,8 +darkgreycolour,351,8 +darkgreycolor,351,8 +dgreycolour,351,8 +dgreycolor,351,8 +dgreydye,351,8 +greycolour,351,8 +greycolor,351,8 +greydye,351,8 +pinkdye,351,9 +pinkcolour,351,9 +pinkcolor,351,9 +limedye,351,10 +limecolour,351,10 +limecolor,351,10 +dandelionyellow,351,11 +dandelionyellowcolour,351,11 +dandelionyellowcolor,351,11 +dandelionyellowdye,351,11 +yellowdandelioncolour,351,11 +yellowdandelioncolor,351,11 +yellowdandeliondye,351,11 +yellowd,351,11 +yellowdcolour,351,11 +yellowdcolor,351,11 +yellowddye,351,11 +dyellow,351,11 +dyellowcolour,351,11 +dyellowcolor,351,11 +dyellowdye,351,11 +yellowcolour,351,11 +yellowcolor,351,11 +yellowdye,351,11 +lightbluecolour,351,12 +lightbluecolor,351,12 +lightbluedye,351,12 +lbluecolour,351,12 +lbluecolor,351,12 +lbluedye,351,12 +magentacolour,351,13 +magentacolor,351,13 +magentadye,351,13 +orangecolour,351,14 +orangecolor,351,14 +orangedye,351,14 +bonemeal,351,15 +whitebonemeal,351,15 +whitebonemealcolour,351,15 +whitebonemealcolor,351,15 +whitebonemealdye,351,15 +bonemealwhite,351,15 +bonemealwhitecolour,351,15 +bonemealwhitecolor,351,15 +bonemealwhitedye,351,15 +whitebonem,351,15 +whitebonemcolour,351,15 +whitebonemcolor,351,15 +whitebonemdye,351,15 +bonemwhite,351,15 +bonemwhitecolour,351,15 +bonemwhitecolor,351,15 +bonemwhitedye,351,15 +bonemealcolour,351,15 +bonemealcolor,351,15 +bonemealdye,351,15 +bonem,351,15 +bonemcolour,351,15 +bonemcolor,351,15 +bonemdye,351,15 +whitecolour,351,15 +whitecolor,351,15 +whitedye,351,15 +bone,352,0 +sugar,353,0 +whitedust,353,0 +cake,354,0 +bed,355,0 +redstonerepeater,356,0 +redstonerepeat,356,0 +redstonedelayer,356,0 +redstonedelay,356,0 +redstonedioder,356,0 +redstonediode,356,0 +rstonerepeater,356,0 +rstonerepeat,356,0 +rstonedelayer,356,0 +rstonedelay,356,0 +rstonedioder,356,0 +rstonediode,356,0 +redsrepeater,356,0 +redsrepeat,356,0 +redsdelayer,356,0 +redsdelay,356,0 +redsdioder,356,0 +redsdiode,356,0 +rsrepeater,356,0 +rsrepeat,356,0 +rsdelayer,356,0 +rsdelay,356,0 +rsdioder,356,0 +rsdiode,356,0 +repeater,356,0 +repeat,356,0 +delayer,356,0 +delay,356,0 +dioder,356,0 +diode,356,0 +cookie,357,0 +chart,358,0 +map0,358,0 +map1,358,1 +map2,358,2 +map3,358,3 +map4,358,4 +map5,358,5 +map6,358,6 +map7,358,7 +map8,358,8 +map9,358,9 +map10,358,10 +map11,358,11 +map12,358,12 +map13,358,13 +map14,358,14 +map15,358,15 +shears,359,0 +shear,359,0 +sheers,359,0 +sheer,359,0 +woolcutters,359,0 +woolcutter,359,0 +cutterswool,359,0 +cutterwool,359,0 +melonslice,360,0 +mslice,360,0 +slicemelon,360,0 +watermelonslice,360,0 +greenmelonslice,360,0 +melongreenslice,360,0 +pumpkinseeds,361,0 +pseeds,361,0 +seedsp,361,0 +seedspumpkin,361,0 +pumpseeds,361,0 +seedspump,361,0 +melonseeds,362,0 +mseeds,362,0 +watermelonseeds,362,0 +greenmelonseeds,362,0 +gmelonseeds,362,0 +seedsmelon,362,0 +seedswatermelon,362,0 +rawbeef,363,0 +rawsteak,363,0 +uncookedbeef,363,0 +uncookedsteak,363,0 +cowmeat,363,0 +plainbeef,363,0 +beef,364,0 +steak,364,0 +cookedbeef,364,0 +grilledbeef,364,0 +cookedsteak,364,0 +grilledsteak,364,0 +cookedcowmeat,364,0 +rawchicken,365,0 +uncookedchicken,365,0 +plainchicken,365,0 +chickenplain,365,0 +chickenuncooked,365,0 +chickenraw,365,0 +cookedchicken,366,0 +grilledchicken,366,0 +toastedchicken,366,0 +gchicken,366,0 +bbqchicken,366,0 +friedchicken,366,0 +cchicken,366,0 +rottenflesh,367,0 +zombieflesh,367,0 +rottenmeat,367,0 +zombiemeat,367,0 +badflesh,367,0 +poisonflesh,367,0 +zombieremains,367,0 +enderpearl,368,0 +endpearl,368,0 +pearl,368,0 +epearl,368,0 +bluepearl,368,0 +endergem,368,0 +blazerod,369,0 +goldenrod,369,0 +goldrod,369,0 +blazestick,369,0 +goldstick,369,0 +brod,369,0 +grod,369,0 +bstick,369,0 +gstick,369,0 +ghasttear,370,0 +ghastdrop,370,0 +ghosttear,370,0 +ghostdrop,370,0 +gtear,370,0 +gdrop,370,0 +tear,370,0 +goldnugget,371,0 +gnugget,371,0 +goldpebble,371,0 +gpebble,371,0 +goldball,371,0 +gball,371,0 +netherstalk,372,0 +deathstalk,372,0 +hellstalk,372,0 +nstalk,372,0 +dstalk,372,0 +hstalk,372,0 +netherwarts,372,0 +netherwart,372,0 +netherplant,372,0 +nethercrop,372,0 +hellwarts,372,0 +hellwart,372,0 +hellplant,372,0 +hellcrop,372,0 +deathwarts,372,0 +deathwart,372,0 +deathplant,372,0 +deathcrop,372,0 +nwarts,372,0 +nwart,372,0 +ncrop,372,0 +nplant,372,0 +hwarts,372,0 +hwart,372,0 +hplant,372,0 +hcrop,372,0 +dwarts,372,0 +dwart,372,0 +dplant,372,0 +dcrop,372,0 +potion,373,0 +mixture,373,0 +potions,373,0 +waterbottle,373,0 +fullbottle,373,0 +watervase,373,0 +fullvase,373,0 +clearpotion,373,6 +clearpot,373,6 +clearextendedpotion,373,7 +clearexpotion,373,7 +clear2potion,373,7 +clearextendedpot,373,7 +clearexpot,373,7 +clear2pot,373,7 +diffusepotion,373,11 +diffusepot,373,11 +artlesspotion,373,13 +artlesspot,373,13 +thinpotion,373,14 +thinpot,373,14 +thinextendedpotion,373,15 +thinexpotion,373,15 +thin2potion,373,15 +thinextendedpot,373,15 +thinexpot,373,15 +thin2pot,373,15 +awkwardpotion,373,16 +awkwardpot,373,16 +bunglingpotion,373,22 +bunglingpot,373,22 +bunglingextendedpotion,373,23 +bunglingexpotion,373,23 +bungling2potion,373,23 +bunglingextendedpot,373,23 +bunglingexpot,373,23 +bungling2pot,373,23 +smoothpotion,373,27 +smoothpot,373,27 +suavepotion,373,29 +suavepot,373,29 +debonairpotion,373,30 +debonairpot,373,30 +debonairextendedpotion,373,31 +debonairexpotion,373,31 +debonair2potion,373,31 +debonairextendedpot,373,31 +debonairexpot,373,31 +debonair2pot,373,31 +thickpotion,373,32 +thickpot,373,32 +charmingpotion,373,38 +charmingpot,373,38 +charmingextendedpotion,373,39 +charmingexpotion,373,39 +charming2potion,373,39 +charmingextendedpot,373,39 +charmingexpot,373,39 +charming2pot,373,39 +refinedpotion,373,43 +refinedpot,373,43 +cordialpotion,373,45 +cordialpot,373,45 +sparklingpotion,373,46 +sparklingpot,373,46 +sparklingextendedpotion,373,47 +sparklingexpotion,373,47 +sparkling2potion,373,47 +sparklingextendedpot,373,47 +sparklingexpot,373,47 +sparkling2pot,373,47 +potentpotion,373,48 +potentpot,373,48 +rankpotion,373,54 +rankpot,373,54 +rankextendedpotion,373,55 +rankexpotion,373,55 +rank2potion,373,55 +rankextendedpot,373,55 +rankexpot,373,55 +rank2pot,373,55 +acridpotion,373,59 +acridpot,373,59 +grosspotion,373,61 +grosspot,373,61 +stinkypotion,373,62 +stinkypot,373,62 +stinkyextendedpotion,373,63 +stinkyexpotion,373,63 +stinky2potion,373,63 +stinkyextendedpot,373,63 +stinkyexpot,373,63 +stinky2pot,373,63 +mundaneextendedpotion,373,64 +mundaneexpotion,373,64 +mundane2potion,373,64 +mundaneextendedpot,373,64 +mundaneexpot,373,64 +mundane2pot,373,64 +mundanepotion,373,8192 +mundanepot,373,8192 +regenerationpotion,373,8193 +regeneratepotion,373,8193 +regenpotion,373,8193 +regenerationpot,373,8193 +regeneratepot,373,8193 +regenpot,373,8193 +rpot,373,8193 +swiftnesspotion,373,8194 +swiftpotion,373,8194 +speedpotion,373,8194 +swiftnesspot,373,8194 +swiftpot,373,8194 +speedpot,373,8194 +swpot,373,8194 +fireresistancepotion,373,8195 +fireresistpotion,373,8195 +firerespotion,373,8195 +fireresistancepot,373,8195 +fireresistpot,373,8195 +firerespot,373,8195 +fpot,373,8195 +poisonpotion,373,8196 +acidpotion,373,8196 +poisonpot,373,8196 +acidpot,373,8196 +ppot,373,8196 +healingpotion,373,8197 +healpotion,373,8197 +lifepotion,373,8197 +healingpot,373,8197 +healpot,373,8197 +lifepot,373,8197 +hpot,373,8197 +nightvisionpotion,373,8198 +nvisionpotion,373,8198 +nightvpotion,373,8198 +darkvisionpotion,373,8198 +dvisionpotion,373,8198 +darkvpotion,373,8198 +nightvisionpot,373,8198 +nvisionpot,373,8198 +nightvpot,373,8198 +darkvisionpot,373,8198 +dvisionpot,373,8198 +darkvpot,373,8198 +npot,373,8198 +weaknesspotion,373,8200 +weakpotion,373,8200 +weaknesspot,373,8200 +weakpot,373,8200 +wpot,373,8200 +strengthpotion,373,8201 +strongpotion,373,8201 +strpotion,373,8201 +strengthpot,373,8201 +strongpot,373,8201 +strpot,373,8201 +stpot,373,8201 +slownesspotion,373,8202 +slowpotion,373,8202 +slownesspot,373,8202 +slowpot,373,8202 +slpot,373,8202 +harmingpotion,373,8204 +damagepotion,373,8204 +dmgpotion,373,8204 +harmingpot,373,8204 +damagepot,373,8204 +dmgpot,373,8204 +dpot,373,8204 +waterbreathingpotion,373,8205 +waterbreathpotion,373,8205 +breathingpotion,373,8205 +breathpotion,373,8205 +waterbreathingpot,373,8205 +waterbreathpot,373,8205 +breathingpot,373,8205 +breathpot,373,8205 +wbpot,373,8205 +invisibilitypotion,373,8206 +invisiblepotion,373,8206 +invpotion,373,8206 +invisibilitypot,373,8206 +invisiblepot,373,8206 +invpot,373,8206 +ipot,373,8206 +regenerationleveliipotion,373,8225 +regenerateleveliipotion,373,8225 +regenleveliipotion,373,8225 +regenerationlevel2potion,373,8225 +regeneratelevel2potion,373,8225 +regenlevel2potion,373,8225 +regenerationiipotion,373,8225 +regenerateiipotion,373,8225 +regeniipotion,373,8225 +regenerationleveliipot,373,8225 +regenerateleveliipot,373,8225 +regenleveliipot,373,8225 +regenerationlevel2pot,373,8225 +regeneratelevel2pot,373,8225 +regenlevel2pot,373,8225 +regenerationiipot,373,8225 +regenerateiipot,373,8225 +regeniipot,373,8225 +r2pot,373,8225 +swiftnessleveliipotion,373,8226 +swiftleveliipotion,373,8226 +speedleveliipotion,373,8226 +swiftnesslevel2potion,373,8226 +swiftlevel2potion,373,8226 +speedlevel2potion,373,8226 +swiftnessiipotion,373,8226 +swiftiipotion,373,8226 +speediipotion,373,8226 +swiftnessleveliipot,373,8226 +swiftleveliipot,373,8226 +speedleveliipot,373,8226 +swiftnesslevel2pot,373,8226 +swiftlevel2pot,373,8226 +speedlevel2pot,373,8226 +swiftnessiipot,373,8226 +swiftiipot,373,8226 +speediipot,373,8226 +sw2pot,373,8226 +poisonleveliipotion,373,8228 +acidleveliipotion,373,8228 +poisonlevel2potion,373,8228 +acidlevel2potion,373,8228 +poisoniipotion,373,8228 +acidiipotion,373,8228 +poisonleveliipot,373,8228 +acidleveliipot,373,8228 +poisonlevel2pot,373,8228 +acidlevel2pot,373,8228 +poisoniipot,373,8228 +acidiipot,373,8228 +p2pot,373,8228 +healingleveliipotion,373,8229 +healleveliipotion,373,8229 +healinglevel2potion,373,8229 +heallevel2potion,373,8229 +healingiipotion,373,8229 +healiipotion,373,8229 +healingleveliipot,373,8229 +healleveliipot,373,8229 +healinglevel2pot,373,8229 +heallevel2pot,373,8229 +healingiipot,373,8229 +healiipot,373,8229 +h2pot,373,8229 +strengthleveliipotion,373,8233 +strongleveliipotion,373,8233 +strleveliipotion,373,8233 +strengthlevel2potion,373,8233 +stronglevel2potion,373,8233 +strlevel2potion,373,8233 +strengthiipotion,373,8233 +strongiipotion,373,8233 +striipotion,373,8233 +strengthleveliipot,373,8233 +strongleveliipot,373,8233 +strleveliipot,373,8233 +strengthlevel2pot,373,8233 +stronglevel2pot,373,8233 +strlevel2pot,373,8233 +strengthiipot,373,8233 +strongiipot,373,8233 +striipot,373,8233 +st2pot,373,8233 +harmingleveliipotion,373,8236 +damageleveliipotion,373,8236 +dmgleveliipotion,373,8236 +harminglevel2potion,373,8236 +damagelevel2potion,373,8236 +dmglevel2potion,373,8236 +harmingiipotion,373,8236 +damageiipotion,373,8236 +dmgiipotion,373,8236 +harmingleveliipot,373,8236 +damageleveliipot,373,8236 +dmgleveliipot,373,8236 +harminglevel2pot,373,8236 +damagelevel2pot,373,8236 +dmglevel2pot,373,8236 +harmingiipot,373,8236 +damageiipot,373,8236 +dmgiipot,373,8236 +d2pot,373,8236 +regenerationextendedpotion,373,8257 +regenerateextendedpotion,373,8257 +regenextendepotion,373,8257 +regenerationexpotion,373,8257 +regenerateexpotion,373,8257 +regenexpotion,373,8257 +regenerationextendedpot,373,8257 +regenerateextendedpot,373,8257 +regenextendepot,373,8257 +regenerationexpot,373,8257 +regenerateexpot,373,8257 +regenexpot,373,8257 +repot,373,8257 +swiftnessextendedpotion,373,8258 +swiftextendedpotion,373,8258 +speedextendedpotion,373,8258 +swiftnessexpotion,373,8258 +swiftexpotion,373,8258 +speedexpotion,373,8258 +swiftnessextendedpot,373,8258 +swiftextendedpot,373,8258 +speedextendedpot,373,8258 +swiftnessexpot,373,8258 +swiftexpot,373,8258 +speedexpot,373,8258 +swepot,373,8258 +fireresistanceextendedpotion,373,8259 +fireresistextendedpotion,373,8259 +fireresextendedpotion,373,8259 +fireresistanceexpotion,373,8259 +fireresistexpotion,373,8259 +fireresexpotion,373,8259 +fireresistanceextendedpot,373,8259 +fireresistextendedpot,373,8259 +fireresextendedpot,373,8259 +fireresistanceexpot,373,8259 +fireresistexpot,373,8259 +fireresexpot,373,8259 +fepot,373,8259 +poisonextendedpotion,373,8260 +acidextendedpotion,373,8260 +poisonexpotion,373,8260 +acidexpotion,373,8260 +poisonextendedpot,373,8260 +acidextendedpot,373,8260 +poisonexpot,373,8260 +acidexpot,373,8260 +pepot,373,8260 +nightvisionextendedpotion,373,8262 +nvisionextendedpotion,373,8262 +nightvextendedpotion,373,8262 +darkvisionextendedpotion,373,8262 +dvisionextendedpotion,373,8262 +darkvextendedpotion,373,8262 +nightvisionexpotion,373,8262 +nvisionexpotion,373,8262 +nightvexpotion,373,8262 +darkvisionexpotion,373,8262 +dvisionexpotion,373,8262 +darkvexpotion,373,8262 +nightvisionextendedpot,373,8262 +nvisionextendedpot,373,8262 +nightvextendedpot,373,8262 +darkvisionextendedpot,373,8262 +dvisionextendedpot,373,8262 +darkvextendedpot,373,8262 +nightvisionexpot,373,8262 +nvisionexpot,373,8262 +nightvexpot,373,8262 +darkvisionexpot,373,8262 +dvisionexpot,373,8262 +darkvexpot,373,8262 +nepot,373,8262 +weaknessextendedpotion,373,8264 +weakextendedpotion,373,8264 +weaknessexpotion,373,8264 +weakexpotion,373,8264 +weaknessextendedpot,373,8264 +weakextendedpot,373,8264 +weaknessexpot,373,8264 +weakexpot,373,8264 +wepot,373,8264 +strengthextendedpotion,373,8265 +strongextendedpotion,373,8265 +strextendedpotion,373,8265 +strengthexpotion,373,8265 +strongexpotion,373,8265 +strexpotion,373,8265 +strengthextendedpot,373,8265 +strongextendedpot,373,8265 +strextendedpot,373,8265 +strengthexpot,373,8265 +strongexpot,373,8265 +strexpot,373,8265 +stepot,373,8265 +slownessextendedpotion,373,8266 +slowextenedpotion,373,8266 +slownessexpotion,373,8266 +slowexpotion,373,8266 +slownessextendedpot,373,8266 +slowextenedpot,373,8266 +slownessexpot,373,8266 +slowexpot,373,8266 +slepot,373,8266 +waterbreathingextendedpotion,373,8269 +waterbreathextendedpotion,373,8269 +breathingextendedpotion,373,8269 +breathextendedpotion,373,8269 +waterbreathingextendedpot,373,8269 +waterbreathextendedpot,373,8269 +breathingextendedpot,373,8269 +breathextendedpot,373,8269 +waterbreathingexpotion,373,8269 +waterbreathexpotion,373,8269 +breathingexpotion,373,8269 +breathexpotion,373,8269 +waterbreathingexpot,373,8269 +waterbreathexpot,373,8269 +breathingexpot,373,8269 +breathexpot,373,8269 +wbepot,373,8269 +invisibilityextendedpotion,373,8270 +invisibleextendedpotion,373,8270 +invextendedpotion,373,8270 +invisibilityexpotion,373,8270 +invisibleexpotion,373,8270 +invexpotion,373,8270 +invisibilityextendedpot,373,8270 +invisibleextendedpot,373,8270 +invextendedpot,373,8270 +invisibilityexpot,373,8270 +invisibleexpot,373,8270 +invexpot,373,8270 +iepot,373,8270 +regenerationdualbitpotion,373,8289 +regeneratedualbitpotion,373,8289 +regendualbitpotion,373,8289 +regenerationdbpotion,373,8289 +regeneratedbpotion,373,8289 +regendbpotion,373,8289 +regenerationdualbitpot,373,8289 +regeneratedualbitpot,373,8289 +regendualbitpot,373,8289 +regenerationdbpot,373,8289 +regeneratedbpot,373,8289 +regendbpot,373,8289 +rdbpot,373,8289 +swiftnessdualbitpotion,373,8290 +swiftdualbitpotion,373,8290 +speeddualbitpotion,373,8290 +swiftnessdualbitpot,373,8290 +swiftdualbitpot,373,8290 +speeddualbitpot,373,8290 +swiftnessdbpotion,373,8290 +swiftdbpotion,373,8290 +speeddbpotion,373,8290 +swiftnessdbpot,373,8290 +swiftdbpot,373,8290 +speeddbpot,373,8290 +swdbpot,373,8290 +poisondualbitpotion,373,8292 +aciddualbitpotion,373,8292 +poisondualbitpot,373,8292 +aciddualbitpot,373,8292 +poisondbpotion,373,8292 +aciddbpotion,373,8292 +poisondbpot,373,8292 +aciddbpot,373,8292 +pdbpot,373,8292 +strengthdualbitpotion,373,8297 +strongdualbitpotion,373,8297 +strdualbitpotion,373,8297 +strengthdualbitpot,373,8297 +strongdualbitpot,373,8297 +strdualbitpot,373,8297 +strengthdbpotion,373,8297 +strongdbpotion,373,8297 +strdbpotion,373,8297 +strengthdbpot,373,8297 +strongdbpot,373,8297 +strdbpot,373,8297 +stdbpot,373,8297 +splashmundanepotion,373,16384 +splmundanepotion,373,16384 +splashregenerationpotion,373,16385 +splashregeneratepotion,373,16385 +splashregenpotion,373,16385 +splashregenerationpot,373,16385 +splashregeneratepot,373,16385 +splashregenpot,373,16385 +regenerationsplashpotion,373,16385 +regeneratesplashpotion,373,16385 +regensplashpotion,373,16385 +splregenerationpotion,373,16385 +splregeneratepotion,373,16385 +splregenpotion,373,16385 +splregenerationpot,373,16385 +splregeneratepot,373,16385 +splregenpot,373,16385 +sprpot,373,16385 +splashswiftnesspotion,373,16386 +splashswiftpotion,373,16386 +splashspeedpotion,373,16386 +splashswiftnesspot,373,16386 +splashswiftpot,373,16386 +splashspeedpot,373,16386 +splswiftnesspotion,373,16386 +splswiftpotion,373,16386 +splspeedpotion,373,16386 +splswiftnesspot,373,16386 +splswiftpot,373,16386 +splspeedpot,373,16386 +spswpot,373,16386 +splashfireresistancepotion,373,16387 +splashfireresistpotion,373,16387 +splashfirerespotion,373,16387 +splashfireresistancepot,373,16387 +splashfireresistpot,373,16387 +splashfirerespot,373,16387 +splfireresistancepotion,373,16387 +splfireresistpotion,373,16387 +splfirerespotion,373,16387 +splfireresistancepot,373,16387 +splfireresistpot,373,16387 +splfirerespot,373,16387 +spfpot,373,16387 +splashpoisonpotion,373,16388 +splashacidpotion,373,16388 +splashpoisonpot,373,16388 +splashacidpot,373,16388 +splpoisonpotion,373,16388 +splacidpotion,373,16388 +splpoisonpot,373,16388 +splacidpot,373,16388 +spppot,373,16388 +splashhealingpotion,373,16389 +splashhealpotion,373,16389 +splashlifepotion,373,16389 +splashhealingpot,373,16389 +splashhealpot,373,16389 +splashlifepot,373,16389 +splhealingpotion,373,16389 +splhealpotion,373,16389 +spllifepotion,373,16389 +splhealingpot,373,16389 +splhealpot,373,16389 +spllifepot,373,16389 +sphpot,373,16389 +splashclearpotion,373,16390 +splashclearpot,373,16390 +splclearpotion,373,16390 +splclearpot,373,16390 +splashnightvisionpotion,373,16390 +splashnvisionpotion,373,16390 +splashnightvpotion,373,16390 +splashdarkvisionpotion,373,16390 +splashdvisionpotion,373,16390 +splashdarkvpotion,373,16390 +splashnightvisionpot,373,16390 +splashnvisionpot,373,16390 +splashnightvpot,373,16390 +splashdarkvisionpot,373,16390 +splashdvisionpot,373,16390 +splashdarkvpot,373,16390 +splnightvisionpotion,373,16390 +splnvisionpotion,373,16390 +splnightvpotion,373,16390 +spldarkvisionpotion,373,16390 +spldvisionpotion,373,16390 +spldarkvpotion,373,16390 +splnightvisionpot,373,16390 +splnvisionpot,373,16390 +splnightvpot,373,16390 +spldarkvisionpot,373,16390 +spldvisionpot,373,16390 +spldarkvpot,373,16390 +spnpot,373,16390 +splashclearextendedpotion,373,16391 +splashclearexpotion,373,16391 +splashclear2potion,373,16391 +splashclearextendedpot,373,16391 +splashclearexpot,373,16391 +splashclear2pot,373,16391 +splclearextendedpotion,373,16391 +splclearexpotion,373,16391 +splclear2potion,373,16391 +splclearextendedpot,373,16391 +splclearexpot,373,16391 +splclear2pot,373,16391 +splashweaknesspotion,373,16392 +splashweakpotion,373,16392 +splashweaknesspot,373,16392 +splashweakpot,373,16392 +splweaknesspotion,373,16392 +splweakpotion,373,16392 +splweaknesspot,373,16392 +splweakpot,373,16392 +spwpot,373,16392 +splashstrengthpotion,373,16393 +splashstrongpotion,373,16393 +splashstrpotion,373,16393 +splashstrengthpot,373,16393 +splashstrongpot,373,16393 +splashstrpot,373,16393 +splstrengthpotion,373,16393 +splstrongpotion,373,16393 +splstrpotion,373,16393 +splstrengthpot,373,16393 +splstrongpot,373,16393 +splstrpot,373,16393 +spstpot,373,16393 +splashslownesspotion,373,16394 +splashslowpotion,373,16394 +splashslownesspot,373,16394 +splashslowpot,373,16394 +splslownesspotion,373,16394 +splslowpotion,373,16394 +splslownesspot,373,16394 +splslowpot,373,16394 +spslpot,373,16394 +splashdiffusepotion,373,16395 +splashdiffusepot,373,16395 +spldiffusepotion,373,16395 +spldiffusepot,373,16395 +splashharmingpotion,373,16396 +splashdamagepotion,373,16396 +splashdmgpotion,373,16396 +splashharmingpot,373,16396 +splashdamagepot,373,16396 +splashdmgpot,373,16396 +splharmingpotion,373,16396 +spldamagepotion,373,16396 +spldmgpotion,373,16396 +splharmingpot,373,16396 +spldamagepot,373,16396 +spldmgpot,373,16396 +spdpot,373,16396 +splashartlesspotion,373,16397 +splashartlesspot,373,16397 +splartlesspotion,373,16397 +splartlesspot,373,16397 +splashwaterbreathingpotion,373,16397 +splashwaterbreathpotion,373,16397 +splashbreathingpotion,373,16397 +splashbreathpotion,373,16397 +splashwaterbreathingpot,373,16397 +splashwaterbreathpot,373,16397 +splashbreathingpot,373,16397 +splashbreathpot,373,16397 +splwaterbreathingpotion,373,16397 +splwaterbreathpotion,373,16397 +splbreathingpotion,373,16397 +splbreathpotion,373,16397 +splwaterbreathingpot,373,16397 +splwaterbreathpot,373,16397 +splbreathingpot,373,16397 +splbreathpot,373,16397 +spwbpot,373,16397 +splashthinpotion,373,16398 +splashthinpot,373,16398 +splthinpotion,373,16398 +splthinpot,373,16398 +splashinvisibilitypotion,373,16398 +splashinvisiblepotion,373,16398 +splashinvpotion,373,16398 +splashinvisibilitypot,373,16398 +splashinvisiblepot,373,16398 +splashinvpot,373,16398 +splinvisibilitypotion,373,16398 +splinvisiblepotion,373,16398 +splinvpotion,373,16398 +splinvisibilitypot,373,16398 +splinvisiblepot,373,16398 +splinvpot,373,16398 +spipot,373,16398 +splashthinextendedpotion,373,16399 +splashthinexpotion,373,16399 +splashthin2potion,373,16399 +splashthinextendedpot,373,16399 +splashthinexpot,373,16399 +splashthin2pot,373,16399 +splthinextendedpotion,373,16399 +splthinexpotion,373,16399 +splthin2potion,373,16399 +splthinextendedpot,373,16399 +splthinexpot,373,16399 +splthin2pot,373,16399 +splashawkwardpotion,373,16400 +splashawkwardpot,373,16400 +splawkwardpotion,373,16400 +splawkwardpot,373,16400 +splashbunglingpotion,373,16406 +splashbunglingpot,373,16406 +splbunglingpotion,373,16406 +splbunglingpot,373,16406 +splashbunglingextendedpotion,373,16407 +splashbunglingexpotion,373,16407 +splashbungling2potion,373,16407 +splashbunglingextendedpot,373,16407 +splashbunglingexpot,373,16407 +splashbungling2pot,373,16407 +splbunglingextendedpotion,373,16407 +splbunglingexpotion,373,16407 +splbungling2potion,373,16407 +splbunglingextendedpot,373,16407 +splbunglingexpot,373,16407 +splbungling2pot,373,16407 +splashsmoothpotion,373,16411 +splashsmoothpot,373,16411 +splsmoothpotion,373,16411 +splsmoothpot,373,16411 +splashsuavepotion,373,16413 +splashsuavepot,373,16413 +splsuavepotion,373,16413 +splsuavepot,373,16413 +splashdebonairpotion,373,16414 +splashdebonairpot,373,16414 +spldebonairpotion,373,16414 +spldebonairpot,373,16414 +splashdebonairextendedpotion,373,16415 +splashdebonairexpotion,373,16415 +splashdebonair2potion,373,16415 +splashdebonairextendedpot,373,16415 +splashdebonairexpot,373,16415 +splashdebonair2pot,373,16415 +spldebonairextendedpotion,373,16415 +spldebonairexpotion,373,16415 +spldebonair2potion,373,16415 +spldebonairextendedpot,373,16415 +spldebonairexpot,373,16415 +spldebonair2pot,373,16415 +splashthickpotion,373,16416 +splashthickpot,373,16416 +splthickpotion,373,16416 +splthickpot,373,16416 +splashregenerationleveliipotion,373,16417 +splashregenerateleveliipotion,373,16417 +splashregenleveliipotion,373,16417 +splashregenerationlevel2potion,373,16417 +splashregeneratelevel2potion,373,16417 +splashregenlevel2potion,373,16417 +splashregenerationiipotion,373,16417 +splashregenerateiipotion,373,16417 +splashregeniipotion,373,16417 +splashregenerationleveliipot,373,16417 +splashregenerateleveliipot,373,16417 +splashregenleveliipot,373,16417 +splashregenerationlevel2pot,373,16417 +splashregeneratelevel2pot,373,16417 +splashregenlevel2pot,373,16417 +splashregenerationiipot,373,16417 +splashregenerateiipot,373,16417 +splashregeniipot,373,16417 +splregenerationleveliipotion,373,16417 +splregenerateleveliipotion,373,16417 +splregenleveliipotion,373,16417 +splregenerationlevel2potion,373,16417 +splregeneratelevel2potion,373,16417 +splregenlevel2potion,373,16417 +splregenerationiipotion,373,16417 +splregenerateiipotion,373,16417 +splregeniipotion,373,16417 +splregenerationleveliipot,373,16417 +splregenerateleveliipot,373,16417 +splregenleveliipot,373,16417 +splregenerationlevel2pot,373,16417 +splregeneratelevel2pot,373,16417 +splregenlevel2pot,373,16417 +splregenerationiipot,373,16417 +splregenerateiipot,373,16417 +splregeniipot,373,16417 +spr2pot,373,16417 +splashswiftnessleveliipotion,373,16418 +splashswiftleveliipotion,373,16418 +splashspeedleveliipotion,373,16418 +splashswiftnesslevel2potion,373,16418 +splashswiftlevel2potion,373,16418 +splashspeedlevel2potion,373,16418 +splashswiftnessiipotion,373,16418 +splashswiftiipotion,373,16418 +splashspeediipotion,373,16418 +splashswiftnessleveliipot,373,16418 +splashswiftleveliipot,373,16418 +splashspeedleveliipot,373,16418 +splashswiftnesslevel2pot,373,16418 +splashswiftlevel2pot,373,16418 +splashspeedlevel2pot,373,16418 +splashswiftnessiipot,373,16418 +splashswiftiipot,373,16418 +splashspeediipot,373,16418 +splswiftnessleveliipotion,373,16418 +splswiftleveliipotion,373,16418 +splspeedleveliipotion,373,16418 +splswiftnesslevel2potion,373,16418 +splswiftlevel2potion,373,16418 +splspeedlevel2potion,373,16418 +splswiftnessiipotion,373,16418 +splswiftiipotion,373,16418 +splspeediipotion,373,16418 +splswiftnessleveliipot,373,16418 +splswiftleveliipot,373,16418 +splspeedleveliipot,373,16418 +splswiftnesslevel2pot,373,16418 +splswiftlevel2pot,373,16418 +splspeedlevel2pot,373,16418 +splswiftnessiipot,373,16418 +splswiftiipot,373,16418 +splspeediipot,373,16418 +spsw2pot,373,16418 +splashpoisonleveliipotion,373,16420 +splashacidleveliipotion,373,16420 +splashpoisonlevel2potion,373,16420 +splashacidlevel2potion,373,16420 +splashpoisoniipotion,373,16420 +splashacidiipotion,373,16420 +splashpoisonleveliipot,373,16420 +splashacidleveliipot,373,16420 +splashpoisonlevel2pot,373,16420 +splashacidlevel2pot,373,16420 +splashpoisoniipot,373,16420 +splashacidiipot,373,16420 +splpoisonleveliipotion,373,16420 +splacidleveliipotion,373,16420 +splpoisonlevel2potion,373,16420 +splcidlevel2potion,373,16420 +splpoisoniipotion,373,16420 +splacidiipotion,373,16420 +splpoisonleveliipot,373,16420 +splacidleveliipot,373,16420 +splpoisonlevel2pot,373,16420 +splacidlevel2pot,373,16420 +splpoisoniipot,373,16420 +splacidiipot,373,16420 +spp2pot,373,16420 +splashhealingleveliipotion,373,16421 +splashhealleveliipotion,373,16421 +splashhealinglevel2potion,373,16421 +splashheallevel2potion,373,16421 +splashhealingiipotion,373,16421 +splashhealiipotion,373,16421 +splashhealingleveliipot,373,16421 +splashhealleveliipot,373,16421 +splashhealinglevel2pot,373,16421 +splashheallevel2pot,373,16421 +splashhealingiipot,373,16421 +splashhealiipot,373,16421 +splhealingleveliipotion,373,16421 +splhealleveliipotion,373,16421 +splhealinglevel2potion,373,16421 +splheallevel2potion,373,16421 +splhealingiipotion,373,16421 +splhealiipotion,373,16421 +splhealingleveliipot,373,16421 +splhealleveliipot,373,16421 +splhealinglevel2pot,373,16421 +splheallevel2pot,373,16421 +splhealingiipot,373,16421 +splhealiipot,373,16421 +sph2pot,373,16421 +splashcharmingpotion,373,16422 +splashcharmingpot,373,16422 +splcharmingpotion,373,16422 +splcharmingpot,373,16422 +splashcharmingextendedpotion,373,16423 +splashcharmingexpotion,373,16423 +splashcharming2potion,373,16423 +splashcharmingextendedpot,373,16423 +splashcharmingexpot,373,16423 +splashcharming2pot,373,16423 +splcharmingextendedpotion,373,16423 +splcharmingexpotion,373,16423 +splcharming2potion,373,16423 +splcharmingextendedpot,373,16423 +splcharmingexpot,373,16423 +splcharming2pot,373,16423 +splashstrengthleveliipotion,373,16425 +splashstrongleveliipotion,373,16425 +splashstrleveliipotion,373,16425 +splashstrengthlevel2potion,373,16425 +splashstronglevel2potion,373,16425 +splashstrlevel2potion,373,16425 +splashstrengthiipotion,373,16425 +splashstrongiipotion,373,16425 +splashstriipotion,373,16425 +splashstrengthleveliipot,373,16425 +splashstrongleveliipot,373,16425 +splashstrleveliipot,373,16425 +splashstrengthlevel2pot,373,16425 +splashstronglevel2pot,373,16425 +splashstrlevel2pot,373,16425 +splashstrengthiipot,373,16425 +splashstrongiipot,373,16425 +splashstriipot,373,16425 +splstrengthleveliipotion,373,16425 +splstrongleveliipotion,373,16425 +splstrleveliipotion,373,16425 +splstrengthlevel2potion,373,16425 +splstronglevel2potion,373,16425 +splstrlevel2potion,373,16425 +splstrengthiipotion,373,16425 +splstrongiipotion,373,16425 +splstriipotion,373,16425 +splstrengthleveliipot,373,16425 +splstrongleveliipot,373,16425 +splstrleveliipot,373,16425 +splstrengthlevel2pot,373,16425 +splstronglevel2pot,373,16425 +splstrlevel2pot,373,16425 +splstrengthiipot,373,16425 +splstrongiipot,373,16425 +splstriipot,373,16425 +spst2pot,373,16425 +splashrefinedpotion,373,16427 +splashrefinedpot,373,16427 +splrefinedpotion,373,16427 +splrefinedpot,373,16427 +splashharmingleveliipotion,373,16428 +splashdamageleveliipotion,373,16428 +splashdmgleveliipotion,373,16428 +splashharminglevel2potion,373,16428 +splashdamagelevel2potion,373,16428 +splashdmglevel2potion,373,16428 +splashharmingiipotion,373,16428 +splashdamageiipotion,373,16428 +splashdmgiipotion,373,16428 +splashharmingleveliipot,373,16428 +splashdamageleveliipot,373,16428 +splashdmgleveliipot,373,16428 +splashharminglevel2pot,373,16428 +splashdamagelevel2pot,373,16428 +splashdmglevel2pot,373,16428 +splashharmingiipot,373,16428 +splashdamageiipot,373,16428 +splashdmgiipot,373,16428 +splharmingleveliipotion,373,16428 +spldamageleveliipotion,373,16428 +spldmgleveliipotion,373,16428 +splharminglevel2potion,373,16428 +spldamagelevel2potion,373,16428 +spldmglevel2potion,373,16428 +splharmingiipotion,373,16428 +spldamageiipotion,373,16428 +spldmgiipotion,373,16428 +splharmingleveliipot,373,16428 +spldamageleveliipot,373,16428 +spldmgleveliipot,373,16428 +splharminglevel2pot,373,16428 +spldamagelevel2pot,373,16428 +spldmglevel2pot,373,16428 +splharmingiipot,373,16428 +spldamageiipot,373,16428 +spldmgiipot,373,16428 +spd2pot,373,16428 +splashcordialpotion,373,16429 +splashcordialpot,373,16429 +splcordialpotion,373,16429 +splcordialpot,373,16429 +splashsparklingpotion,373,16430 +splashsparklingpot,373,16430 +splsparklingpotion,373,16430 +splsparklingpot,373,16430 +splashsparklingextendedpotion,373,16431 +splashsparklingexpotion,373,16431 +splashsparkling2potion,373,16431 +splashsparklingextendedpot,373,16431 +splashsparklingexpot,373,16431 +splashsparkling2pot,373,16431 +splsparklingextendedpotion,373,16431 +splsparklingexpotion,373,16431 +splsparkling2potion,373,16431 +splsparklingextendedpot,373,16431 +splsparklingexpot,373,16431 +splsparkling2pot,373,16431 +splashpotentpotion,373,16432 +splashpotentpot,373,16432 +splpotentpotion,373,16432 +splpotentpot,373,16432 +splashrankpotion,373,16438 +splashrankpot,373,16438 +splrankpotion,373,16438 +splrankpot,373,16438 +splashrankextendedpotion,373,16439 +splashrankexpotion,373,16439 +splashrank2potion,373,16439 +splashrankextendedpot,373,16439 +splashrankexpot,373,16439 +splashrank2pot,373,16439 +splrankextendedpotion,373,16439 +splrankexpotion,373,16439 +splrank2potion,373,16439 +splrankextendedpot,373,16439 +splrankexpot,373,16439 +splrank2pot,373,16439 +splashacridpotion,373,16443 +splashacridpot,373,16443 +splacridpotion,373,16443 +splacridpot,373,16443 +splashgrosspotion,373,16445 +splashgrosspot,373,16445 +splgrosspotion,373,16445 +splgrosspot,373,16445 +splashstinkypotion,373,16446 +splashstinkypot,373,16446 +splstinkypotion,373,16446 +splstinkypot,373,16446 +splashstinkyextendedpotion,373,16447 +splashstinkyexpotion,373,16447 +splashstinky2potion,373,16447 +splashstinkyextendedpot,373,16447 +splashstinkyexpot,373,16447 +splashstinky2pot,373,16447 +splstinkyextendedpotion,373,16447 +splstinkyexpotion,373,16447 +splstinky2potion,373,16447 +splstinkyextendedpot,373,16447 +splstinkyexpot,373,16447 +splstinky2pot,373,16447 +splashmundaneextendedpotion,373,16448 +splashmundaneexpotion,373,16448 +splashmundane2potion,373,16448 +splashmundaneextendedpot,373,16448 +splashmundaneexpot,373,16448 +splashmundane2pot,373,16448 +splmundaneextendedpotion,373,16448 +splmundaneexpotion,373,16448 +splmundane2potion,373,16448 +splmundaneextendedpot,373,16448 +splmundaneexpot,373,16448 +splmundane2pot,373,16448 +splashregenerationextendedpotion,373,16449 +splashregenerateextendedpotion,373,16449 +splashregenextendepotion,373,16449 +splashregenerationexpotion,373,16449 +splashregenerateexpotion,373,16449 +splashregenexpotion,373,16449 +splashregenerationextendedpot,373,16449 +splashregenerateextendedpot,373,16449 +splashregenextendepot,373,16449 +splashregenerationexpot,373,16449 +splashregenerateexpot,373,16449 +splashregenexpot,373,16449 +splregenerationextendedpotion,373,16449 +splregenerateextendedpotion,373,16449 +splregenextendepotion,373,16449 +splregenerationexpotion,373,16449 +splregenerateexpotion,373,16449 +splregenexpotion,373,16449 +splregenerationextendedpot,373,16449 +splregenerateextendedpot,373,16449 +splregenextendepot,373,16449 +splregenerationexpot,373,16449 +splregenerateexpot,373,16449 +splregenexpot,373,16449 +sprepot,373,16449 +splashswiftnessextendedpotion,373,16450 +splashswiftextendedpotion,373,16450 +splashspeedextendedpotion,373,16450 +splashswiftnessexpotion,373,16450 +splashswiftexpotion,373,16450 +splashspeedexpotion,373,16450 +splashswiftnessextendedpot,373,16450 +splashswiftextendedpot,373,16450 +splashspeedextendedpot,373,16450 +splashswiftnessexpot,373,16450 +splashswiftexpot,373,16450 +splashspeedexpot,373,16450 +splswiftnessextendedpotion,373,16450 +splswiftextendedpotion,373,16450 +splspeedextendedpotion,373,16450 +splswiftnessexpotion,373,16450 +splswiftexpotion,373,16450 +splspeedexpotion,373,16450 +splswiftnessextendedpot,373,16450 +splswiftextendedpot,373,16450 +splspeedextendedpot,373,16450 +splswiftnessexpot,373,16450 +splswiftexpot,373,16450 +splspeedexpot,373,16450 +spswepot,373,16450 +splashfireresistanceextendedpotion,373,16451 +splashfireresistextendedpotion,373,16451 +splashfireresextendedpotion,373,16451 +splashfireresistanceexpotion,373,16451 +splashfireresistexpotion,373,16451 +splashfireresexpotion,373,16451 +splashfireresistanceextendedpot,373,16451 +splashfireresistextendedpot,373,16451 +splashfireresextendedpot,373,16451 +splashfireresistanceexpot,373,16451 +splashfireresistexpot,373,16451 +splashfireresexpot,373,16451 +splfireresistanceextendedpotion,373,16451 +splfireresistextendedpotion,373,16451 +splfireresextendedpotion,373,16451 +splfireresistanceexpotion,373,16451 +splfireresistexpotion,373,16451 +splfireresexpotion,373,16451 +splfireresistanceextendedpot,373,16451 +splfireresistextendedpot,373,16451 +splfireresextendedpot,373,16451 +splfireresistanceexpot,373,16451 +splfireresistexpot,373,16451 +splfireresexpot,373,16451 +spfepot,373,16451 +splashpoisonextendedpotion,373,16452 +splashacidextendedpotion,373,16452 +splashpoisonexpotion,373,16452 +splashacidexpotion,373,16452 +splashpoisonextendedpot,373,16452 +splashacidextendedpot,373,16452 +splashpoisonexpot,373,16452 +splashacidexpot,373,16452 +splpoisonextendedpotion,373,16452 +splacidextendedpotion,373,16452 +splpoisonexpotion,373,16452 +splacidexpotion,373,16452 +splpoisonextendedpot,373,16452 +splacidextendedpot,373,16452 +splpoisonexpot,373,16452 +splacidexpot,373,16452 +sppepot,373,16452 +splashnightvisionextendedpotion,373,16454 +splashnvisionextendedpotion,373,16454 +splashnightvextendedpotion,373,16454 +splashdarkvisionextendedpotion,373,16454 +splashdvisionextendedpotion,373,16454 +splashdarkvextendedpotion,373,16454 +splashnightvisionextendedpot,373,16454 +splashnvisionextendedpot,373,16454 +splashnightvextendedpot,373,16454 +splashdarkvisionextendedpot,373,16454 +splashdvisionextendedpot,373,16454 +splashdarkvextendedpot,373,16454 +splashnightvisionexpotion,373,16454 +splashnvisionexpotion,373,16454 +splashnightvexpotion,373,16454 +splashdarkvisionexpotion,373,16454 +splashdvisionexpotion,373,16454 +splashdarkvexpotion,373,16454 +splashnightvisionexpot,373,16454 +splashnvisionexpot,373,16454 +splashnightvexpot,373,16454 +splashdarkvisionexpot,373,16454 +splashdvisionexpot,373,16454 +splashdarkvexpot,373,16454 +splnightvisionextendedpotion,373,16454 +splnvisionextendedpotion,373,16454 +splnightvextendedpotion,373,16454 +spldarkvisionextendedpotion,373,16454 +spldvisionextendedpotion,373,16454 +spldarkvextendedpotion,373,16454 +splnightvisionextendedpot,373,16454 +splnvisionextendedpot,373,16454 +splnightvextendedpot,373,16454 +spldarkvisionextendedpot,373,16454 +spldvisionextendedpot,373,16454 +spldarkvextendedpot,373,16454 +splnightvisionexpotion,373,16454 +splnvisionexpotion,373,16454 +splnightvexpotion,373,16454 +spldarkvisionexpotion,373,16454 +spldvisionexpotion,373,16454 +spldarkvexpotion,373,16454 +splnightvisionexpot,373,16454 +splnvisionexpot,373,16454 +splnightvexpot,373,16454 +spldarkvisionexpot,373,16454 +spldvisionexpot,373,16454 +spldarkvexpot,373,16454 +spnepot,373,16454 +splashweaknessextendedpotion,373,16456 +splashweakextendedpotion,373,16456 +splashweaknessexpotion,373,16456 +splashweakexpotion,373,16456 +splashweaknessextendedpot,373,16456 +splashweakextendedpot,373,16456 +splashweaknessexpot,373,16456 +splashweakexpot,373,16456 +splweaknessextendedpotion,373,16456 +sphweakextendedpotion,373,16456 +splweaknessexpotion,373,16456 +splweakexpotion,373,16456 +splweaknessextendedpot,373,16456 +splweakextendedpot,373,16456 +splweaknessexpot,373,16456 +splweakexpot,373,16456 +spwepot,373,16456 +splashstrengthextendedpotion,373,16457 +splashstrongextendedpotion,373,16457 +splashstrextendedpotion,373,16457 +splashstrengthexpotion,373,16457 +splashstrongexpotion,373,16457 +splashstrexpotion,373,16457 +splashstrengthextendedpot,373,16457 +splashstrongextendedpot,373,16457 +splashstrextendedpot,373,16457 +splashstrengthexpot,373,16457 +splashstrongexpot,373,16457 +splashstrexpot,373,16457 +splstrengthextendedpotion,373,16457 +splstrongextendedpotion,373,16457 +splstrextendedpotion,373,16457 +splstrengthexpotion,373,16457 +splstrongexpotion,373,16457 +splstrexpotion,373,16457 +splstrengthextendedpot,373,16457 +splstrongextendedpot,373,16457 +splstrextendedpot,373,16457 +splstrengthexpot,373,16457 +splstrongexpot,373,16457 +splstrexpot,373,16457 +spstepot,373,16457 +splashslownessextendedpotion,373,16458 +splashslowextenedpotion,373,16458 +splashslownessexpotion,373,16458 +splashslowexpotion,373,16458 +splashslownessextendedpot,373,16458 +splashslowextenedpot,373,16458 +splashslownessexpot,373,16458 +splashslowexpot,373,16458 +splslownessextendedpotion,373,16458 +splslowextenedpotion,373,16458 +splslownessexpotion,373,16458 +splslowexpotion,373,16458 +splslownessextendedpot,373,16458 +splslowextenedpot,373,16458 +splslownessexpot,373,16458 +splslowexpot,373,16458 +spslepot,373,16458 +splashwaterbreathingextendedpotion,373,16461 +splashwaterbreathextendedpotion,373,16461 +splashbreathingextendedpotion,373,16461 +splashbreathextendedpotion,373,16461 +splashwaterbreathingextendedpot,373,16461 +splashwaterbreathextendedpot,373,16461 +splashbreathingextendedpot,373,16461 +splashbreathextendedpot,373,16461 +splwaterbreathingextendedpotion,373,16461 +splwaterbreathextendedpotion,373,16461 +splbreathingextendedpotion,373,16461 +splbreathextendedpotion,373,16461 +splwaterbreathingextendedpot,373,16461 +splwaterbreathextendedpot,373,16461 +splbreathingextendedpot,373,16461 +splbreathextendedpot,373,16461 +splashwaterbreathingexpotion,373,16461 +splashwaterbreathexpotion,373,16461 +splashbreathingexpotion,373,16461 +splashbreathexpotion,373,16461 +splashwaterbreathingexpot,373,16461 +splashwaterbreathexpot,373,16461 +splashbreathingexpot,373,16461 +splashbreathexpot,373,16461 +splwaterbreathingexpotion,373,16461 +splwaterbreathexpotion,373,16461 +splbreathingexpotion,373,16461 +splbreathexpotion,373,16461 +splwaterbreathingexpot,373,16461 +splwaterbreathexpot,373,16461 +splbreathingexpot,373,16461 +splbreathexpot,373,16461 +spwbepot,373,16461 +splashinvisibilityextendedpotion,373,16462 +splashinvisibleextendedpotion,373,16462 +splashinvextendedpotion,373,16462 +splashinvisibilityextendedpot,373,16462 +splashinvisibleextendedpot,373,16462 +splashinvextendedpot,373,16462 +splashinvisibilityexpotion,373,16462 +splashinvisibleexpotion,373,16462 +splashinvexpotion,373,16462 +splashinvisibilityexpot,373,16462 +splashinvisibleexpot,373,16462 +splashinvexpot,373,16462 +splinvisibilityextendedpotion,373,16462 +splinvisibleextendedpotion,373,16462 +splinvextendedpotion,373,16462 +splinvisibilityextendedpot,373,16462 +splinvisibleextendedpot,373,16462 +splinvextendedpot,373,16462 +splinvisibilityexpotion,373,16462 +splinvisibleexpotion,373,16462 +splinvexpotion,373,16462 +splinvisibilityexpot,373,16462 +splinvisibleexpot,373,16462 +splinvexpot,373,16462 +spiepot,373,16462 +splashregenerationdualbitpotion,373,16481 +splashregeneratedualbitpotion,373,16481 +splashregendualbitpotion,373,16481 +splashregenerationdualbitpot,373,16481 +splashregeneratedualbitpot,373,16481 +splashregendualbitpot,373,16481 +splregenerationdualbitpotion,373,16481 +splregeneratedualbitpotion,373,16481 +splregendualbitpotion,373,16481 +splregenerationdualbitpot,373,16481 +splregeneratedualbitpot,373,16481 +splregendualbitpot,373,16481 +splashregenerationdbpotion,373,16481 +splashregeneratedbpotion,373,16481 +splashregendbpotion,373,16481 +splashregenerationdbpot,373,16481 +splashregeneratedbpot,373,16481 +splashregendbpot,373,16481 +splregenerationdbpotion,373,16481 +splregeneratedbpotion,373,16481 +splregendbpotion,373,16481 +splregenerationdbpot,373,16481 +splregeneratedbpot,373,16481 +splregendbpot,373,16481 +sprdbpot,373,16481 +splashswiftnessdualbitpotion,373,16482 +splashswiftdualbitpotion,373,16482 +splashspeeddualbitpotion,373,16482 +splashswiftnessdualbitpot,373,16482 +splashswiftdualbitpot,373,16482 +splashspeeddualbitpot,373,16482 +splswiftnessdualbitpotion,373,16482 +splswiftdualbitpotion,373,16482 +splspeeddualbitpotion,373,16482 +splswiftnessdualbitpot,373,16482 +splswiftdualbitpot,373,16482 +splspeeddualbitpot,373,16482 +splashswiftnessdbpotion,373,16482 +splashswiftdbpotion,373,16482 +splashspeeddbpotion,373,16482 +splashswiftnessdbpot,373,16482 +splashswiftdbpot,373,16482 +splashspeeddbpot,373,16482 +splswiftnessdbpotion,373,16482 +splswiftdbpotion,373,16482 +splspeeddbpotion,373,16482 +splswiftnessdbpot,373,16482 +splswiftdbpot,373,16482 +splspeeddbpot,373,16482 +spswdbpot,373,16482 +splashpoisondualbitpotion,373,16484 +splashaciddualbitpotion,373,16484 +splashpoisondualbitpot,373,16484 +splashaciddualbitpot,373,16484 +splpoisondualbitpotion,373,16484 +splaciddualbitpotion,373,16484 +splpoisondualbitpot,373,16484 +splaciddualbitpot,373,16484 +splashpoisondbpotion,373,16484 +splashaciddbpotion,373,16484 +splashpoisondbpot,373,16484 +splashaciddbpot,373,16484 +splpoisondbpotion,373,16484 +splaciddbpotion,373,16484 +splpoisondbpot,373,16484 +splaciddbpot,373,16484 +sppdbpot,373,16484 +splashstrengthdualbitpotion,373,16489 +splashstrongdualbitpotion,373,16489 +splashstrdualbitpotion,373,16489 +splashstrengthdualbitpot,373,16489 +splashstrongdualbitpot,373,16489 +splashstrdualbitpot,373,16489 +splstrengthdualbitpotion,373,16489 +splstrongdualbitpotion,373,16489 +splstrdualbitpotion,373,16489 +splstrengthdualbitpot,373,16489 +splstrongdualbitpot,373,16489 +splstrdualbitpot,373,16489 +splashstrengthdbpotion,373,16489 +splashstrongdbpotion,373,16489 +splashstrdbpotion,373,16489 +splashstrengthdbpot,373,16489 +splashstrongdbpot,373,16489 +splashstrdbpot,373,16489 +splstrengthdbpotion,373,16489 +splstrongdbpotion,373,16489 +splstrdbpotion,373,16489 +splstrengthdbpot,373,16489 +splstrongdbpot,373,16489 +splstrdbpot,373,16489 +spstdbpot,373,16489 +glassbottle,374,0 +bottle,374,0 +gbottle,374,0 +gvase,374,0 +vase,374,0 +glassvase,374,0 +emptyglassbottle,374,0 +emptybottle,374,0 +emptygbottle,374,0 +emptygvase,374,0 +emptyvase,374,0 +emptyglassvase,374,0 +eglassbottle,374,0 +ebottle,374,0 +egbottle,374,0 +egvase,374,0 +evase,374,0 +eglassvase,374,0 +spidereye,375,0 +eyeofspider,375,0 +seye,375,0 +fermentedspidereye,376,0 +craftedspidereye,376,0 +fspidereye,376,0 +cspidereye,376,0 +fermentedeyeofspider,376,0 +craftedeyeofspider,376,0 +feyeofspider,376,0 +ceyeofspider,376,0 +fermentedseye,376,0 +craftedseye,376,0 +fseye,376,0 +cseye,376,0 +blazepowder,377,0 +blazedust,377,0 +goldpowder,377,0 +golddust,377,0 +gdust,377,0 +gpowder,377,0 +bpowder,377,0 +bdust,377,0 +magmacream,378,0 +goldcream,378,0 +blazecream,378,0 +mcream,378,0 +gcream,378,0 +bcream,378,0 +combinedcream,378,0 +ccream,378,0 +bstand,379,0 +pstand,379,0 +brewingstand,379,0 +potionstand,379,0 +cauldron,380,0 +steelcauldron,380,0 +ironcauldron,380,0 +icauldron,380,0 +scauldron,380,0 +potioncauldron,380,0 +pcauldron,380,0 +eyeofender,381,0 +endereye,381,0 +endeye,381,0 +evilendereye,381,0 +evileyeofender,381,0 +evilenderpearl,381,0 +eeye,381,0 +eofender,381,0 +glisteringmelon,382,0 +speckledmelon,382,0 +goldmelon,382,0 +sparklymelon,382,0 +shiningmelon,382,0 +gmelon,382,0 +smelon,382,0 +creeperegg,383,50 +eggcreeper,383,50 +skeletonegg,383,51 +eggskeleton,383,51 +spideregg,383,52 +eggspider,383,52 +giantegg,383,53 +egggiant,383,53 +zombieegg,383,54 +eggzombie,383,54 +slimeegg,383,55 +eggslime,383,55 +ghastegg,383,56 +eggghast,383,56 +zombiepigmanegg,383,57 +zpigmanegg,383,57 +pigmanegg,383,57 +zombiepmanegg,383,57 +zpmanegg,383,57 +zombiepigmegg,383,57 +zpigmegg,383,57 +zombiepigegg,383,57 +zpigegg,383,57 +zombiepmegg,383,57 +zombiepegg,383,57 +eggzombiepigman,383,57 +eggzpigman,383,57 +eggpigman,383,57 +eggzombiepman,383,57 +eggzpman,383,57 +eggzombiepigm,383,57 +eggzpigm,383,57 +eggzombiepig,383,57 +eggzpig,383,57 +eggzombiepm,383,57 +eggzombiep,383,57 +endermanegg,383,58 +eggenderman,383,58 +eggcavespider,383,59 +cavespideregg,383,59 +silverfishegg,383,60 +eggsilverfish,383,60 +blazeegg,383,61 +eggblaze,383,61 +lavaslimeegg,383,62 +lavacubeegg,383,62 +magmacubeegg,383,62 +magmaslimeegg,383,62 +egglavaslime,383,62 +egglavacube,383,62 +eggmagmacube,383,62 +eggmagmaslime,383,62 +bategg,383,65 +eggbat,383,65 +witchegg,383,66 +eggwitch,383,66 +pigegg,383,90 +eggpig,383,90 +sheepegg,383,91 +eggsheep,383,91 +cowegg,383,92 +eggcow,383,92 +chickenegg,383,93 +eggchicken,383,93 +squidegg,383,94 +eggsquid,383,94 +wolfegg,383,95 +eggwolf,383,95 +mooshroomegg,383,96 +mushroomcowegg,383,96 +eggmooshroom,383,96 +eggmushroomcow,383,96 +snowgolemegg,383,97 +sgolemegg,383,97 +eggsnowgolem,383,97 +eggsgolem,383,97 +ocelotegg,383,98 +eggocelot,383,98 +irongolemegg,383,99 +igolemegg,383,99 +eggirongolem,383,99 +eggigolem,383,99 +egghorse,383,100 +horseegg,383,100 +villageregg,383,120 +eggvillager,383,120 +bottleofenchanting,384,0 +enchantingbottle,384,0 +expbottle,384,0 +xpbottle,384,0 +bottleexp,384,0 +bottlexp,384,0 +enchantbottle,384,0 +bottleenchanting,384,0 +bottleenchant,384,0 +bottleoenchanting,384,0 +firecharge,385,0 +fireball,385,0 +grenade,385,0 +bookandquill,386,0 +booknquill,386,0 +bookandfeather,386,0 +booknfeather,386,0 +writeablebook,386,0 +writtenbook,387,0 +readablebook,387,0 +sealedbook,387,0 +diary,387,0 +ownedbook,387,0 +emerald,388,0 +itemframe,389,0 +pictureframe,389,0 +iframe,389,0 +pframe,389,0 +flowerpot,390,0 +pot,390,0 +carrot,391,0 +potato,392,0 +rawpotato,392,0 +bakedpotato,393,0 +roastedpotato,393,0 +cookedpotato,393,0 +bakepotato,393,0 +roastpotato,393,0 +cookpotato,393,0 +bpotato,393,0 +rpotato,393,0 +cpotato,393,0 +poisonouspotato,394,0 +poisonpotato,394,0 +ppotato,394,0 +emptymap,395,0 +map,395,0 +goldencarrot,396,0 +goldcarrot,396,0 +gcarrot,396,0 +head,397,0 +skull,397,0 +skeletonhead,397,0 +headskeleton,397,0 +skeletonskull,397,0 +skullskeleton,397,0 +witherhead,397,1 +witherskeletonhead,397,1 +wskeletionhead,397,1 +headwither,397,1 +headwitherskeleton,397,1 +headwskeletion,397,1 +witherskull,397,1 +witherskeletonskull,397,1 +wskeletionskull,397,1 +skullwither,397,1 +skullwitherskeleton,397,1 +skullwskeletion,397,1 +zombiehead,397,2 +headzombie,397,2 +zombieskull,397,2 +skullzombie,397,2 +playerhead,397,3 +humanhead,397,3 +stevehead,397,3 +headplayer,397,3 +headhuman,397,3 +headsteve,397,3 +playerskull,397,3 +humanskull,397,3 +steveskull,397,3 +skullplayer,397,3 +skullhuman,397,3 +skullsteve,397,3 +creeperhead,397,4 +headcreeper,397,4 +creeperskull,397,4 +skullcreeper,397,4 +carrotonastick,398,0 +carrotonstick,398,0 +netherstar,399,0 +hellstar,399,0 +nstar,399,0 +hstar,399,0 +star,399,0 +pumpkinpie,400,0 +pumpkincake,400,0 +ppie,400,0 +pcake,400,0 +pie,400,0 +fireworkrocket,401,0 +fireworkmissle,401,0 +firework,401,0 +fworkrocket,401,0 +fworkmissle,401,0 +fwork,401,0 +fwrocket,401,0 +fwmissle,401,0 +fireworkstar,402,0 +fworkstar,402,0 +fwstar,402,0 +fireworkball,402,0 +fworkball,402,0 +fwball,402,0 +fireworkpowder,402,0 +fworkpowder,402,0 +fwpowder,402,0 +fireworkcharge,402,0 +fworkcharge,402,0 +fwcharge,402,0 +enchantedbook,403,0 +enchantmentbook,403,0 +enchantingbook,403,0 +enchantbook,403,0 +magicalbook,403,0 +magicbook,403,0 +ebook,403,0 +mbook,403,0 +redstonecomparator,404,0 +redstonecomparer,404,0 +redstonecompare,404,0 +rstonecomparator,404,0 +rstonecomparer,404,0 +rstonecompare,404,0 +redscomparator,404,0 +redscomparer,404,0 +redscompare,404,0 +rscomparator,404,0 +rscomparer,404,0 +rscompare,404,0 +comparator,404,0 +comparer,404,0 +compare,404,0 +netherbrick,405,0 +nbrick,405,0 +hellbrick,405,0 +deathbrick,405,0 +dbrick,405,0 +hbrick,405,0 +netherquartz,406,0 +deathquartz,406,0 +hellquartz,406,0 +nquartz,406,0 +dquartz,406,0 +hquartz,406,0 +quartz,406,0 +tntminecart,407,0 +dynamiteminecart,407,0 +dynamitemcart,407,0 +dynamitecart,407,0 +bombminecart,407,0 +bombmcart,407,0 +bombcart,407,0 +tntmcart,407,0 +tntcart,407,0 +dminecart,407,0 +dmcart,407,0 +dcart,407,0 +bminecart,407,0 +bmcart,407,0 +bcart,407,0 +tminecart,407,0 +tmcart,407,0 +tcart,407,0 +hopperminecart,408,0 +hoppermcart,408,0 +hoppercart,408,0 +hopminecart,408,0 +hopmcart,408,0 +hopcart,408,0 +hminecart,408,0 +hmcart,408,0 +hcart,408,0 +ironhorsearmor,417,0 +ironharmor,417,0 +ironarmor,417,0 +ihorsearmor,417,0 +iharmor,417,0 +iarmor,417,0 +steelhorsearmor,417,0 +steelharmor,417,0 +steelarmor,417,0 +shorsearmor,417,0 +sharmor,417,0 +sarmor,417,0 +goldenhorsearmor,418,0 +goldenharmor,418,0 +goldenarmor,418,0 +goldhorsearmor,418,0 +goldharmor,418,0 +goldarmor,418,0 +ghorsearmor,418,0 +gharmor,418,0 +garmor,418,0 +diamondhorsearmor,419,0 +diamondharmor,419,0 +diamondarmor,419,0 +dhorsearmor,419,0 +dharmor,419,0 +darmor,419,0 +crystalhorsearmor,419,0 +crystalharmor,419,0 +crystalarmor,419,0 +chorsearmor,419,0 +charmor,419,0 +carmor,419,0 +lead,420,0 +leash,420,0 +rope,420,0 +nametag,421,0 +tag,421,0 +commandblockminecart,422,0 +cmdblockminecart,422,0 +cblockminecart,422,0 +commandminecart,422,0 +cmdminecart,422,0 +cbminecart,422,0 +commandblockcart,422,0 +cmdblockcart,422,0 +cblockcart,422,0 +commandcart,422,0 +cmdcart,422,0 +cbcart,422,0 +13disc,2256,0 +goldmusicrecord,2256,0 +goldmusicdisk,2256,0 +goldmusicdisc,2256,0 +goldmusiccd,2256,0 +13musicrecord,2256,0 +13musicdisk,2256,0 +13musicdisc,2256,0 +13musiccd,2256,0 +gomusicrecord,2256,0 +gomusicdisk,2256,0 +gomusicdisc,2256,0 +gomusiccd,2256,0 +goldmrecord,2256,0 +goldmdisk,2256,0 +goldmdisc,2256,0 +goldmcd,2256,0 +13mrecord,2256,0 +13mdisk,2256,0 +13mdisc,2256,0 +13mcd,2256,0 +gomrecord,2256,0 +gomdisk,2256,0 +gomdisc,2256,0 +gomcd,2256,0 +goldrecord,2256,0 +golddisk,2256,0 +golddisc,2256,0 +goldcd,2256,0 +13record,2256,0 +13disk,2256,0 +13cd,2256,0 +gorecord,2256,0 +godisk,2256,0 +godisc,2256,0 +gocd,2256,0 +record1,2256,0 +disk1,2256,0 +disc1,2256,0 +cd1,2256,0 +1record,2256,0 +1disk,2256,0 +1disc,2256,0 +1cd,2256,0 +catdisc,2257,0 +greenmusicrecord,2257,0 +greenmusicdisk,2257,0 +greenmusicdisc,2257,0 +greenmusiccd,2257,0 +catmusicrecord,2257,0 +catmusicdisk,2257,0 +catmusicdisc,2257,0 +catmusiccd,2257,0 +grmusicrecord,2257,0 +grmusicdisk,2257,0 +grmusicdisc,2257,0 +grmusiccd,2257,0 +greenmrecord,2257,0 +greenmdisk,2257,0 +greenmdisc,2257,0 +greenmcd,2257,0 +catmrecord,2257,0 +catmdisk,2257,0 +catmdisc,2257,0 +catmcd,2257,0 +grmrecord,2257,0 +grmdisk,2257,0 +grmdisc,2257,0 +grmcd,2257,0 +greenrecord,2257,0 +greendisk,2257,0 +greendisc,2257,0 +greencd,2257,0 +catrecord,2257,0 +catdisk,2257,0 +catcd,2257,0 +grrecord,2257,0 +grdisk,2257,0 +grdisc,2257,0 +grcd,2257,0 +record2,2257,0 +disk2,2257,0 +disc2,2257,0 +cd2,2257,0 +2record,2257,0 +2disk,2257,0 +2disc,2257,0 +2cd,2257,0 +blocksdisc,2258,0 +orangemusicrecord,2258,0 +orangemusicdisk,2258,0 +orangemusicdisc,2258,0 +orangemusiccd,2258,0 +blocksmusicrecord,2258,0 +blocksmusicdisk,2258,0 +blocksmusicdisc,2258,0 +blocksmusiccd,2258,0 +ormusicrecord,2258,0 +ormusicdisk,2258,0 +ormusicdisc,2258,0 +ormusiccd,2258,0 +orangemrecord,2258,0 +orangemdisk,2258,0 +orangemdisc,2258,0 +orangemcd,2258,0 +blocksmrecord,2258,0 +blocksmdisk,2258,0 +blocksmdisc,2258,0 +blocksmcd,2258,0 +ormrecord,2258,0 +ormdisk,2258,0 +ormdisc,2258,0 +ormcd,2258,0 +orangerecord,2258,0 +orangedisk,2258,0 +orangedisc,2258,0 +orangecd,2258,0 +blocksrecord,2258,0 +blocksdisk,2258,0 +blockscd,2258,0 +orrecord,2258,0 +ordisk,2258,0 +ordisc,2258,0 +orcd,2258,0 +record3,2258,0 +disk3,2258,0 +disc3,2258,0 +cd3,2258,0 +3record,2258,0 +3disk,2258,0 +3disc,2258,0 +3cd,2258,0 +chirpdisc,2259,0 +redmusicrecord,2259,0 +redmusicdisk,2259,0 +redmusicdisc,2259,0 +redmusiccd,2259,0 +chirpmusicrecord,2259,0 +chirpmusicdisk,2259,0 +chirpmusicdisc,2259,0 +chirpmusiccd,2259,0 +remusicrecord,2259,0 +remusicdisk,2259,0 +remusicdisc,2259,0 +remusiccd,2259,0 +redmrecord,2259,0 +redmdisk,2259,0 +redmdisc,2259,0 +redmcd,2259,0 +chirpmrecord,2259,0 +chirpmdisk,2259,0 +chirpmdisc,2259,0 +chirpmcd,2259,0 +remrecord,2259,0 +remdisk,2259,0 +remdisc,2259,0 +remcd,2259,0 +redrecord,2259,0 +reddisk,2259,0 +reddisc,2259,0 +redcd,2259,0 +chirprecord,2259,0 +chirpdisk,2259,0 +chirpcd,2259,0 +rerecord,2259,0 +redisk,2259,0 +redisc,2259,0 +recd,2259,0 +record4,2259,0 +disk4,2259,0 +disc4,2259,0 +cd4,2259,0 +4record,2259,0 +4disk,2259,0 +4disc,2259,0 +4cd,2259,0 +fardisc,2260,0 +lightgreenmusicrecord,2260,0 +lightgreenmusicdisk,2260,0 +lightgreenmusicdisc,2260,0 +lightgreenmusiccd,2260,0 +lgreenmusicrecord,2260,0 +lgreenmusicdisk,2260,0 +lgreenmusicdisc,2260,0 +lgreenmusiccd,2260,0 +lightgrmusicrecord,2260,0 +lightgrmusicdisk,2260,0 +lightgrmusicdisc,2260,0 +lightgrmusiccd,2260,0 +farmusicrecord,2260,0 +farmusicdisk,2260,0 +farmusicdisc,2260,0 +farmusiccd,2260,0 +lgrmusicrecord,2260,0 +lgrmusicdisk,2260,0 +lgrmusicdisc,2260,0 +lgrmusiccd,2260,0 +lightgreenmrecord,2260,0 +lightgreenmdisk,2260,0 +lightgreenmdisc,2260,0 +lightgreenmcd,2260,0 +lgreenmrecord,2260,0 +lgreenmdisk,2260,0 +lgreenmdisc,2260,0 +lgreenmcd,2260,0 +lightgrmrecord,2260,0 +lightgrmdisk,2260,0 +lightgrmdisc,2260,0 +lightgrmcd,2260,0 +farmrecord,2260,0 +farmdisk,2260,0 +farmdisc,2260,0 +farmcd,2260,0 +lgrmrecord,2260,0 +lgrmdisk,2260,0 +lgrmdisc,2260,0 +lgrmcd,2260,0 +lightgreenrecord,2260,0 +lightgreendisk,2260,0 +lightgreendisc,2260,0 +lightgreencd,2260,0 +lgreenrecord,2260,0 +lgreendisk,2260,0 +lgreendisc,2260,0 +lgreencd,2260,0 +lightgrrecord,2260,0 +lightgrdisk,2260,0 +lightgrdisc,2260,0 +lightgrcd,2260,0 +farrecord,2260,0 +fardisk,2260,0 +farcd,2260,0 +lgrrecord,2260,0 +lgrdisk,2260,0 +lgrdisc,2260,0 +lgrcd,2260,0 +record5,2260,0 +disk5,2260,0 +disc5,2260,0 +cd5,2260,0 +5record,2260,0 +5disk,2260,0 +5disc,2260,0 +5cd,2260,0 +malldisc,2261,0 +purplemusicrecord,2261,0 +purplemusicdisk,2261,0 +purplemusicdisc,2261,0 +purplemusiccd,2261,0 +mallmusicrecord,2261,0 +mallmusicdisk,2261,0 +mallmusicdisc,2261,0 +mallmusiccd,2261,0 +pumusicrecord,2261,0 +pumusicdisk,2261,0 +pumusicdisc,2261,0 +pumusiccd,2261,0 +purplemrecord,2261,0 +purplemdisk,2261,0 +purplemdisc,2261,0 +purplemcd,2261,0 +mallmrecord,2261,0 +mallmdisk,2261,0 +mallmdisc,2261,0 +mallmcd,2261,0 +pumrecord,2261,0 +pumdisk,2261,0 +pumdisc,2261,0 +pumcd,2261,0 +purplerecord,2261,0 +purpledisk,2261,0 +purpledisc,2261,0 +purplecd,2261,0 +mallrecord,2261,0 +malldisk,2261,0 +mallcd,2261,0 +purecord,2261,0 +pudisk,2261,0 +pudisc,2261,0 +pucd,2261,0 +record6,2261,0 +disk6,2261,0 +disc6,2261,0 +cd6,2261,0 +6record,2261,0 +6disk,2261,0 +6disc,2261,0 +6cd,2261,0 +mellohidisc,2262,0 +pinkmusicrecord,2262,0 +pinkmusicdisk,2262,0 +pinkmusicdisc,2262,0 +pinkmusiccd,2262,0 +mellohimusicrecord,2262,0 +mellohimusicdisk,2262,0 +mellohimusicdisc,2262,0 +mellohimusiccd,2262,0 +pimusicrecord,2262,0 +pimusicdisk,2262,0 +pimusicdisc,2262,0 +pimusiccd,2262,0 +pinkmrecord,2262,0 +pinkmdisk,2262,0 +pinkmdisc,2262,0 +pinkmcd,2262,0 +mellohimrecord,2262,0 +mellohimdisk,2262,0 +mellohimdisc,2262,0 +mellohimcd,2262,0 +pimrecord,2262,0 +pimdisk,2262,0 +pimdisc,2262,0 +pimcd,2262,0 +pinkrecord,2262,0 +pinkdisk,2262,0 +pinkdisc,2262,0 +pinkcd,2262,0 +mellohirecord,2262,0 +mellohidisk,2262,0 +mellohicd,2262,0 +pirecord,2262,0 +pidisk,2262,0 +pidisc,2262,0 +picd,2262,0 +record7,2262,0 +disk7,2262,0 +disc7,2262,0 +cd7,2262,0 +7record,2262,0 +7disk,2262,0 +7disc,2262,0 +7cd,2262,0 +staldisc,2263,0 +blackmusicrecord,2263,0 +blackmusicdisk,2263,0 +blackmusicdisc,2263,0 +blackmusiccd,2263,0 +stalmusicrecord,2263,0 +stalmusicdisk,2263,0 +stalmusicdisc,2263,0 +stalmusiccd,2263,0 +blmusicrecord,2263,0 +blmusicdisk,2263,0 +blmusicdisc,2263,0 +blmusiccd,2263,0 +blackmrecord,2263,0 +blackmdisk,2263,0 +blackmdisc,2263,0 +blackmcd,2263,0 +stalmrecord,2263,0 +stalmdisk,2263,0 +stalmdisc,2263,0 +stalmcd,2263,0 +blmrecord,2263,0 +blmdisk,2263,0 +blmdisc,2263,0 +blmcd,2263,0 +blackrecord,2263,0 +blackdisk,2263,0 +blackdisc,2263,0 +blackcd,2263,0 +stalrecord,2263,0 +staldisk,2263,0 +stalcd,2263,0 +blrecord,2263,0 +bldisk,2263,0 +bldisc,2263,0 +blcd,2263,0 +record8,2263,0 +disk8,2263,0 +disc8,2263,0 +cd8,2263,0 +8record,2263,0 +8disk,2263,0 +8disc,2263,0 +8cd,2263,0 +straddisc,2264,0 +whitemusicrecord,2264,0 +whitemusicdisk,2264,0 +whitemusicdisc,2264,0 +whitemusiccd,2264,0 +stradmusicrecord,2264,0 +stradmusicdisk,2264,0 +stradmusicdisc,2264,0 +stradmusiccd,2264,0 +whmusicrecord,2264,0 +whmusicdisk,2264,0 +whmusicdisc,2264,0 +whmusiccd,2264,0 +whitemrecord,2264,0 +whitemdisk,2264,0 +whitemdisc,2264,0 +whitemcd,2264,0 +stradmrecord,2264,0 +stradmdisk,2264,0 +stradmdisc,2264,0 +stradmcd,2264,0 +whmrecord,2264,0 +whmdisk,2264,0 +whmdisc,2264,0 +whmcd,2264,0 +whiterecord,2264,0 +whitedisk,2264,0 +whitedisc,2264,0 +whitecd,2264,0 +stradrecord,2264,0 +straddisk,2264,0 +stradcd,2264,0 +whrecord,2264,0 +whdisk,2264,0 +whdisc,2264,0 +whcd,2264,0 +record9,2264,0 +disk9,2264,0 +disc9,2264,0 +cd9,2264,0 +9record,2264,0 +9disk,2264,0 +9disc,2264,0 +9cd,2264,0 +warddisc,2265,0 +darkgreenmusicrecord,2265,0 +darkgreenmusicdisk,2265,0 +darkgreenmusicdisc,2265,0 +darkgreenmusiccd,2265,0 +dgreenmusicrecord,2265,0 +dgreenmusicdisk,2265,0 +dgreenmusicdisc,2265,0 +dgreenmusiccd,2265,0 +darkgrmusicrecord,2265,0 +darkgrmusicdisk,2265,0 +darkgrmusicdisc,2265,0 +darkgrmusiccd,2265,0 +wardmusicrecord,2265,0 +wardmusicdisk,2265,0 +wardmusicdisc,2265,0 +wardmusiccd,2265,0 +dgrmusicrecord,2265,0 +dgrmusicdisk,2265,0 +dgrmusicdisc,2265,0 +dgrmusiccd,2265,0 +darkgreenmrecord,2265,0 +darkgreenmdisk,2265,0 +darkgreenmdisc,2265,0 +darkgreenmcd,2265,0 +dgreenmrecord,2265,0 +dgreenmdisk,2265,0 +dgreenmdisc,2265,0 +dgreenmcd,2265,0 +darkgrmrecord,2265,0 +darkgrmdisk,2265,0 +darkgrmdisc,2265,0 +darkgrmcd,2265,0 +wardmrecord,2265,0 +wardmdisk,2265,0 +wardmdisc,2265,0 +wardmcd,2265,0 +dgrmrecord,2265,0 +dgrmdisk,2265,0 +dgrmdisc,2265,0 +dgrmcd,2265,0 +darkgreenrecord,2265,0 +darkgreendisk,2265,0 +darkgreendisc,2265,0 +darkgreencd,2265,0 +dgreenrecord,2265,0 +dgreendisk,2265,0 +dgreendisc,2265,0 +dgreencd,2265,0 +darkgrrecord,2265,0 +darkgrdisk,2265,0 +darkgrdisc,2265,0 +darkgrcd,2265,0 +wardrecord,2265,0 +warddisk,2265,0 +wardcd,2265,0 +dgrrecord,2265,0 +dgrdisk,2265,0 +dgrdisc,2265,0 +dgrcd,2265,0 +record10,2265,0 +disk10,2265,0 +disc10,2265,0 +cd10,2265,0 +10record,2265,0 +10disk,2265,0 +10disc,2265,0 +10cd,2265,0 +11disc,2266,0 +crackedmusicrecord,2266,0 +crackedmusicdisk,2266,0 +crackedmusicdisc,2266,0 +crackedmusiccd,2266,0 +crackmusicrecord,2266,0 +crackmusicdisk,2266,0 +crackmusicdisc,2266,0 +crackmusiccd,2266,0 +11musicrecord,2266,0 +11musicdisk,2266,0 +11musicdisc,2266,0 +11musiccd,2266,0 +cmusicrecord,2266,0 +cmusicdisk,2266,0 +cmusicdisc,2266,0 +cmusiccd,2266,0 +crackedmrecord,2266,0 +crackedmdisk,2266,0 +crackedmdisc,2266,0 +crackedmcd,2266,0 +crackmrecord,2266,0 +crackmdisk,2266,0 +crackmdisc,2266,0 +crackmcd,2266,0 +11mrecord,2266,0 +11mdisk,2266,0 +11mdisc,2266,0 +11mcd,2266,0 +cmrecord,2266,0 +cmdisk,2266,0 +cmdisc,2266,0 +cmcd,2266,0 +crackedrecord,2266,0 +crackeddisk,2266,0 +crackeddisc,2266,0 +crackedcd,2266,0 +crackrecord,2266,0 +crackdisk,2266,0 +crackdisc,2266,0 +crackcd,2266,0 +crecord,2266,0 +cdisk,2266,0 +cdisc,2266,0 +ccd,2266,0 +record11,2266,0 +disk11,2266,0 +disc11,2266,0 +cd11,2266,0 +11record,2266,0 +11disk,2266,0 +11cd,2266,0 +waitdisc,2267,0 +waitmusicrecord,2267,0 +waitmusicdisk,2267,0 +waitmusicdisc,2267,0 +waitmusiccd,2267,0 +bluemusicrecord,2267,0 +bluemusicdisk,2267,0 +bluemusicdisc,2267,0 +bluemusiccd,2267,0 +12musicrecord,2267,0 +12musicdisk,2267,0 +12musicdisc,2267,0 +12musiccd,2267,0 +cyanmusicrecord,2267,0 +cyanmusicdisk,2267,0 +cyanmusicdisc,2267,0 +cyanmusiccd,2267,0 +waitmrecord,2267,0 +waitmdisk,2267,0 +waitmdisc,2267,0 +waitmcd,2267,0 +bluemrecord,2267,0 +bluemdisk,2267,0 +bluemdisc,2267,0 +bluemcd,2267,0 +12mrecord,2267,0 +12mdisk,2267,0 +12mdisc,2267,0 +12mcd,2267,0 +cyanmrecord,2267,0 +cyanmdisk,2267,0 +cyanmdisc,2267,0 +cyanmcd,2267,0 +waitrecord,2267,0 +waitdisk,2267,0 +waitcd,2267,0 +bluerecord,2267,0 +bluedisk,2267,0 +bluedisc,2267,0 +bluecd,2267,0 +cyanrecord,2267,0 +cyandisk,2267,0 +cyandisc,2267,0 +cyancd,2267,0 +record12,2267,0 +disk12,2267,0 +disc12,2267,0 +cd12,2267,0 +12record,2267,0 +12disk,2267,0 +12disc,2267,0 +12cd,2267,0 \ No newline at end of file diff --git a/bin/lives.yml b/bin/lives.yml new file mode 100644 index 0000000..04ec367 --- /dev/null +++ b/bin/lives.yml @@ -0,0 +1 @@ +lives: {} diff --git a/bin/net/jodah/expiringmap/EntryLoader.class b/bin/net/jodah/expiringmap/EntryLoader.class new file mode 100644 index 0000000000000000000000000000000000000000..66a2ad1b8ae70058798592bc1c79277eb3466861 GIT binary patch literal 283 zcmX^0Z`VEs1_l!b9(D#MMh3;a)Dr!y{FKBD{nUzr%%aS^^xVV(eb>B_qDr6q#FW$` zb_Nzk27#=^vPAuy#JqHU|D>$cloBZHcT54xPSCZ-T017~n%dR}5lX;CU8 z1BXV4x3y+Sm^C8U9N$iNKr dE&~H2&=;%>Y(PFckjKQp0mPhO78g{68vwqdON9Uc literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpirationListener.class b/bin/net/jodah/expiringmap/ExpirationListener.class new file mode 100644 index 0000000000000000000000000000000000000000..692b5e2d1b76a52d202f386a209ee4046a4ee177 GIT binary patch literal 302 zcmZut%?`mp5dNmdi(7n|Cqwo*$xn}Y}NP+}`i)?t$GXXeYy zJYV+*fC+jG9wF4y@VwlM1DCgxs+7)-;=~s<7DkmiQD-BytQeYvelD(p7eZ%zwaw+u z5ZGr-?g_&%`L!cg8Ks0^tuiglrIHqhn>gB}QLT5@<)zxmr7Em3aCaEj`Gnalp1Q&5 fA8qco`2<44egGhQQ47B1%rXycTfql)zDoBECx%m% literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpirationPolicy.class b/bin/net/jodah/expiringmap/ExpirationPolicy.class new file mode 100644 index 0000000000000000000000000000000000000000..3807a795979745d41c1a9455a7112cb25949f8e4 GIT binary patch literal 1093 zcma)4ZEw<06n-uR3SGA$3OF|3=j3HVmZ%?uEF)NxWo$EcBOxXx7gkwGX-O%I{3~T2 zwrE`Z?2j^@+u>+TOz4N+bMAf4bDs0^>-V=S054FI5n|Y|4X@mDPWWlr_&hLO)9&{9 zpsWd-d!}Q*b1btnmJw!H>hUvPwz%CbYxbzm5UbVenyzba7;=sIh$;+n{k>K@5AEM1 ztnB8Sal+nK5kWKtSvYAGGNQt|t0IOtQ8i54I2iTYhI_=@mcfv0I2~>^xoZmFzf>S$ znIw3p=8&?Uacg9dQOwO>k%EVKEaMSFBA|3U^o+iWCs=2QbJykLjx!iD6oT~}wtGg$ ztLz3!{Ch<;QoDUUho2a#!LVr?^7Hmw6q!@;6nTc1L87|Fhr>!B`wjD~60t5cc|~_d zZpV0QibkgX-LaCuQ=z)qwYfKP3G+HYD>$n2s@<;aY|$7c+H`4WMT{7rlcozKvSPOM z5~fqZ0^wBhK9VoK(s!^{a#6a#(m9g8b0_ROsmKp{k|s#%t?&dX{T!LE6cNG-{nL~M zltCfZMdHtpm8E=HA0be*l+#>Wq)cd&3&phytj2u{XZ^*g3npR Irhh*F12xk6CIA2c literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringEntryLoader.class b/bin/net/jodah/expiringmap/ExpiringEntryLoader.class new file mode 100644 index 0000000000000000000000000000000000000000..9538a77444356f16eb16560e09822f984a5b55b3 GIT binary patch literal 357 zcma)2I}U< o79)7xYW~?V`l9)tYh41Ntse)F{zC^{%}vc(=;^Uu$ZnMW1B@AHDwj_0^btM*!QJlId$Yh8UN!U8QT_B}hf?mM~U=t9Bw?5sZ{ zeSunk*(r3LBU0v2s5I3F9oO-P1-g5x(2vgvgvauWvJL|E7HUu%MF>YMm}n3P^(cj- z8ON2^)>jv#H)}8Cq(EaPpS5#yw&$qlKp0kz3YVaXjw&-bOvz@VbQ)c!NAG zNqSr!oFrlt5oCvwL!<2}BcvyHV9Z>Y_|mieyhpr}-`dh-Am^F78E470{dJGdoIg-$@IZ^RQ|Z~c z^e`_KebT}?^pR~lo0Ww^S4!YURTWi5`gJlGRNBPb0{w?3zL-5$;a#~nVHcKp)Wms# zEC1(Y5v;^l6c=#O#5)49z4^3o38XW^LK(~11(sV=iA`N^T1c+?F{IjsEqAdBf)0o! z9iKCCS>SS&;mmqc1~lvr#>5qY)PF~bVg&E17{&!IR2@Tw8#;pb*c9caD-q02^WWEkzJ&=)>DjcG?eqa%$k|kIzGNA54o#}_*DYi)EfAf_uX|Z})ltJJRxwM@Dp-Mm ziUO|~riax%N8Pxa&E*Rm($msk&M#WH2~NO>ZhAeAkCkdbw;e?+5o^+QrKjsb7EH{u zZ_7lmSUK!;$&(S6qi6DHdJqH98RBJZk(Qu=wP0*th@aCZl>e*umpRkQ#A literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$2.class b/bin/net/jodah/expiringmap/ExpiringMap$2.class new file mode 100644 index 0000000000000000000000000000000000000000..fa3ff08daacbcc69def1dbe8a298e7cf941fbd82 GIT binary patch literal 2062 zcmbVNT~ixX7=BJRuwh+DN(IH@M{NoTXrmFSH4s~oS|qgAAWpqIEN93<*kv{w#;O*?vEQ!T+U~@W^x~$91%~66-zmOD zq{g{WHM%ePfgjfeW=aG2m$wA6E8&hBfxvSvhA`~F!l(-yV**x5JLDUFpzd}LwpFw# zx7$i!yb*e`y(J@GpA%zN2P$y&{MQz%40OnAD;YVMzza4e1umb<&c#I?RL%>7So#6q zHBo99)!H)Ht=!w*Q(jyvf2lDqxtPWjIrW{_)kE^x*U#~%FA>#`RV3pu5|}KNdmbhk zYl)p9k2L+=K*rsO5?p$w)6(X8tzOds6kS}!3~{CBsZOU@6}Uf8Mh1{?HHf2!tel#S zlEA{b!WGR0W^rHb+>xCYuiBUsxcPr>7O7-k69;eLnvFLF3TN}+q5>9eZdb)CZP{V6 zF7_2O*)m2dRYp}8+dBd`29W0&OlsvV8}AC#2PCr@DV2zjrefo|K=r?4IPCNrn!)=5 z*9T^h3WD(qj5cHG?K3Z?muxJvN>ArOUv74Hqz=L(r3>t)i#l$ZK0m8{EveshTd?7d zWV_4C&362+xv;m_G|p`oEBHvjX@=d%Q@4HH;DywDx~Aa;rc*tU8c@B8=a5(pymr{( zc-v5ME8KC>zyW zM?9p1I5Ys0J*NbK?syrmnAg8bq8VH^w_Z2IzD3rAwX7k3#g#uX`#q+gp!^^){DIjA z$C&@(G2Z?GQ%|sP`p07O$9q2#&@x(#X%($5W~?JDaXr;!ISHpmUw#c|_(@#io9id! z8jMVn%O~VM_zOeXN0z48!|v()O^Ravgkl~a8j2d-f*2(-E16H7yeij}^s8r8`z{q` zU-m3M=FJT5Bxk^p&Ub$7zyJOD7l0|;vyl-v8>*zV z6|Kw7lKOtzkNt4tiQFzNr1G-d&QIE~1V*;xQ(0;xeo(r$R!?H-CG$}bC@=A&P@pf_ z^y~SH1gsv2SfTlhANt9hz-XZh`(jPNnvd31KLifB=tZA{9vpUIV?dy%pbd^x{ZQR$ zJXurms$2_{z+g4gjg>ioX%cq!APB)H{u4R%?~HigqIJ;v7baD?Lxu>-n<4{jRdo1%(S? z692#=s@Nz9OdUvG-W*^iAFK77vcAcqHpT_6f5^$aVY9`GgD-Hw#(9C<+u3kY0!uf$ zp_2JP)|s+nEzV5NjFMaxQPw3lDR89=g5D8JrC76ZN#JUi;jG3=r8K-5jE&0z<@ZN% z*!Wj;3||Xe?mC7JHy8oSbtRGBW9G*6l#N;TT6;XS2xrgM{U2F??9U}#XxCiK;Tr*G zC2GW;TJ&|3<~l~r1r4G{NE>YbtZ5c5`+Xtwf~d}cwXBlOXx+uPxXH<4T8Ak-*-D}5 zjrOc!ceqPosA7{|Tj0^?osO=4I~tMrOY5vMuFdN_qeE~keX zrCvTZvefsR>6}4^t1~|FJ72qSUvZbg5x)Cq1M4T`D7#vQgQFPa%Cf~kiZIPpf6I>l z24@Gy+vgpPY`uVO{oH|(-NQJE;S^(*mfDMcjWMxBLI|Fw`_k0ceg-@Ts}} zGX|Q$8FT7$6WB9Y#;sWm`3KJagR$ord5z+uRPi^)9_?V_;V!;>f#KJfYJZqcKYaBI z0ecJ=1DZwa6-KRJF~haZ$!zLQg|__BjXtn3!<$)uX>euZ;T}O(-;Qm!1FS`kh3h7k t`81{*Sm54bX)j`lQn{HNO28Pkx0sqDrQ5`+a({=vt!b`zsh^@m{r}xI>DvGR literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$4.class b/bin/net/jodah/expiringmap/ExpiringMap$4.class new file mode 100644 index 0000000000000000000000000000000000000000..408eb3cab03bf2f6fa2faa3b6e9a5b8ee8aa757a GIT binary patch literal 1306 zcma)6U2hUW6g^W`w$P=;6{T9Vt)&*|$F_=}n7%YLF+okN;la1*GQ!gBELoPOee~D( z+@#g$gHI-!{wU)eSW*cFy2+@#p&w07aB^OfW1-5m-&H#v7J6ZaKaq z>xaB$l|%nEZ)J-*G=^l8A92g&vTnWIZwfom5oIthqwhLW@_kn@M1zLY&TbNUWh{G% z!8qb>)^*x}kiusui~{k%@nj{;C2UM#g$(=?hOJRRI+r?2|6FASA$;_uBb{KI;Ztrr zx-=?fu(DB^|1Bk7WzcrKnuvknx&a-N%DZ78hPd)>8km9+M+9jD3CuD?atbt4ainS!mxaW!iv`_*#Jp_a0ah3$>msOfw?n!~`PddMr8tJfUcl`Gl2F*s_@3ACZL#Yp!6*B&qTe?ZoW@d?w(GUk ztVPi9YC0Y>ERHxqPZb89;u)c(7dRhJ`a-9{6|bPr!6B5CI*eD6{!}|IZ?^@pB>IJR z^^XP8RfOJah$NFrazN5lg6mq68(kC=^d>M(Su^Bq(^?~&Dy*I(Sy(%VSy(@(p$bLgEg3r(@r(JZK zm^LU|aZi(l_6uq4H|Dg9fA+|Pdu&n`-EALq!cg)SEhq30kH~6t?>)hD@=S`U!qhWQ I(HEHf3zH;U_5c6? literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$5.class b/bin/net/jodah/expiringmap/ExpiringMap$5.class new file mode 100644 index 0000000000000000000000000000000000000000..a8192709d176b204e1f8350ab7ac0ae067141db6 GIT binary patch literal 2515 zcmbVNTT@e46#h2kYdoAdExWu7+YV?8=T0?}D>!HnljXC{7gYF1jlj<7(}+U}jA zIvb|H3}##5VGPteAKnTtus_eyuuP;O0+R$J94y`pOW5q zIo_s}YnizT)3epOvKdk!2prqoyI2q7sr8CZ1P5?P$3cMuZwcPOJ2*^*8R-i&x3#Z} zt(=&Ijw1r`O`(rflblr8N6?C6I${DxHq|t69PbL$nU*CBg;y)|z)#UU0T#~Mi}7tR?tkN23FIawmBU(ZVedeNtY+3wi7X#*EQ znuk4^cNbU~$J<^v{00uF$S)hXf~#b#P?A`(Z8|jf~pHS{!Gmylf zz;@PbQ5J@M>6yOk3GA*CF-Tc;p9vkph>qcEr`T|6;D%yy$dQY_0x)f06gMf#PQ(Ty zGXX(O-*z2=O4$Eo1aHsVR{TmZq+Dkv5y5SY>9|9v-pHZXG*m&22h}|i!36HIn4^{j}3gHpx#!cU%(6{^O*q?Qv!O{EQ~VH;G#)I z^o#+iI2(US9JAT%yL670+tI?IL%C-3U))r2*d zX|y3BlxVC5a7#KFJ_f8Pm7X9RW|>vGuG5v~tKIIxe|4sB{6=DYBGJz)Z@$5kzW;4c zS==_}o7NobGU&xR$oQRW9d$hGx%bPRJ2K`LJxdPS>e-4`(W2rhB~CPwj+Ju@#33#H ztjnHa3_C2Lft*<=NSdt+fT02}t*QrGq%$+kpN5)fRJ|!cv`M`ve0*#8YkO-c(T*R{^du16#s4q`p`F5R&Xp2Hu?KrO3hYC3*^KxVAxZ+v9ZwNm z#{OT>lHzpxa~xekn?UDpXzhH8laFw)ynTkNo)uiE!Cke{xr|GdgB1)2q(l8n=smH5 z>jJdZ8`>9oiqtZ0J;(bGzr`+|OtO5WRg9fb&d$b-L)y|@D@v&Q8=J|awEzGB literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$6.class b/bin/net/jodah/expiringmap/ExpiringMap$6.class new file mode 100644 index 0000000000000000000000000000000000000000..8f5ec0b4ba250f8d46a4ae3a7b7b2a6855fb19c4 GIT binary patch literal 1351 zcmbVMTTc^F5dKbYyDf{Y1yS(^a_P1xD_HRY;f0iFDDVI_8ecqZPui`^?q+vO;9qHi zA<;zN{ZYm_+Y7fQfSa7%nK^U5nQzX_{`vdk7l0z(D2Omj*&;AnPMtRmap0PsX*c$` zYm~b3CU>Wo6vP-ZExykUi`xxjyV?@9KtY0GB($~z(=w!M$qu|jhU7lCrbS0yC|@3- z7cD%#%#c_yZ8KP9DC*Zfov$#&)||RXf?-&L0yTvw(i)P;Fhq6fkS?3H*lO=pg}2MA zmSD)1of@|)+%u)#HO7Lb=`+k+A&DiKc0&Xkg7}Z>`SSU4(SCBrY}h<#dlWCO=XW=j zlNiT+1@{|urd#qtfo{Q5B$sN`2JI(4BQ3ldb z_1(&Ho|XcgA$LObz3sPM*YN^T-*$z^1Jkif2Q}eJA%z^$3}a{OeCYOS9VI}9)Q;2k zYGU1#carJ#1+~_^3`1qQm}AFswgp$HwuHAzi0P7DvmBrLdQ${Vr>~QDeN%zWxLZn5qN*}dw1nmfSzlM7!IG;}8sC}GAr*I|);Y^;#`8*J38Z-TTW<#7U(j_zX zCvqQ;k^fC{^b{`<;z$^pJ* literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$Builder.class b/bin/net/jodah/expiringmap/ExpiringMap$Builder.class new file mode 100644 index 0000000000000000000000000000000000000000..65d0524388b9a5ef6900b94a30a7972da01598fb GIT binary patch literal 7220 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 RukaS%Wy8r^65htD{{qa?3vvJe literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$AbstractHashIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$AbstractHashIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..63888d50455589c6c64f890f7bbd9c343d4090ae GIT binary patch literal 1771 zcmbVMOHUI~6#i~oI(-aK9)d3v5VbAJh^+`rMG-+N6&H{$+})O&cCbvzbc&d`(1rdQ z7n+C$7sj7`Of3s-+zAm1dzrv1wMwXDQs=Gy2HzwINUcZ z!z}IbeQmY*{haSlt(vy=CTEzh#LhaemF3ZLp=MjWXiGh73ya%TOF@7kw#yH=R^etz zdr{aGMVldHG#wa*bB?)g8x^e;rZa@MjFQRix+NHlGh8yBGnY_idqdB4K)zXsQ-qA! z&g)Cgk0D@+Ln1iaEeug!=r+bp%@DN9Mr~@AVXhO9Q_ZLB!Hi)V_7c&E{~tsmPt~tf zcSINrgDO^7@ z7{gTsR~UNRdqD;jJs4*gIT7IQi=;d$U4jh#w3cGCzE=>|HZN3Ye+F~aBCq7RWk|hw z7?2%j*!Ztzow@8Z1f|Sto6Z7JyIw|-#4QEW#GqYEi?fQGh*LyK*o}x3mDWL5y}L^p z_3oqGwUhj2RfKVuu3@XOo_ne*NHYwzxw{uFiWKHl+?SCdsvyrRb)jH^LF=*vIXPW& zh|mgKVy}82B&{VC8M$?lt!mvWiZw&dG3I%JW+W>HHEWu}TB-0_P1F>uoLC#8%h2Q8 zas_J)6aVB!lREvfQFG3E+bC6wj}sFZr&9d%jQTMsH<2`jG#^6rr}|ty8jH!xMYaI_ z`_NC87=2~Q&qs1JIemnI& zI>tRI=Z~;R$BUm`@Cdnsy`$&iy(ht#n}7yPaI*4wk{*f=7}~`)P(DzxA3Z27nm#;q h@;$;b$w}&H3Xkz57^YUN;;Ga1QLIy==Sj~Z^cR%{$yxva literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$EntryIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$EntryIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..4f7cc38f7c291d4fe8f99c18d738208bdc5e7c4c GIT binary patch literal 1695 zcmbVN%Tg0T6g{2SBw>{BP{bFaph-|h-eMvaA{LYp7o@Uq*GamP!7!m_Iu!nZe_;6& zE_5MSF8lyL%JTLwLlP1tl}aVk-E+_BzUSQA`TghTF93^pt|7qi!V=QhtCxAz5Jv~5 zZCaImeqd~R<2U?ZYSWVThn#7>7v(MPRL_>SrLeiI+ZsX)+kNq@7aeKyl2p7+x(LJY z9zWzpLz*?iUuTHOs_9J4F)Zi$*)2m1S<^D*8pCR`KZ;a=A+%91ix?O#>Ch03BZxsA zF~k`LNhYz=*e?n@&x1$Q)oTd>>rrs&LrghxKJ%&+Vj2gEp#@pha zC`ng=q>fQsQK92hG`85UACh(iFQ~OgI?|Y7i0{@Lc1gT4mC=comYG#PFnsJqvySHS zt(fiB9GMo2{SwHwtex5Jvyi0>`nF{Wd!xo3M>rZ57)H8OiiRbs>9!XPVb@FzPZ$<2 zw6V)oK^@R}e~|LslB3<-SU)ih&lrpzc5N*KMbbLQ9949XzG1LLLNzSiei52e!_w~n z&6W_L4=|9P`3^ljbArp?Xc|Dm3kCaxAsXuhpfC($gq}mHMkwkkjRP2Sspcs{#YEG` zxb_1#zq;?5JfB;5qNhBGbybYsQKmh7IDLYtFYRD@r4B(SCCDi5cR-Hu;M{&~5bEg; z$O%&agHV}wfjm5?PIDI$de%Ln;i>YNB literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$KeyIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$KeyIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..aac4ace47f5a66efb0af1835abcbeb369c5e1bc3 GIT binary patch literal 1222 zcmbVL+iuf95Iq~aaW00srQEMA0h|P4E(Hm>ih!yWQA2rXl=n@tN}Re*WN%RO35cHo ziHpPoAHYW;W{s-`B@!VIYtN2n&Yn3w`}5cL9{@H{F_2<-5eVt@2OZvX#PQGzy`X!< zht5tCzv08eP9Vc^-3tyy=QWRdDzzuZH7Pq-j)jW6fVuM+UM`M zGm@U~oa7nOvgbvGM-0#Ei=5^X!j>0!vdZw>UJRnxWYD(<9gzjY850IFIcQimkwuPS znM4x%qobAx8@%NU8l*mGbHB+$PwkVWt_ERvwGf9%>1iZA5XX{X%`Vns&3qnoowu#N zXiNHQn_X=qJ&v7(9@{CU_;xps@@Z#3O%WtQ*UKRo{OoNB0& zjAkteM7ZtqC=!u@dkmX%j68L|fg;2DKRZd2=^IDCcou7h{KQoxPo8KMBj6$ZZH?9v zm}M!q(#22FBDYdDPtjA_t4zLB{sOa9{)V%k;v$QlX(|GHj}?kd6;sP9&e3}XYdBAh z7bs5QVhr_|DpXCT^c9yrqmsH_tW Ndf$gdrnB(?ncq&_RoVam literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$ValueIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryLinkedHashMap$ValueIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..6179bbc9f420088db90c1fea745d612241e09e70 GIT binary patch literal 1230 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 literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$AbstractHashIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$AbstractHashIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..e42bf0a02b6d7523074336cbbb9fae00cc0d70c6 GIT binary patch literal 1825 zcmbVMT~8B16g|^cmX-y|N2%Z!Xw|kTE3}B%ielxXQsJRZO?cauNxN9KWOqy8Klz{u zMDfA+?2|tDpbzRVG2ZFNvZ*9e(loPoX6~7D&pk7r|9toeAdcq}TnsBZx0LPbmReT$ z{;pbnzg_%7d{U_Bu|y6s$1L( zhCvxJdVO$XSVkWL4DN6w??n)!5-u{#oI&3j5CacBaUR-8iMQajTILqr%Q0uG749 zVxsdb+j)ZDvc6?u5%+*QB9MZ5|$Yz{;P`sYP$<0^l1+wLvQQIdWL75M0C^3>&Bq)G({3cE_A~q zl(pj?zhB%}TJzAq5B;>_r>`{ab*%FM5cHV?-EUQ`A5bB*DHp5PUYmT};ugMhQxt zV2Waa6o@vU?lF8q>|;xxMd0vJi*5dZ)H literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$EntryIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$EntryIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..a450c308f13689dad46855f890bb8954668bfeeb GIT binary patch literal 1470 zcmbVM+j0^?5Iw_ffvkokXuQWLDi>uFLi7PDWlTkr65~TC-Ul)TOOb`z9jy572kC>C z^1%=Ae=OfDdp0a=5G#bDmhI{3J~O9J_x}9z{Re;|o@xj%Jhy~2+TA1GGQ>&Gv`wpd z%zMV}z<$Gfsa;Fj@2j>Dd)#Ra9s5$)Ty|{@A%<5oplsJ2Y4e6us3Wil!(yAi<3?Ya z9mDf8L}bf!QtJ%G%EiwrQGVI9Ou5DIEIkWArp6H3=^lv~7%u715RD^bzxU|y(5T3rQ6`08n;cg9ymja1jCCNZg8rCR}Uf-vc!pGSWaguqk0Y1p@7(- z*|fOq+jN_i$x-F%>r%B=+A76~)pZ>=aFao63VGmSZ&210#U8YZ+a`o`8!H;_Fsz=N zs^czJ8KS(=5RNPE-c;h8Iq-kEc<*z@jMg~hC$!AEMf0-xZ?;%LzZD_g5DY)Q(vCh zUksc`xMFwMv6a7Le5dRu$)RRGa!eEJn8aVoD z1?i!IBkvqpn+VVkn9JrqL(k^E;_@e229Tit2nB)t!UEa4vMFT|OY~k)`cu?ZvIAIl zp$ZhCVxrkExb_XVKDv7&oZmj2=qXNOn{e(?mb%J=L4KI>?~f(Zmb!$xX^;Yy^>A?b kBcy4aC5{>7@FWsLp5|wb7zW8&4-o@;7l_aX`8N^$3m9dU-~a#s literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$ExpiringEntryIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$ExpiringEntryIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..1c8cd48e7f3dcdd331bf226915c98e7b4f24f9ff GIT binary patch literal 1365 zcmbVM+iuf95IvhXag!SAmX!OgkU}n~=2FCiqe@j(Xd#q`MtR?)tHe=iN9zqLf5Ruh z10eCh2k;w+-$2Z|u^LB}nncmYv$Hd2=FA@Z_rIUN0Bquki4?=0FO<^@j(FD*Cj(D< ze&?7EoZXTAo)3zmSLsG zKXPZNyuK6r8M3PDg~ewKoAudixs+e?d{1pLyeiEDP;N39JHe62f#H$`6AO8yv1B2K zJi}7m^TomNxFuwRxB7xe)PpwfH@Wome&jSX35K_GbWn_MCNX>>X87VnF}x_1r$HUR zK}yaYdL5sup`?!8*%4}ucW$HUZn=4y$_)!QvC3d}ggS_NDiC6HmwoPcoDZ#@Xsamn zj)j5_%^wCs*%q%oJuy3GNK)I-X$+sIp){e=xTlTt^yQxRlh9Uenj+(Kiz^Us25aB< zh1}`$FchJQhYZhW*QbefhP4ax^o%ChG8E3^$*>wvGocp~6$axJD{VLFRB~6Q71@bPE^%5!i0gILDH&~VG4_y9A+Z1g2&r%TBA1sq?X`513aD|@B zS{4*_mFyI*MNke!=$K69JFb6;4$eUSj)7!OLF{b;xkV|ukM*(S+Y`xjq&v`Urg1m2 h?u{zn#~SS)z@SycBchci>#;#?)3Zb@%H*$N;Xj(fe_sFq literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$KeyIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$KeyIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..5d6fc4c5d6bc3f96d7c23372da3898b22af2c2a6 GIT binary patch literal 1206 zcmbVL+iuf95Ivi?aW00YrQEMA0h|P4C`CNDia=E#|Xr+Vpy@ujd)r<54z6Vc3*T9 z?dA@=Zot)0l8^Sp`Yq-u}c7@uH;ZF%Z!!#2o#4d1ixQW{)ZZSA#gj%?R zRfhCCG1BvyqC0;O4rNEY^7I6YV-Bq8Vut=KYA3w9N!>SFZoM|mZ|+|e|9DLU>NG@a zHwc8>@_7`A$ixGN^%)wT_`8WR!|H!=y4wjP9qu&6427}FM_xRcQjEuAI_ES!3t+{f zb}3!-6g}ip$`&YkMr)lZRH~n0RjOZc{$pHJq<4mjzr|m@vXw8m@(DLS#CxYazs7j72~Qepan;>~sf2s9UW0-Auu&nIX^N@_$)N8; L6v=Kj9wGY&n=(*R literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$ValueIterator.class b/bin/net/jodah/expiringmap/ExpiringMap$EntryTreeHashMap$ValueIterator.class new file mode 100644 index 0000000000000000000000000000000000000000..cfcc0a9fb333281bda743e183ea598d545b0dba6 GIT binary patch literal 1214 zcmbVL+iuf95Ivi?agrM9mU6$g1jq$qC`CLts(`A6iclUJ<$aT`5=X8bt=CogE0DNI zJn#Yh4B`h6v&L1MC=zKN)}EQ2IeTXI?9V^ne*joV-9(1rMIe+j2={s45l2H$dO`1i z51p;le#eKUtw6~SEh)qs9`$vg&HY&HC?UBDr3r)K^$aL4JCTySt2F8fSdL+7zz?|- zE6;b1;|w{~_oC7hhV|yz&vL20;RT-BV0d1h1)$PqFgC+|Q2@g^3nubKWU*kOfFi>} z(+k9Ie9#fH#XG*BCYoWF`)w{g?WaLQH^J~~1_q-;r-qC`94Ut7a;2Hf%jZGQdEXg` zuA<$-p4SVwiX~B*D_2@=w@AdVTDXSm3}#QL-K6{}l}|CxR1Jv|+yZXmwuxH|&KXNB z+`$SFI@AKvGn&A>xEIEpGcXFb&@^#Wq@RT^hkgeUj$fe=J7y*3j8B zMr$VsgxvIb6p6^h1BSIJS{^&yM1^7HzjeCXu}Zq$NsLK>BTtb0<2fY=cuaSlr8Ng; z+ghvi;4`#Hs}!9l>lyhvGGDEIfmN-2!}(81l1<+nC4v3IBH5OvI!T6#v~O?Y3bl1zRY^`oIcpQmiOyCAEsB2($&XwF*AB=|Tf(5_h+S`hLIP z-*m?DgE|h%_!t$e&M1EIHRDJB8%O+|yPHj##xdy#19$Ja_nh-PzjN-nH^2Y=-46hE z;B5nS3fE+9ukUzn+M4OJPvz52I(ux^%J&Ti-(yz3YdGsU3lolQ@3q_+3JgRQ)*iR! zt-d)go#_k34GQrp&C!fPi)%Y+D>G?3ZaSB}bKhH)J%zT>B7pINILSTZ>0?>Tn{#Z1LzVUnj8*|Lh+aoNFfo#xm`o1xuR_B> zI-B+e6(Zd|lM2zH+_W7-1g$1ou-3r(CCmtEL>ogJTAQG-(S(WB3TsBwS^L1;?3C?H zSW_87T{oIbkqL`@a2^Pw-b~t6*ijAQvK$fW`lTip@&&V1F;HeNBtfA*m9Z^Hg5GT6 zGOS&NE^Ib%rNTuOQo?kma#_zxXI-66X0F>$OUB9`>pM7g+)jDPo+B~R(_SA(+p)ZyLo$|F+84-a=UQB6 zU)adLi@HPQek^FHB?&lEFd+naAU1{ zC4~~Ln*CN`Lh>yfO4GTR;*+96|#Y>r4GAeh; zyd=kxuTxUXWVz8wrEJ&jx<=v1iVQDr(G?0`Jhm#t#&dH{%HETf%e|!#DZAiRQc4P+ z4~*hUqC+Rx5 z{%cQvE_p{jr*PYU8d>)K?AkTudXAOygpNYpko8Jp11~DvvH~AVijucj*}Scg(j{^O zuPO|#z}twuPz+>M$;`kTE5olJTSc3z%jZk*^BKoh&42Z%LkA2r^1F$T?mEQyKi{mJ zH|zNt&g$f?OUXJ)CbS;V5?%*i9o9W^5_}6G(#1#tV_CKKg5BawKsKkErGW#O&?Qg-> z!2SisBR?{3il0UIB6<}Le2ngGi(sQTkN&aVud#DybYnE}5n2*IqdBoLdKQE4pgwwr zn}!tLz3^w`3=KqexE*L9{?pi?K0&AY6j!S=v~(It^_hki=RP_Mpve~>f`qbxtG8h< z!F2NH!amBPnwZOkKD}Rn`@8msyGFQcl=7X3Tws=>29&{fqroR3E?_h2eSv{~ie!aS zK50w0aXy9vwCE@Jpib*iN`>@JpYTHp@4!$WV~sx_*VKH$4SvuKvRQpq!hPp5?nNRY z2weX3Y#AXas_tYmWs-?r}W9`K`=vJ)XqV4f2L~63?*rKFhD? fSxzr-e2I?o9AD=63dh$tzRvMYj{V&K78?HnNymAy literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap$ExpiringEntry.class b/bin/net/jodah/expiringmap/ExpiringMap$ExpiringEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..539fb277440d575313520eacd29903fa25141c18 GIT binary patch literal 3831 zcmb7GTT@)c7XG^D%CHG@AV6*eFo~Jjgp7$KF=2v~4w{SE20%F?n|^=3=HLc7uH1;tAFwpXsKC}hUX&RS3`;8K_4HbOqZJ8|2m%X4? zCBO%JIh!Bf!C?lUg)}lsE0M=Ov2|GeP41GVsat%vl6Q6WM$H20-5!Wt=I;KT*7L4d zj6Ly6HFAnfO>@?=QdsckY9)V8LCq+{^Tl#87*+T<3_&xdtthuQw<$~wpYCF_iD`CP z;gby66X7n-)D7&x@w-r4hZ4P3ne$VKpx40x9Hr+n+36P0*$(!hT}ID2*l$P29i-4I zvgaKnkW3)M;qH<-g_G!&qk|4wkW6tjF=f4jCc>sP026?KeP z3SMd2s}^M*3Zub7k@a+Dr<`O#Zz*D?M)ziYtIHcYFYZ-Y-o{e0ucct>-k+){3}^PL zXe2wPkl*vMy8Y~!#POnoOCXlG|9;IY(K}t+LRTjjyp;vX6|>P;y6)f=T;q}DYH^8jMfh=svQ`QN$V~^gFs_iK_G=|? zg-|*(S(}@t?u?K~BbC`jg>!p#SKc)hpA0IKfwXNl;7#hSbVQ)M?%)pY5?#S#`zsj= zGm?wb4!Y4JqcRh-PN8Y%0QU+IF4I0PNL3g0W1N z#h$_}<`O7ux;`dXR|0>@fiH1LmU%x+(U%gOc?Sz95-LkWY~7T`k=$r#tk1u>MZ#_= zyN~U-MH;5nS;xO^s!&lpL;SLL+YL+xg{p&dIIobJtkkLn|3*=+zO<=nTY;y=p$ebp zZ(VB2fzU_O+sH<@ZflY>ZrB|g<95|wFBmCVXRKWIt0oowl>|Oi7}(*0v+7tK8^p|i z0`$`X5k4_C#k4d={=rB~mos0sOs+W`YqU|$wpyR3aYgd3KJVl%Hrx8Vi|fo#N?Z9H zz(MM;nhxPGCC_L##&6dB0Y}`yHT1cs)-d1>t>Kt^FuH~l?*DM|;Sb2J!FAVh>N{?Z zAjkJ}0#A1!syor5_hX;#LZ|M=LEVGn`T#QeAYS0UVQTAoWi0`VCVk#CTa;W}P@v>_j8$Onx4NCRlMI9DG> zM4v!RKaXC066bWr0PeRYLckFMx`BTZK#Z_o<47Cm4kZK z1v}A7-Tlj)$9Z3bynYRN-E#-OMlAYt@R@PrY1{97i2|A(3oil=Nqz6t|EmJUS& zKcmY8Xh0?mm|1TM%_vg_dWdXKGi*7u>KD+a&)|SQi$nTF^yy&?>2t{G^Ej_B;Ie)R zFYAk#(3fyWk2HDaUOkleFkxz@kDigBTF=;^$}S12UAxUS@lhM%iJ0>n_R}xzQf|B- zLLa=!uedZxk|c2NTaInT#6_;J7zozw$q<6%P(vc-`guo8ald5Cr!*>ge2g0J=lOc@ zGxo_R@*h0Zc;Kovz9MV5f4GquhZr^JG5YBy9DNHtdICrEZ4Br;P3e3r1Q5ef=0pz- zHlWCwKoP!#{u_FDYv3KcOE9*FJTmaE@)U_7CWQaWcB+YOYzteF*oxsFxsdH76I9f7 zQk~1^1WWWsc-}hRYc!vfI7B~0hn{IN(7DBcNUS>-@wkq=WN;Ta7q_-b-+SP)+1+m# zupQtXy6;`2^rI%1wT4EdrP|ip=m4^2`N&!)dGuom<+|aDF+39*j*H=ehD}RqjyC-! zd-1xxc-Yz-_GHc4leI3W^i^J?%b_Q;p`8|2if$e6OLl0};7lrVn>1+gK?Eyi6oiqj P;R)w*F)Mt4RV4oeh2Jiu literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringMap.class b/bin/net/jodah/expiringmap/ExpiringMap.class new file mode 100644 index 0000000000000000000000000000000000000000..180912cb352228a7f4343d4f28480f30df6d9fda GIT binary patch literal 22502 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 OY%C^R+ef*C!v71*YHYOt literal 0 HcmV?d00001 diff --git a/bin/net/jodah/expiringmap/ExpiringValue.class b/bin/net/jodah/expiringmap/ExpiringValue.class new file mode 100644 index 0000000000000000000000000000000000000000..7c43129f9e0019a034619b605f7e295223ad3072 GIT binary patch literal 3783 zcmb7GTT@e46#jNd2tq(i5R72Odq~h!MMSw&1*{^Vm5^3iwTEyD2SXCWiI?g0q5q*T z?M!F-Qhm{xcBa5gooV}|GyN<53!U0;?URHMB8kj!_CEWp^{sDRcmDqG_dfviVbu$l z!jY6|N0-wJ#!}RLlCiQ@YH`KLM91^{xRK16Ubq!nmyJh8G-;$3qc`W5&4jJcGCMsp z9=ks_d;4{ERYaG~V4l;Ym;B4G+ zxE2P+P*}RX!A{TEa#NH?);S&YVpgGJvwNK5D>*BzFJJ4MVYm@7+>wTw zEAuiBD-{sK7e3s@JqEn@#ldD`}tqbH!t5@Xn3zz$xHg3&ZD>$x10BEewT@;$VEGi}x*wg~wL7Bd!U4Wf zDR26NE#D3nzctgO80{_^J*16VG%C*IjrLYBdW_J=wb5=zbemBzFP^$k&HUk_`6Jr= zPc-kL`Hpa;JLnddgYGwIdWEBRHgNn;@!zfe_j3i#Vi$jvwcs3;&udCyecn-|)RB(^ zA$8CtY8^7{D7Q&Yqs+Sfo6pDPPtl%)Sf%hBLpAyVDucfMAzPS4d+? zV>(?S`QAJc1N;?+5k95eO5ys-;o>#IeS}LzIG1Cb?D}64zm(lvjc}K7r3fee>Nq=4 z&hB1~aJ&`saC2M*E+Dacjb>TaG5#Fxx)(fldd!Jrq69p!Es}B~k(7S%z_sU+;PRg2 zQ-b;rp`>Kz!;xq3xL-tGqb0nK>kL+J`xLfhE$hIEf#SM-uyx=3vZV2oG_Os}zSbz2@^S zkt3^Dru6|f=Pf={>01v-H?2bRa zfzQOdb$sr>zYaq@lKq0S?_bAPe#_Yp@Vxb#bv#%{YBSF*I*N}G!V_G;xN~x8w~McsmYLd zYPW@kIL1>rhw}^*HNz5hue&GYF5fc+L#}4)+-!1bsC{^ta1V?g!%FRciK#LqE!(Yo zrpa)xSo>a9HFDB$m7{7YaujGMknx7mvAF9=l67l+_rckmjpFX^C^R}vVv1pLNUhZT zY5Q&4Jko{Z8n%_h48z*n}8@C-Hxta}?7GIu4EH#t3OE+;y^_SK29LJWfXz!d9 zf19v|HQ$SFTWuqNWiM%RUD50D4v9Y3bGb`vX%yM32!Ci>@vk%Fhx{*0Q*^jVMqCl$ zox?^75Aldbwr|TWr;qXeh>?w=h_Hrz)KFD6G-vuLT3@yh}Rbk1>dXZ8fK+#H$44dGk}ShjbmBEb0snUTD&Ep4cn8t z*fP|Mav^x4ZYmhu2IbK62KowO>J6fOl6GsfGIhGz$Jhr7V$kTnMk_Fm1VtApN(D)@ zrv38_CMaW);ux|%(2)-eEUkXU;sCkU0Mo7VN6hwdC6_@{3gYL2=!ZqcDLv+4wfgCw{eG3l${10Ddm~@_ec$} z)++b$(--9{9-*8f%4u>k6QRuDXZ%8WO4dD}G9*aj9q!{nNWiI7^)W{TlLJ&+tOyQ@v8nsds~6)P{-6 z`fc1sH!Oy}RbPsP=qBH82|aS?@m8HjzK+vFL+$zp40Eghtp)Mzmg0S~VTMwc@|(7l zx=Gc^>>;?tZ9KtK+UtQ(ueb<8sU?1^ox{kkLmAw8EgCs7b*CrOWs_?+ z!gl0|6<=Fm^x`iyqnC*Za!#JEOUR+1twg_RK^uvlIXdrwP4_Dl)nU*HFj782Z}|)Z zTgC|nk0`DjVeE69f0gb9$^(gNP>p_yhB1h18keAP9XBY_vF<_yaTB-F9+LX!>09Xx z#jQ&D3&xCZ$ZzH8ZR8k}rsKf_QtqT;xmRRjK>{|Nv-pa VB`n|>b($caRV>E*p2roIegUS;B^&?% literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$1.class b/bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a5d5010aa438c82b35dfef954d41956248117499 GIT binary patch literal 1217 zcmbVLU279T6g`u~Zn9b17`1-1^`k~jQrm58)rS;8LyLh_#YzR=CY#A-+jT~EXAAmc z{11Xw@xdS9UlBxn7V*w@p$PUNUD%zO!@cL;d-lw?KVQBASj9aHIfj;0IvBor>yCId z@Khv*+|z-QvHK_kHZtI8nD~LLwJa1EDm#3SyCIjp`=q}kJZ)iup?ZiuOQhueP%upB zQ4rUbsZ?*wT5U>R3uK`0GpyFf&Teco6gp}kN?CHFc(Qx`QjYO1~iHdt?KWyK6+a z=Aee_3?*Oaj*`Q`C-!=yry}3&C%e0WcD)o%B5sW64uep*8}vDd&fsWlv* zEX5Qn^@Bt!Q`trX3l^Fr{Fo&i+`=M*O^rTODimBYoUQi`J-(%*K>F>*ONO#3HAuxH zo3Jh!ZcB4-cay))9As~)B=UqAgkk3YmutyzlPA}u7pj=JH-#RlfrC57utg=;vpeN< zr4&&o!xJ189@zlg`3Z$$SopQL16GqY!B&dl!Lf4~0#Sio}~8pEvgLZ|)po7Lrh%l3TH=62|K zGO$(?U?l-wy8VtL3v)Ws47rbdlUpvA9qUE&qp(9ABMkXn^i^L<-gE`SNZ56P!VTK0 zG2~tqTD<5;CtPA!C=R{4w845~&$kD|fE1zcpvc0{-?{7vCAoG6wW1AZ}F8O3E3bWH9giH#<%V2Vmi zBsFRT&lT%JwiMU&UM}0~^|)+ViB~QDjh!nh;i8EW$_%4KRhL1?rA-YnPb@=f5V2h| zaUC;pcC=;N>BL+E+1U}?_ql3etL?bLTA@$uoxqh0s2Rt2KlH8#d{fLMX&9Kpf{uBr z(2$HKZsJy=dgwcn;+iTpcF)3k1XfD>AytMuChp=Mbz;j2KJ(D-COR_QE)G_1SM5mk zMCSdRrFTmDi45-V$+Aby!#l#j15|Z9WH>&MWv$Dp)~@H9c!V0mc<6H(xI7e9Hx$04 zNn}>1iH^b5V(ox^_d_bZWfLoSLhaP_J>If;5U$0MsMg%Sq*P}x*1f)O3spIWa|ho; zGfG|(ZCTo`7m(&_BJ6rC6Ag8?bye7^>oS;iDTQBic@T&I7wINQ(R&Cims1x4-Gmyw zSr~+lM)#r?Ax3%nC(QCM9QhvkjL~<5e4uS0PjgevY1J_tr;&0&E@AkBbY!cRf56#(AQI_7=MK4wKq@ hJk&l61W`?bNMV&i(NM=z8q?GS&#)E+$)bR0`XA<4rbz$* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$3.class b/bin/notifyz/hardcorefactions/HardcoreFactionsPlugin$3.class new file mode 100644 index 0000000000000000000000000000000000000000..94326aea4a9dc907b28123e662c584e25452f025 GIT binary patch literal 1899 zcmb7F-E!MR6#mv0k*%nWo3^2}g_aT=J87bp1ZbNAX&`&vaKQuc4m<~U3}Pzct+mU*>lc*=Q}_8`@cW`0lBo4Tn1WLxvW+vFk1dqe6AIRBd69z-+IscJ6A(y_hz5iUeiHQk@=@aRb zu9SQ~6buu|VGz&WqN|#xyla(=?*}qSK4(~|oZ7m&$6(ZyCyHP=W5YzjLLO5#iYPJU zD_UWy8A!3!?d*$aw}*GSsaziJ@hH&mnb6QdFf5-I#OyK!k&n94!rOSq#3csjlq}e| ztl>_^BGJfnant7bvj&nHg4l1hV!0?Q}on3{j4xl$HEz+t*^SOGq_^oV|+rT87l4#?qj%A z8BXHBq`FtY9frA4nidIp%zY6rMZy~T8ar@5QADkB| z3O(Ub6SVkC3R?QYTc>Jj#{*9$S`^?olhoLG$P+%KyxqqWD5tSKIH2w(w-n3RoH3YL zZfH1;(#F7OKwca=82F{Uok_!M@uO@8Sv#s5xk9%vb<6niyrd~3dg{^*RZQL063LA^@}gd9CZSR|cHzYn=oV$Co74txF&oPCw*oTL8< z(t!a?)85v5vO13ov{EoAWgh;a8}cOEn*R;fpN>%Yz&qxu?)P5r)b zjO9|ffAVR1a<_H!HNJTID+*0IuD>FmGpJ(|UuJ7FTes*$qbpMsF!C@B12e`1%7%$0 zqkuJ|h`M2+VN9ZBoK4Zs>oBmDp)cba9^-4mzedbF!45IdAdOvoL$W>6EF$->F3t^u ZE_+IX9KOYOv>JN6;~DKVftnKf{SWfK4m$t< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/HardcoreFactionsPlugin.class b/bin/notifyz/hardcorefactions/HardcoreFactionsPlugin.class new file mode 100644 index 0000000000000000000000000000000000000000..ff5ffbad0b3bedb2c5a2e08e6ada82a7089e2f92 GIT binary patch literal 52426 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 ee+9wQwQf0f!uu>jCDZ?OZ zdxb(#(`fZRU#pZVZyAEcTCG|m$(@o`U>Gh|_I4KP`SM zQ773#>%a^nsDL4=;tuXIgtEPqiFo;@GtGA`rJiGFP!U8Z44H!|6*3254rWw@ zIf!uZKt+TDg@Z>b6omL{LB%jshS9R+n3eX)zUl7j`?g6nlv{>w*LBz8SZpeg5T#1} zBg>=W&UCwN(qb*17_55*%UG4M!Z6m?Rmbzq6BQ|}F+_CN)jLM(w8N0>@4dQzY#M&1 z)HjYlTQm>4E>TqVkRjhs>y0ci&?WJ9*Hxsk!LZSW7-EX_}IF zlN%&@d!gJEHxxjTyd)yoNJMgwh-4mMY?@n#7y+``EsPLN<60xo#iZ5Wk zbkqWyE=h^kNc7_UM~5 z6;7Y%V!rWCN?tXxyuKYNc8R6s&-CTGjB7O-zu4g#X*}&|Bq@iVr9@fs63>2s{hKFY VQz$&g3lU%96=xEkA%oYsso%)#E>8de literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/Teller.class b/bin/notifyz/hardcorefactions/chests/Teller.class new file mode 100644 index 0000000000000000000000000000000000000000..34ee7943e8b7ba03b18bf5d986b4d79595fb7f4c GIT binary patch literal 2910 zcmb7FX;%|h7=8u<6T+Zr1Qctn+K5S5q6IhN1|dKM0!mINi6Pp7qP zc9FfJS_Z!=u^!E`Osm9H&FR^6X?@h68jFua`!0-hb`8Y*C4~N!rurRI{f?>rk!$ms zgtBvSB0Q!WdhUdT_P~bi3yw-~Ma@aggL2d=@S;vac_27i1qoXfRG`wsRfB@tKOCHx1f$HEu!U>Ekt*exNv!8j>+ z27X3kTFXUEV@jWv&=v>|nAUW7B0oE;=fY`QoVQewH{mHgqlJ4oIbWB=5jPqo)Y+g~ z<`_wJTFbUN@%JErkc=R)ZBVO%CNw+PoU~y+2Uh1&aJ9&TR_vD%mQcIw&ghIvBbjju z4&Ye{J93t4WHV|`>&)ad%izM^7Ez`5_XVP>HLr1*2za{!8SW}xdq}}y9Fb7bn~cR0 z66%-x@?QjuSSvadL~u-kJ7+H1S4-coDi(3U2?bT+0tu%Sc$}-c6hy^U<;hsL*oi5q zc6NFd^obpJcW1KyLTUT70>x1=pr8hBCS{J*FJUsU9Any?n^TR+aMYnG&6w1z$olp1 zSSH%l6RVn%2$S)i)@39^(>Z)0)%`l_s$8 z;xf*$@>Y7UE3ap0fCuMsLB@-ZwK>P@3SNRrWtY`VUK^TPkz`IQjI0qB56&Vj3V)KR zzgAw-W@?jmi4SKK=(xz1qt4IMqY_%yI6so~%S^_^dnaSF1W(G$TWL-7TL!>+z*@x_zL{~u(5z@i z&1OZja*1aRyXk;(KL2j`!~?{YNAx9|vVGW;&BLZ_6*gs0uqitN;PnXak#|v(7f*2Z zkxQVAe_&JSA-05?enfq!h;83fQidlv`}jRj%ejtiYAd_THte9J-Z_P*u#+6m+o)I* z;!!N=zC*<94CwMUhJHYO5l{Q}7O`&uEf3IEz`-JpKEUzC#mNFXZAo_lJ@z8LDCu9q zvy)Z>dx*%-yZ54z|1kF92;ZVk1Z`}Jb887(6$WXgZLQ=dq6(hB?Hfug;JKzEMq0lk z-^n46ioM+&0gf=oAr1mOp16k{1)LX7x zvqcy!Ts3nPajC=QZESGS@D5j~!SxfYG6<8(Z5MYj96%engJ|Xxv!BMap@XXk=i@lR zeJyLi*^oI&~gYJ`u z?!h%i=4~>rMdm#+?nUN9G8K!=CuAxeX8Zwe+$Ux)8i@Zc!_~+D-bIMkA0j)N z4B#-Sm6CN9> zRT0IhC`=KJWp3s?8(Qm-D?Sx@d*6r0&^+azc$9H9jowX8MQnW37&e?&>gcu1gyJ(n zw-Gr*&7`tuKc1JB!Aq&6dByOevr>lcn86$BL^Qx~DTI%DfGXBQG|*(Ib}V3h zB$aqOpG`#mo=-Bt&>HEOXJejAYnM*XHpB3I6(a3@+YFCm@zF5sbVmP9Y_PE0RF6z9 z)pXE3u49uS=sQLFXR|E8P2BczYe|CzI>a5^WvC046d$BX8LpKDmQzx{i6m9lmaEf* ztY)_Bb9GA|MBzx!^Vlj%h|T}}jJ^$`As(nW(*=<~6eiV)k4FqoR!}`e*Gl7MnkNk5 z8>K`(%y?0V0$ZeFmG%X&X48sEzq&%Zfq=Xh-5;+wPte=_hOqYoYhNAaGMzQT06nzm z4Bb1x6;C2u7AgkFZ8V7JbcfEZ!I8YIDv7`k+ZM+*mfy)Tx1&$ Q==Sgs9V!h+)Y72!7dl<%kpKVy literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/VirtualChestManager.class b/bin/notifyz/hardcorefactions/chests/VirtualChestManager.class new file mode 100644 index 0000000000000000000000000000000000000000..ab351195569279dc16bccc7ce3f92dfca5f548e9 GIT binary patch literal 6225 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 MF}mO`Tssv0527H@D*ylh literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/commands/DisposalCommand.class b/bin/notifyz/hardcorefactions/chests/commands/DisposalCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2d3329e1443a6b93ec731ee5e5e2e0505e13a3c5 GIT binary patch literal 2669 zcmb7GTUQ%Z6#h;~7zjg4(?ZKdOaUQ4VU${}gx0nx2+B=@w1T&jZT|l6_dfu9h_Z$d!+mMH=62;L zV~49;)>dMhXI;~lj*;CFj!Q4QP~bA>7*9>7Xgl0W`34PPhK^lc=7z;(-dM@(ima=l znPI?Ic_UNW+cVwc?MAR`_D7K|xwc|xo-w8AKBNi~ix<_fVJf#onZ1gZxa4`ElA{|8 z;gp>dQ8b}VhX$RYDdCx~E}Bv-mkJr7)_KMf46#K!%dHKrOz%4|hTR?0VVJ%!{do{1 z8T2YjK}`(zE{xTv6^2$@1^_W^Cl=4gFD+z_nty{wa`E&`(ylUPKDl+)G`bl@7j9{| z$@LrEIxv=KWYTEXY>PCB;3VGPX@i z7<2USy#q5H6=}F>%Vku^d+J95Hj+r4jojdx zwqX#9I+naE*uKM^)e{_|SizSXRvE61b>G(p577{uQaf z@sw!8GkmS#d3{LVRmUc_NT#z&P%8_vOxN006^5-ko}0%D#)-?kZF%yy(5T;3 z(&mtsFZpig2q4X}X3xt5eV`WdU?Lq))nF=+PzMWC#v9yeZbdAf5u_}!vq+NaaFr)s zU2iZqs32eXXl&GGs1s(2AFo|(fET&6r(K@iTjIrF97of3No9q1lj%Af^C%dLlipCH zal0U;P$`Q$j>r74C+N5h8vOJZp?_;a^w!Wq&sO?+K<^N}BV)fI`ntN@PS0r77(*D> zafQCSd?#E*2Yrz{t|3NS2?E^kL$O}+)@ZGK=K!6t-UGbz3VY*!Ven^M8UGdU#l{aY z5#AsF6NA%{?nuY*A?_aFlh}g;e0qr4BYY9UE5r}6OpCp-^&@PAG2Pr9>25y4Hz7Rx z1wA#}emLHi2_d}Sv`?9v;MG0_ot`)8*-h2;pbxz?Z~HNXI35xd%NW3OV%Zj16h`1; ztlHzeU;RmsWo#o)y-`QlfmubMj9u(e9?xc>KphWZ6%sZfvP`J;p@?R@p!Ify`~Ss^ ahQY3XC`gD>dDuIY&V!fqj|N`pQTP7@5EIw{ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/commands/SaveChestCommand.class b/bin/notifyz/hardcorefactions/chests/commands/SaveChestCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..9c3b86fcd02e4562567fc6d501c98761e9d88f11 GIT binary patch literal 2936 zcmbVOTXz#x6#h<=bkcOV7_O;Y0s>82+CfSc2qHAJHrmqKG*!UcX>yWIJDDjn6Qp>* z-|*1~TrOANeDOt>hN4Rzeefr_TrT&SnbMRd6kJ)EnRCuQ`||C*zjOZj_qV$MPT*?= zEexkj%hgMZH?&!97YmjxO1$9emg#7PS>d?!vMLpB79B0euZfJD%lI=2!VFvI_%*H> z+$?M3GjpQgDrjXmXxU|LraC{byDR&(VAs%fQK-6>&7gV)#<r<6$+vZTSj$LT&z}R zggwP)48af|wF=yr=C&@!!DQH-)g6ZPhK@7^l>%zB%m6EfQfjn0lsRD*g`IwYM0#{J zJvrCb&2sw6`l+tVG3-W%f&@cHb8{*l#~ucyEZmE{LJ(|Eb*)zx#Xbtbp<40M8$%KY z6&zSoDZVQzp1>iR7gs5%PPS}P@nyI}ig%>e>y=I(K}taA2i1kdc1!{t@-0r3*(@^rDYqByAbXEa_!m*BapDbk*jvk+hO-2yK`i zzH~61j^Y?Y$^)sl;OPlg`WA#;(H)2O_SWHe948d?Q}B;yNW}o2^4;}uXE@Rb-}R8k za1y5#oT5zE+04vxircVk6=|Gd*yGyVbPVo_^M)&IlRms<*;3RCovF-v%?;|N9cOV) z!Ltm>I%7eftdNIa@hZ;C!r3&-or!x;#gM^}f(s1Cnr77l+tI47ZaCVYM^AbBRxym{ z70<0S<|gFPD=nG%K} z>_bzF3qr-qxI}D_%V#n}IWp7Ryqf~t>vpFVTw&OCKRXRpb%Q7^idV_iT(wXTj#H`{ z#$r-7LNOV`WxOsa`i&+eF)bx#R1`pfw(^AqqDXSBVFH^Nr^YN1Xq`^dbGuJ!oK>Mq z?u)vX-$OCXqoTl|UV1ppRG6^npm7O7hT_A}`ok&qlF@+Y{k&dPVaqf{h9)P+C!=tw z%)L@bmMlAY*h!KR`mCBoNz~U=you`s94%Hj$)0KeT>Sy!ANlD9?Ht7oq6QDa-U?-r z&UmNKw0c*$O*Z`7D&CQ~Yoz z;hRMGZg>edd$t}~#^D-z;#v()F5~Gtc%}una3v8A9bd-a=}02-C;Gd8!Inhi4n`Pi zxY+YErhdoeOYv83<25N*1CI-O)KFf=+z;p{iG{cm{sW;)At{hsM%7zMtQuTgG5A&s z!as)SM?QuiBRx&Ag03zq5)@enj?xWf0DEbEA4aerWvb~pLh}Q6JSwG%;s4U@Kyhmsd26&%#Nrad1AwKdDT_PQy5UK-2-k;(#%FgGsz8R5!FsC5< bHxfG-qdi~HYzw}`SM-+o$`e=IJeT+n^z~Ww literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.class b/bin/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..609b5ad9cc1568a14573a9563374c9c48b670901 GIT binary patch literal 2502 zcmbVO>vj`W6#h<!9a=FjUlor#p#UD8{=ghu-=i7Vd&wqaV1HdJGuOPy3&9XhC z{^Y6FJEG33o?%M0mxn6jOQR_SbP7~Zx4E!0|iEUF#Pb{JIO!wR=}L(uke;h<2;hU0a(=?4+2nmKL1_rD$XkTL$#kaISR8LLBwb=lz@Q{1F{R+_D_jX;QSmm; z(Ybg;*XrgQ7V%H#E?FK)_ZpT_P9v@00)y61s~8|@A9cP zIVEn|j*1)>7$!W2Tdv7Hal`b4W6_KMSymO5!-cfoYk3dm3}F%16@0`nxyxBtD%<@d z;Jk_(k~v43++BT%RT4Uu6nsp#(f3*dPHKC!5*5q%gj#_F+;0H+1oF78;8TX#gY2yd z(-h9RwI^+%qJR~ulG0sWUn-Rt=KGT@jAoa1PQe|9(f?NM&5mJGsmJjdH9XmgYm-S7 zQIhRytxvg>r9@f97xjLAnx%5yWyQC)w0K4LNMt#E+2IM}e@6y2ZM3@lIeQu26pV}-ZFd6g{L9j7W}YhpMhc@;>9<0mU=NP{|W zS;Emx?z*y^W0K`KOVcq*zXAHCG?UrdDp=WaD1=N|@UoiZmFLRvM zqofNQM~rk6I6*6LDv+k#N!pQ~Z05KIi_z5SF3vo|!`WlgTR7jv zY)b3m-7UQTD?W_i8Rlkw#&8!muMEuogj>I(crUg30-uizba6LzuZss=e7yz!1IBhN zG`1}m5yYNHpOddB#R*LL8ID4wNqHV)$YLC~X&@Fcff~-BP7*SU#UQ?ySu|myMbT5t zuweT+Hqpi-AAu$uxP(F$r{SSP*=>@fg6Q8UjxZAbjk)n@O@|GmEnuYWyel z4|v0kULf_tM{oT}KI-Gy>_Wp6XsH)FJ9FmD`9AOY^WR^81MntF8e$B0r0d(|#`k8G ztCHm^QRbF!yV5hQs_=aJxwRUXCC}V+)lN}JtC|lf8sZH75BVN99WE>8a`BU?H|22qgS)v39IhAilKAbmbO2`(2>q;FvRn2NhHyM9vvFG7%miSDVFNB zqEPF+=m>^X!L_)v!Id4HBVydI+8#r$@V_0&F?72!vX7yhE}U)tnvf--a?jw%6`qD< z%~!Up9~xS8MKPE?|cDb1?4c8d1wAd%4Z~F~%#o-O1x^W$^X&7Ue zcwX?=h2sb{w%*tkI>vE>Au+qUy1dGeeQx4f-sZZHVYsy{orba7w81mD5=KxDhVL5g zu8_u_t$cFNI1Y&LrjnRIR>LI2`1wrLF$I&V(kH_iO6RGG^9gRo;FKcCY$WjpZfm&3 zV4f*zKI+oBs7qIzdc~GHwewpHJya$O((}2rD5JNjR9;X{E->L89q-}}6%IJw&&5?Y~2&t<2)tt9^ThL zkYK)`G9CADKQuWkbjtH-1>IibN#rrB;X`Vz7M=MjC*K`c>6pVu48y+S(sQ^k?mNCv zk~Yoj0J8{uZlv?=l22*W9vE2A@o~_Dy;bh590ww}Ddg;iIhg@QN?6x3{~_E=IQa#f*7Upxg%$)FGm z2ufQuoWLrQ-@E2>YiE(~Mw27C=GK)Zg32Xdj{_bJf~f$;8T17yg~~hJ^MXvr0|di0 z(A1(YL4!0#f0|dccGJnEKcj!*<}XP8)V$Vd?Q9bJ&`WzgWI!J-(22kpFVPx2{s(d5 z1j>^KNTseEVCXTnC;ou(1NtU@#%L;ih@0{KiQi$|O$;Xb#}D!P0p3pCJ;3xKK6rxp z7#^d4Fu~$a@Sp>mKVqnbZTX1plNjRr9s8uIgRB7|T@S4(+7ARn3BxpXMlgsm8YDAx zn#WZmeiqp$?D&#^^1g55U0An(SgPrt-h6u7U6 h+Kc$e-gum#_$ahW8kC+ND}2bp|*8z@INXEgJ%E$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/listeners/PlayerListener.class b/bin/notifyz/hardcorefactions/chests/listeners/PlayerListener.class new file mode 100644 index 0000000000000000000000000000000000000000..b92375e6407e7395fb05ae6fc4dd10b4f1a40832 GIT binary patch literal 2571 zcmb7GTT>Hf7=FH-HYBTH5EYMDk%ow_N3;Z^0$S4sr68#EV3*`0tSq~@*)W6G?M#0_ zZ*->9X)nrkXQ~}~(I3#i(Ld3P*7o@}3r&>N>BWABH}Cm<-uKIIuYUOzz(uTShzMM9 zT;Ez;e`+k5UZw1Ma?vdNmh04v@{+9iHN&=QzI3ElGp1~FU3#VPt|2DS_1Ii94cm08 z#@&U-vg~U}2=uyM)mW%6FI&DL*QDbcTS5YQpmx%9%&PPRE|uP9f6ns!x@nIqZ$h!W zQe#WgyX#Cy(_a!0^8)FL=dNy35~G%5`2_(h+up?OFy>of%u{x~YB~A#0%1;e@@a5R zAU5t+WC~Gq>Cmx9AetSV>wrMF4h_i^daz%^J^`a`)H}PR;{bXEI;zqicb!G6DsUk? zSZd01IUv_PQx(rxv}|eI;?m#_$@wHYQaFsG8jjG1|0%8G82SWK^kK|(nSMv0CtLa# z0W-d5Io15&yo&f89UVv|kye+JI?_l9be1ef-l?xFNbjDxU`v5a$t|1qoatHW9ui~z zl2sEJd21coVUqyaw}t1{+6tU&uXX3#Q`s)pX@Eb3+v#j`>KhOz%q@RCY?6TQrh?J<_(AC4+_O7kG-iX5WHy?cblk)(fg~|E!R}_dGW0lrT-~?q zV6NnqL$`Gl@d1YbIcFW~NnI8zuQSii7ANv4lyFDGBpax054P`e9d|L+@Ml~NB!Tl` z2L$c}7FycUauf($Z`~+vo#^j0?rE42INFrJ9XNH&g6Pp0Q_+_z0w=P?cG~&-jBl2g zsr>=wH9Qp9-I^yIALA2_B(uWIv@~vGbhB}lXP@bKgwGpRXRN2}Q4X=9O51{tGANt& zA4paZbx9zc|;7dNbJT5j9DJokKL(`Tk)SxpwpBkyA~C{@l;#%niLjCU@#3 z_GS*g#Gw~B-ng6yF8x0S(gR%g(SllI*iY>Tc{+p>d>Y;*wXdNMSq$<<&B);tt*Mjp zD8lm)PIEs)TADY5-`RPbQx1u5DX!e!pd05Wb3dWKpqA&@&F%PeXwePCV#Bea%#}@y zMDPshXdyZr+rYq3=Gqo1Rv^m;x`#41LQ*oSNJpNbK*i%Dacav9ZQ^}_m-uib5gpbx zu)jCno9NLt@lgbuxF5m&FEr7k^(Hp)sla!C|K1aOhOTBwQ{^NEm6JI>&tMkfILSN@ z@VUz}@*7!B6`9Ug>cM}YVOn(mf%G0q_~eVA{trNpxpn{m literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/chests/utils/BukkitUtil.class b/bin/notifyz/hardcorefactions/chests/utils/BukkitUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..806126949e94eee98bc058ec5e208ec6e7c9fae7 GIT binary patch literal 942 zcmb7C%Wl(95Ir|`Vw$>5nlyc+1X`ew7rm%LEC}kNm5`9!7Aa5(Slzfci5u50_6<^4 z^Al{4Sg|b|UWwN|D&i+?lyEXCCMK&u=FH?xJoW!End(mD3))=3No& z+kPP1!d8y&h1~ASP=&m&95>{f{a(*ePw8zyXUHCiSAx63>+s#yfwUDv>Ve}qYJ)*5 zSN0h6Eq`C8p<%*A5-Em^<#=+Zf7p`26VY-dL(cMT;qHmRiR|A_U3Hz1Vcq)Qz8Va3 z9jSKPZI^%^yJ8@N&B2a1B&4;nb=GiG1&-HgR4hN}@K!t*AIoZ_F@wB;9K+1WpWzBj z%%VVnKcT4SQn~Wt;-Zt7$D)A+hJ}%$W56bgSYj}!_OS2Sa^-yEX_Ro)z?HEp42LqY zj1}_Bmwn-ek2)URb4!G@fx_Q5@SM)%#S6-vhhdoZM|VjBF8yOXBEV6+bB5x@OJJC4 zDq;7w#Zi231FH<_rr!^2`Ot|-kvU`9T68n4fG9nE;-nerWc4#HeT>6t zl2JI4lO)aI2hvkyO<)=s@&bVd^Bj4!U@!V0aNwp3jhEB literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/PvPClass.class b/bin/notifyz/hardcorefactions/classes/PvPClass.class new file mode 100644 index 0000000000000000000000000000000000000000..81bd8164b423d28a4611de7013839589c8387861 GIT binary patch literal 3134 zcmbVOX?GK46n@?`blP-)Qc96ppe$XIQi3cBrlPeAZEZrO8=#2Obec|?&VN_=sEf?#OIxvkO@{QCg)@(ckcGw``r7^uYdjcGk~M`TtP%2 zZrQFew|p%*uQ{_>+tKH=tZUd-A(=I`LP0Mi$Ck$WdQYq$N$w$|XKiUYjiFP2oHO(u~MTRpGdbW7w?V zVS%k>B)yKKElW5toWOAj`wW=2xjzCjqP+)IJh68!34yQ1zV2DI7r&D^WVgygfNzkv#fh>6ljcH0j znnb(%IMv}ao>VXEVB5xIEKk9;qumJbyB_$KMsNz{@zOO#p znlo~~uTU{K=M)#&E4hp23{y`I^2gT>#Hku&$?;%+9`vr=aQEVFF1lHvdw^>h>MPun1d$MaG13>6_QwKHIb%6?t41XmK6Q zDwvw9_nIUlS2fY{v0R;;)sD`-&^`!eD7+#9Q4Of9w0Xs7i(vsp6-&56nWN`TEz4!s zAD%|0;f%9rx|P*ap$HZ7HR4DPFRQqQ=eYd~x;2~D3k5Al_Z3U0lqe5@YKG@T3N(i| zM+NJ-WvX@W4CAQgm+~G8_F~-CvX|0YK3L4Pwl!&ajb3N=xnV}}x{5dOCJVrhPAun{ zVLN#n>ckpDB=xuoPUCGA@8Df714m!9m-Nb6>{xFWJvZ^G8obX@ujFabDp8eFZWMa+ zdDFnudU*(a@KzYh~N7^h-J^h zfR8fyV`RorLOzZmz7$;Gbq=X@0LKErL+b+G+OmtU-5;>SAmk76Q2;#2tDtOy?94a3 oiFkeR*}lUIulfo>y#+qTC%26yZG7XCU*BQevZnE;p4Ml70|&AXBLDyZ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.class b/bin/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..aeb23e83bcb021a862333da8bada89889fe6ac9c GIT binary patch literal 1105 zcmb7C%Wl&^6g`t?W1F;13w@B5KnuzP>J2Lzv8jr>h)@tHQkN5F+6*;zv7Jcat9Yss zNPGYvg}5`el>}(3df_`W_uO;t>(}q^KLI?&qard4&pbbpCzB8MkOu?D55x&~BI$df z?YKM)MQDq$@S@P}j=Kly*~s1aElX73Aso4tIMzkm{a19@Xax^CB5dk|ylm zpo~V(Ko)B%oppw-D@YqXmF1>|A{MCDXeg<>?dzp3ohP-h5D$-NFE56{JQYzgGm@;; z8*^Z_8ut81%hLcgDD5I`ph4&jxSLDg5^(i&0vN81pP#^YutP}I1)Ho=%QwGb<8Qh0j9fmEW7yS6J^TZ2i2@}6 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.class b/bin/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..ba65096073f5f3e29c6d5ab71dbbc5f14071858f GIT binary patch literal 1111 zcmb7C%Wl&^6g`t?W1F;13p6Dyffkep)EjnJfQK)gfyc?y4P3|TJE2hbqZt#Tx&y9ZZGEtn`Zu@H}si2q*>gL%qjGBpyd zH=1)`wH)^RP|KGAYRoZ1Iy;8P#BiNa8!v)!=<=sRjiZ|K%r58N8)xF+9(5>7`<}t3 z8YZ18s$FFB^e@36ze%??A=GDnhxPgb<Mp(gyQ@9_j;+lUb00f|R9&#iDz$v;3#xz0m1pGgi5$bOPU^vL%Gv~U literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/manager/PvPClassManager.class b/bin/notifyz/hardcorefactions/classes/manager/PvPClassManager.class new file mode 100644 index 0000000000000000000000000000000000000000..32c024e5765c680d13026e82859c1a99757083cc GIT binary patch literal 6540 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/Holder.class b/bin/notifyz/hardcorefactions/classes/type/Holder.class new file mode 100644 index 0000000000000000000000000000000000000000..66e2ddef6716743fcf431fadd9fbd01ce5640d3e GIT binary patch literal 1408 zcmbtUYfscb6g{)7)ZHyC;A?%058Pdl5yeL=ArTD0q$rVxpJ%&687S?h4-))UYEYve zjGz5c#@p%g&`_25p^ur~bMEQA=g#*ZU%mpE#3KU*hA}^g)!NP*zAnPH6NGY2II#-+ zh&!H$A{p^`rz81%;I(CFpvW+=A+`nggzxf~tqtkK26`E+T%IUpZ3RTnJ7KV`h=(t3 zFV3d)87)I^$4gx0GfddIJo8x(!EN$k#l6HaA{ zbkFU;cP%>zUEWGIH&x6dQr=EH>gtT%c$N5mS`};BD&qn!8Mw&6kJ(lemvM#aOr_cL z%7XBPD?^5<`X36iSK_TKdf#bXv{k}2TsJVx@Hkh}UpP$Mz)gmV&^^;WW_Xg{qdhu3 zNEwJ{{nl8LG=jQ;+y5ddhr>hzO`3#QxUOucjy_iw(vtpQL zu!pV_bQRK3q;so4?PMX4#nspEaclH5Mhp0ciMKj7&D2Zyl=~n< SZ9hW|_vx%nGd$4o4}SvRshSM{ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/archer/ArcherClass$1.class b/bin/notifyz/hardcorefactions/classes/type/archer/ArcherClass$1.class new file mode 100644 index 0000000000000000000000000000000000000000..7712ed2f5028cdabe5931d804dc2681bc2c08269 GIT binary patch literal 920 zcmbVKU2oGc6g_TAy9U#S@;$ybmWNUhVG=^HO-O7M38^3iXnS@OuQkmaL9~s>AYQG!Z6=Gb0a0Y*nW7 zC{9J5%RI8>2N?+yPo#;SR@0u_2{)UlGi+pL9F2Dj6Df zqVn)Q(G8d7+h*W1k%q!r5l>~pusU4emf9*?Mz2#*N<-Mjj?&6LVL0e5Px*g>+xral zy)2O}Fr48yg@%hd98IkF@Nkx+g)W2FbI{IEY5A%+8cFl+M3L?=i$%IGjB@#WvF>DI z*jf6<;U+!ZGllkX1y`F`Wq7o#;2hWBGpvX>mSi`X=fBMg6U*nySsE<-g?sPCOwcO_ zI!?1(>G4ZxCt1R=j#~`vOb;q|o{1wdrlSvg{|GxH@1nVXi@@FTBpW!uwv&;+&{~@6 z`^g+@B)CUkxfTRYe<0{O_1y~f7JS-2P0?e@9j?>Aa}3_UdyIDf8-gzt@EnZ|0s;qy8kuG7gHZr~=(buwoS M8x*-Kx|-Df0E3_MumAu6 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/archer/ArcherClass.class b/bin/notifyz/hardcorefactions/classes/type/archer/ArcherClass.class new file mode 100644 index 0000000000000000000000000000000000000000..ba1afc5061ada93e1e2a53b7ad3ebabc58bf0b3a GIT binary patch literal 14669 zcmbta31A#m-T(jJZZezA^h`-fxdOClj;7lKdL*T7uC_^Yk)#bNVAyUZ$m|*0~JsdybllrslWGTW_KpZHtqLuWM|&|-+TZ2 zdheNcKmSD{I!oN3kziUCjU~hVyDtk22IGC9Sls9jhLYh}G!Y0zf{BEY2qbq88-ZXv zG-$*FHR`8Me$mLwR5s=8_MPn(crH^>EIts}KC)v+I2kZ@8qs8+Ih;ruQ6tVYr@p48 zW@AHdZCmS>&ffNhj=F}{E+%edDyZqG+tkp}+u7dGP~Y3IVM9Y5z7#h*RvQKtv1p)O z{WSFV8=+)1(@Cz0b!~0U^=;j)z4Z;vH9c6mi77W392hYAm}WFz9NZZUj3mR6Kud5K zlk+;m1JPh|ByKR>$G@w#P8V|{gVRzAoD!^trCD4!C6u94x0Va<;OqXU8FSahJ; zNlF5o?i-1K+qH^Q9V5|baC^k4UW9q*h8bW4OZlZDG5CkI!pC83;!eY1wpilcls9ETwH%Q!rWYs@d3Ezonz5tFf(>X}0sVx2v&k zbLaTM?zWD4IcTDyMAMm!hans$-hNwlaC^Vtt06PNy?9I)f>YRs549 zsMCB}z?45=BpaiNWH1_njx8@O%dSR~uTw2iSg2Del|f&zT3syKA09B*a#%-54Ufcw z%1HXd5hJhxe@tj=xY|b*Fe=OH7n@qPxGy*q955<}jd%#=ibp?HQb41{Ao@5r&}j)R zg;*8QNv0D@C$hS%F^_<~P8#_%I-BWK$0n25cpj~!)f%m0I^*boU2tMLRS|@lqudD7 ze5cV(vbLN82A@Ue=(LvB0rNGM4wRK1%hblkvaOPu8lCdUpGS4npiw>3DH%rtxr9dI zap?%V!b8RusF+S0Xd{fOv!Sl7RVw6Z4%?Un9%6%sJY}5N64EXwmXDu*)& zAK>&l=@qw9r(A5CPP1sXe7ZoVIdnn};*$Ia%woDory|nrp=ENYPp5gL`>CG>HG-Be zkunbs2jMUSq1e!nj9SWYlVE0`-csxhvG`ChxkY+kox*f6{8YahvH`kd@jkF)ZfVoD zZDkX6Qtlkl=_EQ?MhQ6B){&v@M!ZY!q2_vhsnB zhR(*$uA0`m2G5m8jvVnr8aL^5GyM%IYy^XhDXN&5Pq))2H2OHxw9FTTSe^FJUU;XtF@#7zPA$xkU+q+DYeW&tXG76<~4Kv4?um~LJ-E^-;_b{!?s$s{rlun5!~?K&O55Ao#K~7#T4DcA^WcE*6O(8A8$s=!fVLjUEOcGK|f9 z*XgtLzi^!4q=5h$178YVD>YiH(j=h3%SC&LH zN-?cIJ}x;p;irT2d5y-v5QnOnIiya9Brj%ycWqImGKM)X;io6)3p#y~zQp8*HEkL0 z3nnGA<~mJP(I7KWsn3tnQ#yT_zJeG9|K6&|K~l60oE}zM&os{&9$mT)yU919l<=62 zk~vSR6%Kl_*0j!KFth^_xBRZ8&y^TkS=Cg5YC>k*0QpQA-rTb$txBa zC2CwU5*|iMaFqC9dmdFEB?5N+v?bag=QhZyN%^oM)CJOoZw)8HkWEb#ilg#7NbfY4 z092u+CR&ya&doq=gMd&cQ%@K|p9f)=q2$Bya4ZfFhDBv=OB*QDV7z_f4zx|2^r$v+Xf$w8gCZ4QTa90P6=EQ8x$C2oJ4 z61ViEsc}n#0=Mb0sLAhoRpKzMn1pkdq@94ZyUjNnPnf}`#*LdAI=lSzFM3O(H&L-p z;O0~dNiFzyHhniYL@0fS-qq+oaB5l2ER(E-27^hfgJ5NAN6_+6Az(u|8jRE=rSFts ze$%lLZW4?P*-4x$-SM+vuf`tiq5_~Jxapk3XaMEH0R|)RP_AUrPExiZZnID4JekjU z;LA16XIgv=#7eTQ-U_6^({!FL+3Cj`rg-BT&qP$4h0yeYRxsT?vA2~eJ}+W?`U3@?>Pcq`4uK*G2bAXqj3gYEV-Nz98vn=H56Iw3C43%c7!Ds8df>$Cafau1kj2y8z zVtJ`MjE3zmR!B%gR_F6-uGY8;-4O?)vcl`UhR-o0_9i1TWFY>Wk!>p^kwYq7gFUR{ z8jaVxyE~ap(vUjWa-G#C!|WC#8I^=S%!BbUK1aR z#pMJ^`9_^LNqVM%dv$|GB8kA3G~|~ioj1!bvSZh544^GJkdWgoI=9MksbsaWSTf<` zcBa!UGqSB`Bw?Tz1GVoTiNJoaBf4nZp>rp9nNA9GBStWqMW45MsQ=34e(vTTjn9J{ zaFAtL+crKQfv7(o8|v6tE0<|>aY;czy7hda&hOz~6Js@M79-l~8x zcy4=JV`p2dG(|(_en#m#L)PDpj{7l{-`g|}!xLu$glV<4BjHG&5%)3jgk>e6l1O_j zoQOqFFD@}U!!W_(-La8)v0`3vI8i(hH;m{aIaoXp+-Vg1d60*sft5%EV>%Brx+xmO z(uxks_=3xF6mn8R=Om-Ck{cWzhGS6)-+0_y<+BT2xXoRVcQI6{cvvA^Y^cMBVziiw zR}?1D^_-jp70HJfc%> z>!Ib%qf&@h>wJwAqPMfTt=q@fA%&1U?u_8@0IoC}m$$=hI+*O^8z5q}Yr>j2Ik`T* z2~~2*a@P*qZQ9VesdLhn*<~DQN8iLl&CSh{xDV+3K}lR*ZF6I5eQQH!r;l%CI!jVm zi(AdrXDhr6y*h?ry1@D@!8j<@;^Y?j5I_ z+au{M#?f}P9i*M!r}O>%faO-vN0sdu*?VyLF4PBhv+ z&VGyKp3ZmVMs|wq7_y*z{6&<%B}UnW#Xdd^D=1mf5{&OK`tbT?l<~zSE2J-4x+Lw4 zic40PL`s(y4;sOEvdqU{MeQSP#hfM;sU`}~BM*Fw(c&pi491em)1og}JY=pd9dBuc zbZbvb2l{ncx*+6?_nekjhnxH+m{4LYC^iq2%9MYU)4wIBe_Kwk%RXIZWZ%{Kd;EQ* zHt~^YS1_@o8KD`O`C6Bd%_BpkHS*-Jy2+(S;Te=jM`ivW9- zD$5$`HJ$&!e>9UjyF>=v^||YN)FBN?pug(;H~u?-5_X{_kCp0WkA1nTPINXg%yQOT z(_KviEi@8qO)>64LQ`ri@dttVGhBszVzqCYr;(A zz+@RT@gu_uC|52R<$XO?$2mX{2bEDIXoc>>DI928jnaYRWYPci!h$AHz)y1WVM-E4 zXE(1Jqq2)0f_5))8ML7k$JJo6LG1>NY+a(U;gww&znCQoG%=g0!Vw~-T0|Ff#0jRR z*Qg@_L`ZiGGFR9hiG_9qOpxk4F;^66;zXPPP1wo_sEc{xB;?8+K(DK}t{Ha^dTSax zCT-F>=cx@&(Z#89_AKY@+UB;p&63h$U7T(=;$`6@$IjHnd|8pm)K`u1I#HsFg`(6P zlc(AfLTrolrQu)%dzOnunn0oK46*iST~vz2(6-Jk8*4zo2~M@QVXA=yJ)bX@ishPE zCa*>uU-KQ^A92>WI>-)wO>)^4x>zZ_l{^P(jX{y(yOqz%!Qr6#$0uN8CD}R|?vrt! z0IU29?1S%?Nh0_?79eLElVuLO=icOXd4#m*gS659Mr9hf=v03un1GSN`Er=kZ6}PEemXa0# zt{up|+I4ZRfRv`eHD~r3U!rBam4q?tbJ;&xC%Sa8MZk|s*Ir{`oQ5NFx|(>b$G1-Xp5%gv?72W8Q6Rr4Lh@A5p$(SG;(`S#O6NLL`6B3Uu6daW zE^TBajJP(_TvtY{fI10=P~^!E^4y_efDc*sIdU)%Liy}ExtUDBni#UPmh_@9sBofY zcsLRc$%_mdY2kG8k@1d7?y#Ccsd%b-H9mo8IKKUo!O0G`KJi{OpR%r}f-o3jhMh*c zTL!Pg&;UjUNlm_xXy#$B6(K_Ff;HhXeQoq z-6s8BfOlNFNxv838}4AJ`M7zbesSGK{o?Wqes%0}3Z04>r{V2!>@ELE9;D(FmCP=2#RGfFFF(cQTRXw80FKT5S0#3n#opQ5Jy)Ov{8dk#>?e(E|zTk&+>e(Fh& zosTJV=t2eAJ4(HCC^)pALU{6e50bH;c07iC1r6bE31}t?fX=1BY8kF;orTLLXVWHJ zCF!8;^d1V)AoWpH&5()0T8dc|+)TMxg{Yz2LU1@maqDrXdc5=iT~S`~1YKQjl6CFu z8@!+@MK@XlD`wx2V-93cDpZVF16G|wXV5xYPV1?jY7`2E=7#isx&<3!YsGTLD2_2L zv>w8n7vE|}sjFg)KEyOe9~0DF{y1HoqB~M_*BIR|2T=*P?xQ)CWAr(u!}LVUqJwlG zMNeYjFw@>6uS%ReicKa?^-zTdFlqy>!fy?jB-v6780?nDsg}MX6tlPYzw)q|X{&==|b&_qiVVm=_Zu3XA&7bJc z$Ft2}CfTMJ+gy}&o4>1V{z3oDy3OlSHrh;>Amr~o4AH#NQUMcvyS4IZ@BYd~DdxT2 zhZj9Xx9;)Yx9Bk4S_PfxD)O32&6d6FP*S z6z^M|pH{BVVqyV*&ie%xJ)RTu5AtK32l)V|7w{L<-!I{>Q~REBFP%Z*D_CiimZkV> z1^f*FjnWSMow+#0&p5R;R~pbLg;M;T?u<7$#QvUx`~$@J;6eULQSJf$MNd`E82`#M zdEl#>zK`Y>O}9fIlx3P3{N&hS8U21M9l~Pi5MDma&!_kmEN`sLEzHfk?Nd}(0jKlo z44`}C9R3r^`V{{~h7_-gRnH)iAfydBxG$Vf7bE4_fgAfnh?+6#q+v4X61tq?bOnvj zwX_qFdpGT+D{)cqD#YQd5w)(NSLix=16Nt!r5m`4ZsIn&nRnsV>RogT@1qa!%Lwdm zqE0KO4~tFoQPEDfiCgG)aSwf5e3L#Q{ziMnTXcu#Y`W9aM4$4+=`PP++UI$M9`w9U zpYblBN4(4EbKdjlQSasSnD=`8eu$p%-bN|!{dB+tXS-Y57CM12p<_uj$(!jqR)d2i%5`7Ll^ujh6CH@}S-{#nmU{0{#I z;s3Dbd;Bh*eDtj6Nj`$7JbK0R89{jR)4Sr6f(6#)ef$sM!ILi9xk-5OG!1m!BXaOG z9n`$c4~tyve>ql?*~TEEpAK z572W~B*a(%v9SDp@;)Y?TaoM`LzIEF2UaSU2wIr~O<$=M=3r<{oXvFGUdo#zR_!BS zVNRiDtjsISlQvM{2&JM5p|n7(Da=zTc1o?fkft$87imcClDbcBL72TDiv_2(}&G$%56`sn(TZ3aF=%w>A>FHL~Aq3OO zp{J+-w@Vk&S7KxwecY}60ib^f z=x6cobMzwpg#JxGSIU2Zsu13`m7m_G7et>_etJU~;v|S^9d5_Ul-GlO_KSWo0Ojwb zePR#-%E6xZiZGru?0lnA%slMbE-n^3;2fkvt|i|)gtp_{k|Q!{mO3P6;Z-W7hi z{gmT*1Te^As=P(sr|Bf5N)9kp#$>>d*;M67zjzY-q66$wnMh^8knL3E7UfE?TqoFN zHkjtwM_#xXyS!MYRQXrH{6$n^FHsr2Ocl7&wj6G-oqmT(>{Z%EuhB0016<{w;3EI5 zWV6YnH7%R_tkOfHJH`9N<&e#ExWp^KX&hzKCE`jvd9hNHxC&1>Sm#V}HJ);n9L}V? z|4^C6tHEV9neG1Ztmm0NaSbnr_+<%Of(>L2JE K$^rc1pZ@||K%;&D literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/bard/BardClass$1.class b/bin/notifyz/hardcorefactions/classes/type/bard/BardClass$1.class new file mode 100644 index 0000000000000000000000000000000000000000..17f699a5b505a33b0833020d58adb0b07e171cff GIT binary patch literal 4762 zcmbtXd014}7608~c`#g+P=gXlssA%mbc0-ou$UHjt+2 zlGH9~+O$nmX;Zr(@RPzfZ|2>5?m6e4 z<#*0`>A%mt0AMrzrXeJ7yY0AU-^gfWKu^SDPQvKZW3K7g$wG%!7`AJ=Bau#TkCgfKrfs_01-dI2CTwoz zRr>^T8=bgO2!SOM8Vb~}8zc%54kHIIlPJPcft*T3x}?ptjgHh%uaVg68>XbqiRsop zJz=W%U@=!2M_|i>w5{04E9WFqb`e(KW)0;6%jYtV#4UKaz@mP`ZFP;IR(qFj#|2hb zR%KqinAT43`+{3lU?H39{CEM_p27zaBS=$opxBl#jksSkWTXBBG&=cFGbZ zu>l)tYBCU5Tj}dz>2`l)Pwx>U=0*e6GM6;mCb0cFET-<|n#@3zcg=l$_!{WfDz*Rpvy=yj}&0F(71DQyBc+`gh4hR>ehiy4SNI{{(o)~ zuSSP4Z+vc;uJkHoJaR3K> zy9T~$*KNID*|l~)p01$}MfUO$kTbPc;58D5aIZiSHB(@$66Y!~nA+fp`_QXF7pR)k z;4{TY#6VP)6cDJpgNV_RWz#DH<_QaruZjfILxfg!6GlKE1~l~Z>hmi!B0$9YvW0cAa@BP|9eTret;V*2(Afc!P$A1WK;nm3SlGLJ|$F%9p$rpsp-T;g4LH(gGz zwi~Jkp@bWz^jG2G6;NgR_ei`K@AGq_$2O0qj8+D4NfvESPiqq`Rg3paJgKxUiaEBc zn|5-yF`_JZLSjsXm^Pp%J7_EgzhD8a^&i zKWC)RgPf{>HtDV|@ku;QE41&}f4I4$xohVEcBD-Tqdq0^X?(_4uF*Z7Q49g!qeDO-Qg*fV0ekHNGlqG^7c4(~;;CHKa@{uGE{r za~dYIV%4XRcphJ(ciD!gj6HoSCtEW+o>k79Cd_&?QUZmuN!S+8!+-l0?+sGlNn+aslywMDKS?jYZ`b~UG!%LK$;R&8{ zi6Blw;@kL+K)IXH?WD!taEC>>u=&H=Rx<$8XgWWry17}pS2X~sfSRh%cP^-#m~JY`Z;?MtU4i<@+$_CHGy`48VX-{}rc3>s zd)P9K!=%jjDQ6$te3(>JuAU%RDL@QH$I|R^iT!6VGHsewQhjFb2E{7izFpnen`JmP z1Wdx+PAU;IR7UeM$~fMnTc?tP!&|c*vz#O|t=(`3oVdiF@fU`nV>cg7nZp9}0vY=i z*=q9|9!n#Ml?1jN4&mxUbOVZu)%eKo5;Z(>HN;O5B(Vw&SS+^tu~E!lxdTAT*-VQgcB$w6)&UoE7Jn)6tfQqj9q?KZ7Mct zeDJYt~SrMi3^C)J_iwS4-#pDFol z8mCIW_&mlBluzK?Iea;d^J#p20+%N7-4Nj!$c6IELC+_L=+t|$7>BVM_pxs3s6!l4 z80f?Rj_`jJgRGkto?!cR3N|jl!6gjiSL~7g!L@&~waLQ+qK0kEM%qTlLmuZY6*i(b z@OD`2#}DvB`g=8giXY*}44hH&{R!W4$UBCg;pf!s6lbwt;Fk=(OIS-8VQA!j2)||| zh435dt)j@M|1If%$CY{%{0Frf)@d9J$Z!i2mF!Wx$Fo2gun7vm~vFS^6!7MuBc4_ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/bard/BardClass.class b/bin/notifyz/hardcorefactions/classes/type/bard/BardClass.class new file mode 100644 index 0000000000000000000000000000000000000000..dedfeb33e2b9186e81d2de02e390302406027500 GIT binary patch literal 16818 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 ML%poNw%Y&y0M4Y92LJ#7 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.class b/bin/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.class new file mode 100644 index 0000000000000000000000000000000000000000..169b4e1711ae1a1a55c0df845ddaad400a853cea GIT binary patch literal 2517 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 Wl^S|1)Boa>hIgp_E`2rNz5fF-{HXr` literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass$1.class b/bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass$1.class new file mode 100644 index 0000000000000000000000000000000000000000..e3165ee898f659069a0f4b7842070bd8e299380b GIT binary patch literal 1397 zcmbVM-%k@k5dM}H3gw{Xmm&)OpkgV=0U`oL6cChH(1`ND+j8BuOOL(gZc9@C1>=jx z2j2V_OaP+~#%KQ}6XR^D5rgo+CAYUTJ2&&qH#7U=*Vk_VCh#bNI)*9bX_>3MwhP?P zI-W0b+|klgf$g|F2t;7(N=exHf){A}u~`?5J~0+Sn4#bE^Y&J`Sd`ihoPx-fUE$jc zRmF?4Qhdu53=O&QH0QDp$Y8_p`xmt z-Qd17a!naF+%U|X6K`US(hm7$6~!f7j-ZEO@_ZayxPo4SEra<|$(4@5xa|21y~#5; z*=(Y?S1nw_b%xHI^aDK~1k@l>E#-2;(Ue<9W}EMFyR4;aKjA@Pm6y`Z=*P_n5)9p^ z)ziWNZZSmiLa*^1YNO8N;E^YntGvCgeW~*4C-ze|9H-jo{9o&{bF~N{hVkqZr3s3zN9V&?uGO z;BJ{xpw?J1m72CN1FBq{=d|#b<*ry4gfdHP^_@ZYrfIB}bf&)T7(l$;jD^wA+k_~cH`8vKWMdag4IRKr4IiL2 z^%?O`Rl^Qi8^{oNi%wdt>OO`pTp)?zBHC+i-jEYxx0c!`FZ*acME4#RjI@tFqxgaw z42MYWVfdtWF%kYqIBE_;hnO-bLNF*=t03PIRqwHi5694~)zHk6RXx~GIu7AJ W33Zsm1Nw%kybrNRJCm~kNzZQGN z;(PytzB#`5)CW62p^T2t{!7k?=O*bG3g`$K?%sROx##nD&i&)Bm%jnHiMoakhTGEd zt>vax-DGeL4&YRmy)mAf}z{5SYGr78Oxo{T7sc#gWJ&>!-ZU%Ng;j9-!$fJzA0Q1 z>b_@5%fHX?D0W&)C##PyF?6P!q6mWF4IN$RR=YkO8hSzqpkGH25r#laiT33zDdy_c zRpBl+(-6ryCbyTkYpHXK*r{^EaQBq{M#m}afLoVAyp4A>Twu6$x*Y4ch)WCuCCl~v zq~}qQEtxKrgz1xiXLDKgf&h!>Qa zYdWrDlu|+#8HSIOJ9<@v@yc|=t*rD#S-2sL;R7Axm|*C!q`$=NI)y;x%_>tL>bRv$ zb-SYKY={sQ;I@uCxJ%O9GzB#YL4N(zNQ|EhiRo6aW?H>EZ`aF~q&(ikeGMNo7$;)j z_^UcT!KVyC%38{iC9BLZL6vGNE9IZab(gE*V3aId7#Uic(k*hL2M-vAT7zS>N-5xF z;f*zh$Cz~7Dz`_g)IlLkBBLQqj{Z**I;Jq)bhHVc*NWUi)UhD@3^@%mguynOsS2lv zZO7Fyi#djizRRU&b6+HFU$~Ms4YulgYJ;n>R2zIwHl|u*UdQKHAn1BR7H6Becn!L* z6f7z5Eb4d!H8?CUS*zKWsis86aTzYf+ADE*=*0^fzF-(^i>XEvooY1S_%u5>hyuRS z@Fi8}-vt+G*z5Qj-;f`f>_U2FA)U|W7n5@-Dps`Jjbp5+%Zb1b2L}fsEQ70YxXKVe zUHSQR zdXgr2-sk2z&9l}(4&|M?YYGK!^5UNtZ%mCQqNJs1J2V>0v%;@9MwpifE*Wb> zHZz0lD!}ONi{>T>eEu5#% znLP|L>>&CSKOd!z{Eo35-01odPmVHgF01?DVa3_SM>|MFk~>K4BD;r&9Z+N?u!H+8F=zxP7eLJZezk^RZm2{O&`uiKE5T%d+ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass.class b/bin/notifyz/hardcorefactions/classes/type/ghost/GhostClass.class new file mode 100644 index 0000000000000000000000000000000000000000..f9cf7468706d6e49742a470078dfeb7aee5f6748 GIT binary patch literal 10735 zcmc&(X<%E`mHv(_`#H)Z4t5eSB*6(Gc#X0VAPxktu@Z0Cj#HabSCOA>5m|C1ISVjA z2}_#*ZK1RT+Oj8QEf`Q@(qSzrTg$$59R|A1boQB+&ak-OeeX$nitQxuXR=67_nmw1 zx#ynmJLlZ{;-`;40bsfOMuSVRA{>ba`?g=`9q>nc1CglF=MTh#k#Ni#2>D|%Bj$~7 zA2PiC1CdzVyGDK1sCEr*LCF#Owr**)#d8FOk!Zhn9}EkYG)_8bgRNn`tzoO#rBX1XFBpx*t70)K77W+*^%;S9Oi<8xfq#qNI~)&& zybb=?K$Cxn!c*FV{b7H6IBE!1j+agh}!$5>C5IyB^JI7=|sVao};bP86ZO2avV`G*(mAZh5RMvWk^-q%*w z(^l8+YwxIPuBj6&I06<_=gO>0$HvAyScQ7Ef;D8D;-l&2^ObaZxH_MXwOA*Z?(gkw zRlKmpuz)5w`A7p*DpRdSla6M!fMaW`nyS_~m!RIZ>Nr=u&2De4tE=TQ8-rn^d3bQ6 z5$*7A3=ui`jgf#q)aj1~)o;7e9Uo9Td&cCLIxO!h0*i##hwC;E2ZsbzhvA9jI40G` zyh$py`_?G}=0Zu!ZNuR>9k(+W3sTRjFj>PyB-K30X>yCR&5jNJaBqk_=)rk7U&9v# zt0v`|qtHXgm(XJ&vNh!2t^&er(vHK$sBAF4-D|z&w0;CMY~8NQq$Us=+fi|vA$1A)Fpfym$>_iPbay{}INE;ZUkIxfcF362@?$6Af(V3070 zQ2Ut^uuMs}>T#)#%kUL}CpHk-n%t_x>d>i-vO~uexRQj(iJHyzla9I-JzcHitN0oh z6g37TTezSMCbsS3WMaEXAQV3P$S69T_j3?p=!D7rOyE-XIHo=B4{T!kU}IR1glqkS z{(hs~2=xgTW$uBQ+1NW#XS%H=oJ5=lH{eDM-y)+qxB9T%bbK4%u>fKXIT=8#w**K5 zcI&tqx6l`fge3Tz{9&q14_-z8J0fD~F-kf`9d>Vy{yp5P;rpbq&pU>W+i<&uQj^Mt zjNTfRR|?i-S~COpN1=0arBw1x+^yj*PGW-50W=+Zu$Mk(Y##Q9IAw;vCw^N&K`0UbZW-*W_|jp2`O+-`1nP-USri)(9Z zo&2V9YckT4irJnLOiMG8dZXc)38}{NpIrQy5#A>5ia~>!b-xj_ldoRW^((?uz=MN$ zUc*ml7Kba>4EUMxg(6WMFW^ObYCP%>$3p(NQ57OpGWlkT$JZ)ZrRJv=*No4!oRGJT ztSs=dj-TRZG;+)c_cmF29kPGP?2VDFECbnx1sLOMj$!)R#Drkuik>iJ1}N%%Y$V(e zjJL!GjA$yvtjKiU$)>EfHg0>G65htU8s1^~YaZ&VJ{N4wWE1!_0woxN0kZl8 zV$d5DEY6(7w1#CqJCG~?kFuIe+u;M1PW+ZzH_i@|cl6)`{9eZ&@JEXwtIVh_m`9Eq zH_XORB(TYAiBwL(KjU9C{E2b&u!1`N75~N^Z}Y8b=;*0w^wq5EscvkkVSYJ5hBR)9 z|IqQDs(+rdf0eIIdGvql_#gb4F^2o6tmX@=+=}SSR6ZD1){8{9dzFwGkH~Nz;(s;# zH8X3UKvKv5;UkO0RBA0aE_3iEB9cjJi1zpdV;VkX?d-5e^0m%*Da6US>#N#2x(Pd{ zb(2Dsxst^MDOrs71gUOMAQB1nMz)4Mk}aAhJPTMdY2Z-hdN58-^9INx-Wt1WOqX1l zBG7}emTwciA(ic>8cJr+P!MkG_YXOl2nQq5dBhJZRH`STQ|cAhTN2iXc z$UTl41d6KLYn_%MB}dyC?hKan&hw0n_K7CMhcZW(xhgWLLcVG+!eW7bD@D4@llhk7 zzNB*siZeYc?TpqAq$De+$^u!a$tkP`9j-R1Jkvxu_0ZBSEu991s{THd5?xBAj5^1X zI;&!urD3kH!ajMD{pVqnKNKIRu=8W_>atjtSO+4imQ%&TIPfH2ROYOH&y3W_Imh~j zM^2YBH8~>_PRS0stQ1ma77J9y94mY~Opz3;oFZq*YE5`57tR*IZlI z*3<4=(_Gc44!#`Y*vCt1&uVn3l{&h%;?iU_T%JMFsaYo&g67Lv{a0&kQ^Y6hG+9ee zbj;OG@95Q~QJSc%sZ&!`b5BQIV_j=YTZdT@r;h+lVP+^%Y0;%s&gE_?z0798QK)4N zP+wod8Y3$0x^$SO$w08zuK99>f$T(kv+e9f?QKO8**rs%FX+-GWV0Maz+skV8QEYm zoA4t#|9ji||&GXs4f$^dO2jBZ)db9ztP@?_Yr zQLilQc%(-*>JkvTOTJYuIS&w3BITTRg3}xGTtxw7MEZ2;7Z$wQ7L{wZu!@;QcsTMf zJ2hpHSt1wcvPnX8)uCb9=L{#Y*x9n9V={jp-=uaatV=`{U3uzQ#&P^f8aR^nmE9%X zJb00)E-`iR;;E``Z)t1o@U=9n=3!m7sAk>Q-05rgRr?x!9bKAiJDMUTKG6~Pf+Zf= zDi`wfNiGtsKZ=u<35Th4Zc3&vlyqj>Owp^Rx>T3TgvGTU9S(Q+W1AXPSZ0x%X&Cd+ zoB5MEF0Wjhk>SJw14i#K&t<&UQHUCZ3{#Pz!I82smLLoi!68;;DubRhPTR0b6^HZ` zk*jpMTAfei1!Gl1L(Bx#$rr<<;;^sjvQv@O)au5n?z*1#hL)BNO|JR;`?J&|yW~Rk zaj9~EZ|L$()cM08%WxRLbQ4~80s~m9=RUNr{JJ`TbJ+1O{9UY zy2i$q4a9@fYK)UsNmI!VaP znkzrxV^I_7Pf6XY%Y919y{4_Ii)EZVpv!}*(&g#1HKvk!NSB9Aqxd?inDpk#BlOOq z;?s)kI-*3W`arHEm~2lHQ-{>#W<=%m<|>&*cB|1)S~vDN#2_mwq0Ge_}>m7||H%o5@AW1ymRa^J1~a zy2HdgR>N8RpUqE~y6hnD((|CIz6kwF@M}7jw z=g&@H?g$om5-8n=MWqL@q-!6RJ%$zO$1_UH9>YrhUez^%v-4}S_Mt9;2D_m#zt)}6 z(2{C+*i@;FpYu&sOL;L@#zmB?8zP=5E#l3J7wuTgv+gDQ2H%^?p#$sri)xySB-GG} z4Se?nw&n0w7r)hVUSyjJK22o_bT{qCmq)=IV5NI6N(c48M*%tiyQ!L?Ly4rb#zK4szSlspcuG2|m#gJ?KUW9_W*Xc-IH zgvb>D{0@)_7~{Ts#O8by0=>uAJ!ETeI{;lm}o-MW&d+(iT4$=?sq?8*<8 zo4fj8%BT<0sISmM`MAY4>Lt8td=;dYXud3UjgHHBlxGgag6o!?|WP)SvzOCO>@OTOsz<|3zzd>%2oa{f{*vehXvv) z-!Jans3=cucY%;9<`#%Q_WG^=-*VsWQ*v8kfEk4Qkp)kG&NmjexX~TCZ{kbWyVa@Bu71H z8r3A`0$HDs4g2N1@~5O{1T6{iryYz&Hxd%uP;PN@%k*B26zm?A!7SK~vUz&1BI?Y> zct+y^+1gcFzE8F*hnOK3C*%?b`CW&T>1+YITQ3UHN4)iur3Z-L3s8j+)**~IA{fSI zTu!{*z+Zd$>q*}2y^C%5GjHwkaiLV;B3X@#WgYM6+Ob8>$7OOkOWd8+?>ziiX4+GR>Si#3P}zh<2a2yK0@`JG17dFNf00Kg=#hF z`6FC4f9V*xCM)%h>WDg+<|ji@)@_6xLy>ET+NQD;FSv$F%Mx{8GjPN-j zkD8Iq45f#iDTVCL0f?5E&=?h{Xm~;eFEM&Y8x%po9rP z8Mka1FOFLATc%FGXFl-a4S=!i93=;#~tz-(!c<`lCPi6cr`K9^!EBQ6Q^Z9!#zxhXYS>JyHn4lDf literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/classes/type/miner/MinerClass.class b/bin/notifyz/hardcorefactions/classes/type/miner/MinerClass.class new file mode 100644 index 0000000000000000000000000000000000000000..7f1f19dc43eda6353001c93b61f747e5acf191e3 GIT binary patch literal 6991 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 Q{mQRqMJK})J5S#FAJMf6EdT%j literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/CombatLogEntry.class b/bin/notifyz/hardcorefactions/combatloggers/CombatLogEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..814cde1f90941e719d350d4db4b40f4a9e71a27d GIT binary patch literal 629 zcmbVJO-}+b5Pe+`1Q!tS^CmYy<6bl#G#(^++UP+-!m+!QrLb(1ZZW}s<$;)Z@CW## zj8pK!Nn)Bz=S|5WxNR^~ssHOoov5F$0 zQ?Ii`zKZS>qvv^K8Ft6~g?lkiBJU{}i_kE*D>`wcnbUB8!|61aR90=*3|Yg|2}8qI zI`V?qWFn21h9fbU#X@^`%R-kZM9tmEM4DTMe)C^qe@e7^9A{;&C<&gzoYn7IfmPkjFi)rNzI+tQpCa;c8RQ>(5X3Emr$m)N0pOR8}@NPhz2ZW*fO(14hb9*a&Ytmt>LA% literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/CombatLogListener$LoggerRemovable.class b/bin/notifyz/hardcorefactions/combatloggers/CombatLogListener$LoggerRemovable.class new file mode 100644 index 0000000000000000000000000000000000000000..a04d833776e8998a92a81f475327bcedcc90e9b5 GIT binary patch literal 1083 zcmbVLO>fgc5Ph43x=GxG1Zc~5prIsbsgVE)DTo6BL@NVQLnFa$<7|^{92?o|O6BJu z-~vKIBI4t~kpn*pF>6O6Y7azQ)-$s+@6GHR|N8y?2Y{Qf45SzydA^dn2d}IF4|3gB&_@gdYuHWyAAhcSsXZw9yhDvxMsFF=L+hXMJ^R6olWEfWbpl@}f;ZQ0o zbOxdqxgxOc#ewa}^K>FZCW>T_;kdoW_qi1*=~_EGoA;XxWdg4hm z>Wbi5GI81V9qx8`AhkaUX4F823|q6d^iK(B@^lb+Ih@8>17{d+&-i>tkWHM!d4_rJ zI3f(I*BMH+`qWcC<}aIhT*M^<6^4bsI?{!S%UB@|0=*fe_Uc3fmwSEdX?IUJsyV@$ z4rOr#R}HK(+?cWJY0*v8P$!Xkg41TP7t~Z+ac4;VOkO+J_M^ZN52fC~#Um4M=ox4M zH$B?zmdnFXkT%6bOO6W3oTlF=g|b$itg_ZTjxgGb9Np*1drlcTuh{qkv#~ZNV||R$ zr#SHhon>U`d`;&YDtn6p-r*!gDoGhmVUaunh-p}CX`&PnEKzns(~f;$`74$ipHcjV z3n~0Wp6pU)jH>2KL-Q44-1mg{f$BfTTqdDV?S!il=dvY&Tq84ubzGybo`}&#Z6Nmt D5Ud(S literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/CombatLogListener.class b/bin/notifyz/hardcorefactions/combatloggers/CombatLogListener.class new file mode 100644 index 0000000000000000000000000000000000000000..481c59aa0039dec35f76f29beaeea7a7b01f58d8 GIT binary patch literal 9767 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.class b/bin/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.class new file mode 100644 index 0000000000000000000000000000000000000000..ea4e16106a7ad8cf718a88c777817ab76836c544 GIT binary patch literal 2332 zcmbtVT~`}b6x}yTnIs(wgqA|T1hf!H(@;qZ1=@-f6q`aNNVQh$Fu4iSP7>D4gjM`M zE}#2?=!45=|ABwT<-RvVGFTp5%f%Y*ojd!Sv(G-~-2D0XZ@&X5!Z8pNc+_YHPWAA| z!k*<-?4~EHmK`|FhF`Fo^<67)o3)zs{K87h51RGWM&Ja8Te9Z(foCb4frLQ+YwN%& zxK^W9*xY?B?LeSs$!R#jLxFg9YDXZk(yYid;z*e|haQ2xlGBhIt@^I?wyj-P3S>%6 z+j4g-&r$E;VItUbe1YZC|D?GnFyv|4(u<_xNZ&xe!0dl?U(#x{RY)Qu(7WPU)u8-F zx-w`s(h#_4;u40qo)PX)U@}|kinZcezP}hbCmpIZA`-Xul^L`AV4H}N4p5*YSn zu;xg&^2~D%tUwYUI5rIg?njx2L?dC^g^wl^o=oi|F~K<1G_sgBFeNb1O=-OmNH&;> z9Bv612bSBCn^jgTyFL~19>SQyd8vC)OGi%;Oj}KA(6H*dpSn>(x&kq$LMrP_wADDH zK)N693S=8HDAd`ZwkmJIm)?Q&3I}&y&Ar+x7TWdSKHQgn8gsaBV4e-#ji!m1SODqv z*JSWm+OFlviWXKNe}<6JTsea-XQ-gzi)lQ-BLkeI%iRd4ASOP+GHc7yE!(#AeMiqz zBKtzM(F3fQc#Ks}BB=;WM5CXSD57F`WZ*Np)Dc^O;}+Ng=dp%$6JOv7eeJjCYyJ#h z@4JfT7J65-o|@ReCS8&Dzvd!Do#AT7z?TA7yGoR$-ST)Rb-LU@neE&Kth=tPS?;n| zYt`905!_b-qwnLif)Uhnfg4@aMzh?q_jF}C7=ct(jm(B_yZ9T)G0(iuUErMVZZ@HO zD=-p4oGK@qCSF$q*Vjgz$j@^%-R#cf$&jiG)izN9+dawZhC?x!jY{4b3mO*%(&c8$ zv*ntj?%eB0gk1$4w0B5Cj6wb8of* zTzmPJ!iA2pMVHDrlj+M0^v@n+@Mk2SOdsL$JAIy_%`h>_;}C;_9+bU_KJEtiH`s~L ziv+IWIx#o+@CU7AU^qcIuV6Y;T)(C(l|v@;!F28zW0{-N*N!pCU6=R;jTk0=gzm3s z_oHnqg+6q)$F zjeOz=OL=jGPyfK$LSiJ5yY(wRkK=h>jPO&53T@=ILJ3+;Vj9oFbt_!A!*z$Am2wk| z2Szj))5J~6F@aH9PO3{7Q@n0-Oen9}J!Bf>LaAoBs@*quq1n&iTkc}?GK!b@j=qN| z(D!&n-E(|?p!V?-?O%u5Tb(q2;zvbzJa>fMNTRu0%qbsd&fUb6SR<6{r1axR@?@52 z6j}VcxQKiFK1akngD$W)mo)jJ7IM5pe!N3|JS3k&e@Om1*;J#HUuwz%HHL~|?;nd0 B9##MV literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.class b/bin/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..2dfc14f8171baf52890047a62b785d5233c577f8 GIT binary patch literal 1010 zcmbVKT~8B16g|^!KiIBaKBRyG0^y-83HyRUBk@HcK5Tr^H1Tn|9oms)C)rL(;8&q& zNHp;W@S})#W>?xE(ZD>+?45hgJ!kKotLq=X0PJ9+f&#;CqO?3bJqrdr?L{gThdk0! zCBq<6$6c;t)$faR7=-qGE4Uu)pNK?P;4m~)+7G&;qa&#UVQvGPW2g>z(u;}5up0ga zdY2_bIn=Khyi8(0(Ndo>JP+^XD5FuC>RuGfMC#WJ#b&F+;Ji^iQNbgI<$pPF;lcMX z4VR(3XDdvBVb((lWd=W#iFiLc?uzsy@5X{Mp^A9i;i)une)*#LAlt2uiz0j@xagsR zD%sWpNo{+1zk1`rP%G+vp(lFGu-0t-ZwfwfvKjvw#4eE@Hj3I)CphjsV4y0+` z{OxzN{h6O|tWyJu^ePK@V%kn$v!)w#mS~@XOZgf_TZAyH_7mQxOVlqg^M%3!=4dYy z2n2p?Z$QyB=5yi!VGPx6U!u|8`i_M$uWqG1IH(ibxBNzi#u6Da%e8hG<)30XueoXU z0Ou=a&IvQ=Vs6643RZJQK&SCoYJbDRZOWphco`rUW_WfZx1E#kl3SVJIyc-kYij*B D^~UH& literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/LoggerEntity$PlayerNmsResult.class b/bin/notifyz/hardcorefactions/combatloggers/LoggerEntity$PlayerNmsResult.class new file mode 100644 index 0000000000000000000000000000000000000000..5dc482a6071b4e2c718621d68eed656428dd2388 GIT binary patch literal 729 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.class b/bin/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..87b98b71f126fb6d4d59fc63218fd2d8e5a3537a GIT binary patch literal 1010 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 BWa0n- literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/EnchantCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/EnchantCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3e38c609e519c89ff49e92b8b91bd6b574af614a GIT binary patch literal 5576 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/FeedCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/FeedCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2ea8a2ed0f5ac77e042de7fa2e3943c4ce087030 GIT binary patch literal 2695 zcmbVO-E$LF6#v~eZ9=-0cA9#ZEZ1>O0fv2c(b`lw%zQO-A$#a z`2FpJ;~Ts=I>QSu_)v(>Fv^QFj^n@LyE=~NX1AD9!VEs-=Iq^b&pG$^J0JV&KR?_C zZ~$LM(Zq1bc6_t2d`T~HH*YwuC~(6!9oy3lr(EWC-qVHW3EMZh<>?bbDF149$t;9781I zGU=({8w%m)| zXvMS$@HkRv+W;L;M6s7psPmmEaX;f&j;mlF_ER#Q93Nxou4m}3N?O`^Qo%tyMd`;E z7l}=Vq5As=Nt|Afau`WEhNl@4XPk^u^)NzsDfuD|1sYQ^dv^!$cP3=C83}I z!n2)}X1O0iCAB7!b1|3vY9%kzwb6 zr`@?GWJyzk3o1%a%L!p?u2{5$FY?1NTw+L)4wbH}HCEJe%Vf!rl}4uDCS2&uFtrO= zZi2>EUwvx{>wI;%h2w$Zq?{vuAD~K8M+r}7c}~)#u4k6KbGJzM-gKWCLS1u_rboSx zwYZXkPdv~1+*mly7sGiOpCtecA&Z3?eBC@BmdzJCLDAE%g+39Q=$}S0tsCe`r+-HO zErT}^zfpUw(ArwtRM1Yc5-8viY@{bLk4{?Ya1(tjkS19Fo)xI-))n+#VcSxwRz+VE zuHs-y9SFr#N==5MmiiH?GdD5xJ%(3sKs~gA!z*~EiszaTx!x1GeHG)WpD}h7?J0F4 z+)n+3vBNDrEgk*0Fu8(h_2ddp-NM-_UTXqvZ?59J6jY;%d}t@~owQK8Yq)veEzC!GpRhat9$=#>mk65+&B$e@%i;~mK=N$=u4N(m{wj}It5 xDSe2Kh}j~Q#zi_O3Z^z%D0YCO9^;?F|=|vO1_!m&Y;{^Z! literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/FlyCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/FlyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c0159a62dbf935aa8747d53987aa9eb6376cea27 GIT binary patch literal 2933 zcmbVO+jA3T6#so~%BJaZTdsv7OSvTt&B`4bik6gGFhHfHND+0r*(6IhyJdF+q=Jef zqB6cZ@WeRI@WMEw4}t0oqr5odIKKJHi~j{WjOWX4AZeS<;6rxLemVE^JLi1AKl|ws zfL*vHpow9xWqU@pG^ONKC!^Vpo>eu^uq{{7>_S1cGOnV#u5NjTYP!mRSxWiG0zwQ+ z&Z`$y#Z;}Fa$@|vu6Y6$Fm&2ZP8lywOc-8Oi4sU1zN~9S&vqCV955`yJIK%+jg2yd zQg%jI_oa)>Ly;bqxL;9EQBS;WF$`|IaXz46U{m zc*l^9rW-pytXmn~NzTKOOutCTu;&<7E_rtLQEV)NWmq9#Im4R9=0vQ-Dh45^d&kuR zC180pHd|R3?Uci;S&CpS)(PmStBUW0h*z+l&h-mLD&moxMP*K@E~#7*ovkr87RClD zKwirx0t_Tbe;YPpvw%$ua$}$U6p7fv?Jdl!?vU;j4A&()O@G9k?#&#;NdMVqq9T7XQld^E~a6iM!+WI_aNpd~AMeM;| z!k#)gNws9?t_|NuaB_Bz15c7+>}QCcv5RuXmI-fiUcIQxvZ`s+A+l%79E)-_W!zwr z8$2+>P5_L?cDUq05wG#;hdtZp=jrbgaR@1fHtNUBF*2&=8r5)Az+r~fHQC}V?3I)u zQ!VLE8~X8vh(R1-SVREpGfn%_fNA9NUZo?)IK!JF(l|y8?hJ-dbSyR+!3n%2V2D9! z*n5M)Oc@Af%8*&i8J38X7^W!5?h(uNR7;~Mb`rQ>QV-Si1Wt(<#cAqd(w4HVtda9| z)kLmUj*E`U=bDl=OkEkEhtC}xQ*qBQtknvc?t-6Kmq5?+(XCs2-ee*;i*o|rp?F_X zw}^M~p6{VwONK4Az-tHy3Q&P6VjLPnhv%r4YpR~!XL`D05m5m@ADlD+w?l6AnNJQrw!j8N;!lNBh+ zyl0AzLu_VAwzHIVOAo^)96r9M@m{#VS3-&-azz+~(Po^IKfsQ+BqFOp0U8 zLAi(}5ynM^%|!8@^#!P51BrT8uDvge5<_fW?bRgt>OY`LHdbHHdzEG!**wLYwntWI zqRMCe44k8h#5-E2wb)rZy@F9vU7o@Ip~O)6sEG5h(pnP(>9jhon|yoD9I(U_Qk@)O zXW1M}iU#u}t*2TW^@St`s>Q-#Pt_)lsguDzjttvHN7H$K(F%EST}W{2*Z^{#el2tX zX`(l6dV03fmqKqw@0P9yi2P9bTcqcL%AtsbM2kKH7GW`c(K^FYdXjL{HwY0Y*v)Na zNYd&u*4$=SU6M_>wITalDKX>FqMc9^(C~W}ovm z=WL$AnW^UtJqq0gxzfDjA+p@YZ?k+c>%FdevG=(bJV?oUfJyEl0gU)1w??SFMJi6? zQYGf9XCxhXHkb6}dg-Y^I&?oST?t~O`ZQC$fUjw5fhr|Zt-2x6!dZr+bgvo0DxAh@ zIB17Q7ndn?;5ydf7Tr|7#d>^4Q28F68E^bz+FG$;3wElymv45cm=zj_#=%Ui!+xrwu MAf;atOB25O55u4_x&QzG literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a2c670e03f7938c34c2ed0382e84c8084c013223 GIT binary patch literal 1860 zcmbtU+j7%Z6kW$wBHK|e1VRc4MM(_mSnqgqSJQ2VIW#+DmI+|NiIC4*(YNSVe;2rt5`v%uobgD}f`MX7|o?KaJ)pMJ`% zsrZUvazFNV%Xa7o8BAh0jVYW^G0kwKM^Is%hXv2^d<|dYB&BY(c!%L=ucBRuDS2iz z%wmp;#<#XeJ;S+dkDgB7n7N)$9o4ZCGlf$OhaLyKDX!~ABWgqLIFk8{WX|p*jAQOk zC_VEU=5dxG6?z>!#hCrn#T>!{&Z{sO^qv&NMeR0qrzRRM;3C5iO-y~628Z-AO!S7@ zRaVW=3|>}oiNW~7-q&yiS4nGAgu4S-wu4Z(f@Z2fA@n75V%Wh`-6f%lUB?X-)RRm9 zlS;!)(1?!MK}Gn_gUdy*c$(HM8Vz<2UURaRy zn4uk&q-%h#ak;8!pC{-&jSSs~=v1O}f}WZDduaLj-!b|&!W^Re2>Hspf>H7qBL?7T z2aUrxLMQTzSQ)WRkS*e5Ain{!?Hp4+yoNsi7bc&)$FX-f-iAK@O&h1%$o+wH2`F#! zzhShEZ`-)`3iI(H*~ZeIQ$aeF4sudH!bRlwKEjcPBxEFc(g{*HNE&Bop675J=c!># zOrweu_!%c*LB~t7$|x5*`gfz;!H>94(NRn&V>!yf4p#6W%FqrT;wQ?|D%lkz<`xNA Jq4xwH{R=gY0DS-e literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/FreezeCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/FreezeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a9254abdcc029e08132102e0eee7fe63309a06da GIT binary patch literal 3939 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/GodCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/GodCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..28c6420869f0bcec84f53d53f0d4b9bd7c2a93f4 GIT binary patch literal 2897 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 G-2NZDh}aeY literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/HealCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/HealCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f24b62ffc91ff5db11730c77bb7236709adecfc1 GIT binary patch literal 2428 zcmbVN-E$LF6#w0PG-lU{w`o-ckVfZn0Fbp_uMK9JD7EFKDiXNOgcS9I;-*Fi_MoruFPcej3={bf- z-YJO$!st>EL!4n-!L-Fxy;cXuGPZ9n2 z;v!{}VW|E7EfVK8qZ~w%i{ojABbS}JR&q3=oL1#aLescm2v74JO|ns2g-rU(Nq?go z+yu1~=>k}mr`R!BtEpHe^Lb7SEGUkuuRV#cYvh8Q>HfasBY%eTf;R=URlQ1tYV z5;;TkrpZFjPWsa6&FCE+yobb>&25FA9nHlAx=B`A3U~zD=!?u_J3Z-eXb2I~1RFiN z0#)6$g5968V;NOzU?7BBIFV701Y#zmrUOySe22{Cdl>o(*%b_{Cs#1Cf@c~y9YW+z zGIIYGCNn=^>=wE+>Ugl6`5t2<(PUJeXyAMZ$!IU0Z{R|hq;LZ-$d#Vn240kc`f>x8 z16z^LrIlCLjE9eZgR9cekJuQ8SQke#NVRegW-{8q0t4-;R+~yPDzBm1q>*WWawZk7 zuPXfO7$bKG(=cHS+@#qA!dM}MhX~^ds5p;aOrwvwK|iiyCpeO*U^f=zt5)nsAZ{P;SE2U+MAVSgTcoT0CweI3Wyxo-EA#2;w@jK4< V5BK~5nrdUeks`ypv=PF4e*x#adz%0N literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..decec9c249bcb3b9f76aa9ac816fa3ee64006a62 GIT binary patch literal 2790 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreClearArgument.class b/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreClearArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..99e3c3b95efbaa27e66348c804b82bcf99dd7219 GIT binary patch literal 3205 zcmc&$>vI!T6#v~c?WXCLLU{|-6)L2SbOkFSsZ|I?f@vv)77M;^lG}9K&2HG;Ai)=+ z*m2bHG3t!^FZe+n4WcuSe)Vs19M9cs(zHpLDIYW+viETwzjN;IoO}QJ=hxo>jAB_q zh+)dIJ!8IdLto%dK4&{(p65Knwp=}D7mM7=ySi{)VR;5OT|HH>NF-U?84PBo;LZuB zP%e^`f-u9Gb#0bC!!$fYxH>Nxx}5owz?Gf~EZ40ubd}6w@3RyY@V))cgpwsYK^ z<&Gie!D853FkFV|^@F;vv!jef3c{Old4W71XoG*KH2?(B+KT<^?5eF9Xw~ z*o_BeS{`E9-p=f-lz3RhKJ2Gcx@VYh7sEM}OGrERC6XUj`V zhF32rJ=o4rkitpaL!u2|uC%%wx~$-FhFwjbWVw13ecGp`Ow1E9`$ri%Vv=yja9qJt z6myeGa)EnE+q4}O35=2Cg^5!PJDSloMEtyr%UnOR=9JE57e&rXw5GD2{0L4k#4i$m zwSc1<4Q>Qt&YEg9BB-6}sxO^aw8#TlGc zkYdm`*gjM|k2F=JUl78Xut9C;9^xbz=1zgy_|`TxP3^|NTl{48)oQ+;5z?fx zY`zsLrTWdVf3@gXYquCD_1=ufb4!!F6x=7hwnd|)T`ZZxqh474Puf-!)HIzQ;p)y% z(A+CKgyDn#14G+o}{>@4ku=(}mSKiaR}p>Onzh&tha=2D2Rh6Gy&*7ME`BVDv{kS;f=+&(`eU#mNxD-wpqSEmb@h{{u(v zVv?bX^Hp3r-nqN;E?#2zxIH>G6W^;=W7^I8h=O`{)q0&k1>c( zFosX*s``vN+vmvP3oPPG+{Raau;aBb8o@5ZMA1*iGA!7BrkDK$$WvTK30KL}7~NJ5 zT*|vgt18LYR?4(;jaIr58vGmM3iU&V*KnQ8RA@Pb8~&ls(rPEo!@uD5wP*0H4{Nlx j-+&cvzzR2Dg&VNK0jv;_M0&Y}cj+4?FAVR|sYd?=5|W5p literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreDeleteArgument.class b/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreDeleteArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..5f944cf8b5ac8cae088f28fd8ec19af1876c9e39 GIT binary patch literal 3344 zcmc&$S#uOs6#njHl5UcYBtw7zifv3_k}+vP1Y}|$3<(4#3rrFWxOFBslO{dgLw64n z+;?$bAGFFBUwqM0DH#eaDSh?D7b`zUJh!_uStg+>Jm^dJUCwsD^PO|=pa1-F3&1{n zAtAyrY}uYMJ$FT$(VeNR?eJ+m>lwD?YFRs<*R3g6}*DZteDQhG@#3;xg*U(v*Kn8TAZJV^*i(1L3N=S}^rF?sV0n z3L6zjXkgeKPhZe4>6)oqIW6NkhLuZJuC$MD07FbcHEJX@F*K}HlCg!Miag6`rVt#S zw=YpR+Zn2hmdib%f3Jf3u#-X3O+$CN%dqKur7wn!X~W_}#r!09M)gUPljpRZ)y;9; zF~mGvjCwN$**Lv6Tz5wcN`{={-k7WB$n~yO0BWy{TEZ@dtt(MES~Scl?#PHUFs&AC z=n%Lk7&fnFc3enwD(Hen80v)rx2706R}-y>Aas=!CiVyudkOG(sxs6?LE@T%N3owW zLgyXQ^K{&%c%?>C#zBU9wL9RC5bP0d4k<_qZP~K}=1{UteUh6ZVJo2^R5#dGSThXM z@wDyaw8`S^tl=%xuNH1+=-k{%-a%p&j;=zb_Hz1uZmzR z4N{LJX3L4>+i;y0u%Y5QbY(0yxxK$ z18RKY#QwELJ)5C%*@-jUBXo**PQoQBUB4LpKxsokGcK>_Knv_VC*uk+oWc=ActOF7 zf(X^e&-C>T$#|J+*s@jAwkUBjUS+6N{o92iP>C;sUILnyrM0mtA*mZk;Rdy-JBX8D zRCjW8-1>~CXJ-fXg5UlnTxHn4Ht!{I(bU@(38(CQL0tO`#s8$~1g+0UJ8ih0XnYw$ zN%x8l#c=iih@rc(9rsXNwHdqUWO={g-?2WI79LDpf-(%sfMszfW$N^%`6}|JQY{dhEMo}6|km#phPYI9xNK%2n8qx*2m-uKY z`)Hx{$7!FT2ZsY6?0fQCO&arwKXBwLs0rcg2991sUkRsTLxKI97>OYI-L~kh>TeKV zAu~oY9i1hdT_(FIG$9N+M2jcrmH0|38y8zBVm(-cMxmOkJkt8{J5ATzM56D;q zANtH3rB#u_2wO>m(Iw$V%Hc-J;YP~gM#|wv!f+$_$oKIvKB2$3n;AaE=cxS`L^Yd1 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreListArgument.class b/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand$IgnoreListArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..b2ee173cccf0b164cac2756594a8b9c9c488dce9 GIT binary patch literal 3444 zcmc&$*;gA?82{ZgFd+;rO;>8svBfq(%UDFMfM}b7q=wQqKuZ^Ol3c>TWG0=N)TZwH zzOVJkM<4W{J({+9jz?epn>-%BJDG$)LeHTOnupB2_uGEodhcKV{Q5h90bG+1V3;s1 zSD!0hRp&K3leTO=r=?xpG95K-<#L*taa8U&+;nx#aMXC#B$im2(pBCibjLknXA3!E zk`QDVUsGkl)eYU%xua@%T@^cT<6BbWzT%2DhUUCc$m%A;p~RX>$9>>qKJb&C$Pft+ z>!$9GFbqW3E!{oC5R6$F9zrXv4DvCAHilioTSw6hL(#ohWR$$26}j#7g|PvfWJqXd z*dI+SXqPqB(9EowbZyY*+(GDKx`qlZBv ze@|#Ra(8RAUc%FPK*mAA8gi|25*eBdEyWFyo7H|(2wN=EFJXqcXu`6yYO1ifsJoSB zQhjogoaFYcCTL($8HX{B;}YTw z>N;nKj3<$xhV&YO+Y_2e>TH|gFcr$0x|WAq!Qr+VpQe9bbf^{mI3Z&aCkdlaYwDK@ zJWhoksnnhjSEr}r$0)+5F(n~MgX>O=$(ROBFHznC0>cr%mzFK8(+fg$7F21ol<{>T zl5rjv${u@n1&u+5%_}@ka+jj>6rPdrG((%$R31*L4wlk;*bcDMg&^4VIk57$;@GL{%fD%R#&q=t- zuvZkbme5 zr?#aV_7QPQK7m}n4LdOgH9Jc;(Ut~tiAH86$l_vKkyVnU(NcS{74wzLZSP9f;rfX; zLgH;nS4%HWXnFriY_m*S#jIT3;4Y=G@Slv{8mQt?K)70x=TL^Y@qR94Tz)=)Z*th7wMdaAvTnqv;kdGF+<_ zPYdz672?afJ>onOh2(-zWJWI0w*5T0bsY}Lb~HsU-^3LGBHnMQ%4sTF-&uH3^^L&Cep~`U0lMqu<;$Oe}Ll!XQb?QH8@Ln5ifbcTf)nD z#mmf+7ci0aCA^B)$l@?bzm7L3PjAwxO#J1Ox9H?;I%z?m>u-!mlwj&aG918rbR59@ zUXjeuX%p>(H}S#hoL%u?4V39sSivf+U=>!d3M=Tt3g9!(%IElkzG1S$@Fl)R_+M>m B%;Eq5 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e7e5e40f7464df1184122e00a1f06d378b996d4b GIT binary patch literal 2856 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 L;syH5Ht+ue@UqkF literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/ListCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/ListCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..189dd312fbaec785dd6f1aabcc786eb9808b0501 GIT binary patch literal 1942 zcmb7FZ+p{J6#w0=BO%S$2yB8*o#?i9$Rc(sQbb2_Qt4n&7y|ygZEv$HX@beE0^h*z z;v3(T;`8VS@I(1{Zjwpo(mjuFZgNh}{hhzRlfVA{{Z9bv@C-~aTnIuXyHB6FyFBW& z!$@>_Tgfnp-FDdP@t_mCB929%B==*tA!Aib^#%$IwXwJRO8Qbs5xe}cbhVTS8K_&& zP&T&f3`Z`>K&s0Olcn+wL!lOSgo&f{=951YMTV2wbG-Q2=TAixFNT3H17Tqj(>A7X zjA5nJ_<{e#U7rV@+f0ut6iBn|gma@Fc`u?jnUc&-|N%!x@+!G9QInn7_`8ZV_!m5q4 zc$X?bXtgltN-xFQR|2i>M_iA-+m*g>H|a>NGj-L(8pG*!uXCtD(T($8zHW`da zP(-?GS4T6c(Uxh7ANztDIyy!B^f}Nbt`S+5QreHE`lXHQXb__*r<=)A_&2RnG%iUl zdil_B`@TpvTeXNA*fwyJn4b6D#w}f?LM)%rhH2uifjeY6Qca4M2FVYpGCR1(u%IFy z#6DMI!&f2-=q35A_ZZQ3rBpjutehl^xQ~Yh9xyD9ILny5pPe?o)*Gfsi@CFv4kN8m zEs2QX%pu&(*i9YEfGPY#%xQ5<`Mf23y_sH4Mz&z7N<8u?#S=OFr@hz=`%znHCQ*k* z{vB%?32)J^oTOh7FhOrqI6|jE(rtQY^juhVOvic-d$sTfX6{cq$D0G3San_*;Ph|F zt=H*vP@r=fCXUhCo}tw{i#JGPrxizG4fb|%CBh480HS2;VoJjB}rl$~<}xXuSd zd^E%-1Js-^hN!>57DFlzar*_nnn2-Kx;6pr)}klK;d#s_?$%St%pHN_8+@CDP{DWj WKC!NVqm`swK^q+koIxar-G2b&10^v4 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/MessageCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/MessageCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f5c118702b40a183b82e52667e52a09144aefe09 GIT binary patch literal 3750 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyDeleteArgument.class b/bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyDeleteArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..5c19339d088efdfe941c199dbe550d25b84e6b4c GIT binary patch literal 4447 zcmc&&>w6Se8ULMRlNmOXCM=W^K^;Raxsw5AC~n-Cy%A(SPF3tl?eo!tz~&MdRD z)D-Ww)_T`km8w|l1uykdEDIFDTWh`hczN`TUw!-&{K8}Xotas(o72fu92nR##L z_x|4ZJ(FMm`?;$CcHkEZngpgD*SGR>4<=^~FPC*aGjC*l%XP}htXnJ^POh9Z%VpE? zEyFG+_j7F&%yemPG<HM%c4!k*{|2LqL1D(|!$%ikriqvvI7_f84KM%|pLqK%ev z!6{X=3)~u>xU3s`$u{OpPtSX9QJ-@wo?Z-r(#xee-L}g9Kpf5J(4e4GU~5n6m~qlb z+J;j|rhU(H3d4(^^iHjTKte+cS{1Ap=v=6zVuL_4BT})Ep?PM}J!wj%S7_LT%>s&H zTSnO|3#>c3*nvPt%5uyDmEw%)9X4iclkQS(*084x&yxG-Va%VkXd|;ccK;h!m?5=b z`je7c0=F!IPVeIA72GUv(?Uo_DwdryJr%bIh-4gF&?7!4rYeuJzx}h-1R++HHKB(DbTL( z40$C5cS$#c8t#(Xs_%xh5oocE8Pk@DTL=YFUE?}YAqnJrQm$7>&Qy*cxBOahC!^PC zp4;?>SCCkOpi5Ay_edOXzyD3E-ab*fAZIHZH;2@DdUWo^wjl1kb1 zlH-&7jZ~SLG3-^ahjsto=xf-A@i3r+hUZ&Zt7P~t12R?tRkk! zdXpq>iUr;yJHY`QR4_rh)Fp9r*6>GN+x0ZuheMP+G`3q{Lwy#niv%VQOPWqDAo#@0 zF*EBAFJ@tlw<@Lu^o(244bRkxq%M1d?z{C}ZlDbr993|HqIDrgjiHfe8r~u+vW;UU z7tIe9Z(~se9bib0vxVKS;Wg-vV+J_|S%KlzWN;ZcHJHe=f09}A)<@Ty6rk-zMLHlQgXTiZ>j!j$stn4`x-sI#s88xtEKdj60M7{QK8&2U}3f?KOaXA?c z@5XyrTC+wuaG4u1^Mp1aJ3%~!_i1>)lu)hmgd-!974VRThb7NrdnZ!6RXoDD!+>>% z(dNiI{Q-uq%c%9OQsYq#AC?*|)BDB`kE!^mfVMTDaNeyrxd9a)r;i%+((xxXdS;oD(6@z!Pbo_4FAGDtKJrhWS*>H`4FtG<-hryZ6x8*Z~z!uopXSlvovC zA5sYIhw9kGjQ@yyyy4Rxt+Z zPq4t|Dko~)X;QpMGW0cRtKb-ZMb^us|Bo1!gfxyzxUAqgcDea_;B>M%T;%tJh9BVy zgExyMe@>ocVO0gEQ}E-4f(ixWY2K-`<{nF4Q8&!@aOOgOq6|ofv%XY*l7b}03bGytJp;kyN6o3T3&?SFWp|iz2~sMigaQsbae@D zZbIzouGrO#HDl;Y=Y+>X|Nb5B|b(hyIQ5GPY5RG zu^^Pw*mV8GpOqF*hni=x@%r-si7$lD0~cSCf=_ZOjXfoe^>q#~K}<@76w?t4sBkaI z0Q`(J_&Hb4V;f#T5-;LT{1O@b3PMLlp++0wyYKUzq}B{tuOX>mrvDo5Qs7*}eF{#!ggc-r5DGF1o>8z) z!4E0J_k4+_;PIB1uzm%h=1_>b^!Y5#Gv+G&HL+M^xj9_5@Nb7?+mlelS+rinMHy0a z0BOkfzXx#a2t{jfprZx{R}masMR0Hx!Xa((UnXrM3a--IPq=NuPnjh^URVWl^#bDm E0b;TK(*OVf literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyListArgument.class b/bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand$MessageSpyListArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..d7a329cad6138f0355d3ff3a8cf3843a968dabf6 GIT binary patch literal 4267 zcmbtYX?Gh}8Gf!8jVzB-$8FQ9G*l#^v9oxZ5+K-a(!_CMr?wMEwL=mLjHQu0@pwj^ z8KqHJ%DzL`p#?(O8kSPp(kgbtQkHXiPCxJmIQ$bJJa;r>jVvp;;18oa_rA-0x95Gw zZ~Xh!KLFT|zba@Gn6(|>EL1LQ3%Z-nIj&LAbH3@=o|bc#mUKJsX@=(+wr}c|r%iFK z7maMGGFm&`QQw&~J^!#tq=n>d1t@Sdx zWo1g1UNKxRQ*p{WT_fX_DyCh`IQC!)?YK>af?k20{gW5;i@Ij%c2UdvE=h))cLwIV zAke3x6A6LaCQaLzE-%d+?xXs=W$A1Rww-f)w+S3qbfr14hio%;mtTuZOul z=LPnzN7{6QP}Q&$@pdWVet~=YN1Lx&Clu&cF@RkH3hkZNmuT)C{mmSK%sndhO46k7 z)PgC{Y3cKZC1bSKZo06`vBR7eDD+P{Zc&>rFD{yXRApLtoTZV5JA4a@b<*a1v&w;U zDZB&kRIpz_dy^%j;$3(*(=Q0S;ZEr`WAC~G2k4HLvg$Qm_6%2>nB_BMrOV!fVFg1h z!T*I{#Rwj%UFekV`ex27>Au4Y=^Jq6#;!~V^0chsUNqdeiXhmBWR^ZG(B3cW^9YVA z7-eq6f;hUM`=gHKxGKhQjFhLxjtXpvM{$)T5IHV$a$-$3pPav7oRa0&O?=OXK(63)RJt;v z8Zl_m$dBvZLe}t8n8BeGW^qOVfpK^v!EE7K74OAafnFwAy@e1J1vW=T7wD(f;clGA zV+!6U&=b^FbfDt>_yAGaGcU7P8J>w0bmSDw6QF6ZR&<=AWdt?m*!;09I#`?V4OcqO zQ;`Q5H}MW9ZL2b78M1c~2;vwMQ8&aT43z@jw|8y5Ct>n7Yz-+Cu&Bbq5&_J3yvz=| z2J51bpObmzs3^(o={SD+@Yy6}!9}som0g!tvnuuWlJOUeDDGayDa3mbbKpFD6=hr` zMw!yypkB5#xHhni`}FT6Tvkvac-8$IovQc{KFmwm#wEI@5fQ`dr|?mHOu>_MWu1R^ zcH*dtkK+>pse99$LeejKNzW}rCFI5D zmswfaDz4$@%#I6=oX$q#0U#jCa^ozyPRnY(ogCC84jIh*ZSk6 z=x&jPcl$bRQa~*=bd-lS)ZkiR8g+HoVl2l8s!Z1!bC8b>KuXG<5VNzvyeOx=dhJNi zW8v0hO>pYzu!DJo9VI^hRZ7texHrb!plGCdG&o4n+hg=p)`F@h>+8A2DZLa-nhJg= za8ImO)&xeu^DOnOQ+9L4F;kAKTk6O@TKilWls3}o6Si%*qn6Gu3s1qH1rD}sC83sE ze}**Zihqb8!-2Y;-#f%MIaPDj&b5LhpIv-A!S^=)ZratC>Qk@tclRsU{33VSaJ$?O zxQ9qTj2_M*cW`e@jRSXbCI2=Bk~!4kF5Df;oeAY`y@B-EzPDV**4lq48Yc0qm=ZZ+n9(yJ^+IT`yyE6%SJQfuYWH=j+Jq zmKv|);7d4M#qquqHB~E^Y(vL$H!#Dq>`)@zS;eD6N?KXLIp)_hcp$AT;< zg{R_jY$@mQ204-sb!iJkdhIK;>gu6@Jq%|?)?hS$t2=R#+C`n z)vqb7gCCds@Eg3q_#O}myoi^Ww1;pLzs1W;+bg&auaG0j8}y>eRSMUsOQvLvetDIC zh4ioT>?#ufgr;EjUpTH{M#1@;%$<}1p3E(u<%yGSmNrzaaG=_dvzh literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e1683f60e54f47442cd44fbc10f9c7617805929c GIT binary patch literal 2910 zcmc&$eN!7n82@c}35iLoAW#(B(5B4`FDDhX8X8GcY10OZ4Fmye-CUM%?QwT=cX1{T zU%>C;A3CGp$c!JrFW|T7`0VBAfg}twbaXPayU*_C`Td^Py}w@l@h5;es9}T{@`mYZ z+pQmz9d6fE(-zxYbv4s)6xH0_-D|5(Dzhb za66yaY9lQ3UGXdmhIeBa#t6fJBiuC^9fsi!fSGC-R~UvoCNdIA!M1s;ObAho;yuar zeX=)Qk~cqKSnC=DpWoS;kqmN0VifE~bC=R6ig8?%SOXGuB8Ka@!O%lC{)_gL+6$q& zxy)u5HyNH@kW8szP;M8c2LmQaTni)3uzEq|fu)6dJy4&L>L(f2-!> zPbrNY({>p$ejvLlK+$Vt-k3}eSB1VjlkLdBDhp%48G zm&=+VmYcgZVXyL2iKdn-9tZOFc4c|C?h#Pv8;Lpy|jd$56r}axOhsq?Y0O8H#;qdU*VpF^r#aoviB9 zc}?gtHBPm2%6N(ig=44#Ifl4tPzI6BmMma~=6~XoV}bT+kK$6%8U}ZpHgWjz|KKox z+I9Jy4Bci7YoPZwS}~ipDi$?agCjv__48#$dY&OxG7MoCbxxlq(&-)AJ5@&T?_+(L z;YzT7vZ0;;JpO1=$dA%n#<1NPF+u&Khd!m~R5lS>_0XDLHX0)&{f%DlT+I$f2V)1g zlpTC$A47*2-3T9GY-#Ec;~SF)xVn$TItfWB-13E#6f(Y$mBN%SOm7@O`5m{jhq$vb zb%4)*!`)vz@Gof0B1&U|NKD`oJ+7m;fh7HAaT9sm!egXRMH)3^u;AU4Ca5Uj9?f!9 z#Cs+=I1nLY5tDpahf^J)0D$CME(IbLRyFb literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f16be692ba162303fba7509fdb016c56fb9821c9 GIT binary patch literal 2728 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 eFMq*b>AIg#c!h}jwJlQ=>w%zQ8-IGF{ z@fUdEl^5~{dgF{E&H#lOM|;Wd@XEiS!}y*}YSU7_MG>;@3ZgoyzhDb;_2@I zF5z1Z5r)gIC++3+Z_-+$|;NiYvmD8rm5KJ-?JJ)>c<-x$Pv`I5mA=m^JD73?05O^Ioas2!`HF=%*%a zCz%s6MY}n>QgX^N!i zmFvlQhp!7iisKADbFQ;)RKtb9IMIa@IH_Tf!Du?xP{=m9b$~kF!zqR?(u_4r(%~h_ z;Gv;?a4be~hSFU&mlF+72@*vY1`yYA7Q+nPWgg56zhVagN%9qLmZCVv5Z~G`Z+SJt z@(kj_DDyR8aMKilAw5H}WNgP!0ZyvNc^&WL0zoYaS#a&UHIcT6?4kHxg>_N2e5m0A z0<nrln^Hbm=5o?=JYUBorbvJja~T>AH>=`*o0M{NUB?Z~P+(rI5+w}h znz`7<_!2!0D5(y7ij0QO7%sk2SJ>{@+c4`(yQB3_O|(KIzmxy z;+BRls68|#w+>v#5^hs(EBYR{OdiPBt2iCSR}6^a4#V498_Qc84(V`f;}T8swW2V# zHm+mg={)EGdrElCzK>tbgU{# zws6aeqOvP8_vNn0q#sq#f;#tLv)1-)0o2u6%nC_u;5DXX)aLM_a7e`5FH!Lv+^1Pl z+6cS_@6l18=LcJ?v) z_Z~SA9#N)bfFn3cBYhy=p(jOUF9=0DjhBZ1#J~e|569l!gb_jO&%=LU;9A?!w%F-S z3`Ot&Jv1NLL_%#o#KEI&n@BQj;$j3p;k)LQs}bCMhEe*8v4{Bh5vCs^{Rnf9uG QVc;KpPiODbS_JF=0g0oLvH$=8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..be284a9b08ec320bcb2471c5bade0ffd2a16bbc0 GIT binary patch literal 3127 zcmc&$TXz#x6#h<{WYTmh5UxR>L!l)B+L4Q*O)ZyD1PxFL6e*}olhbtQWG2j|Qt*Dq zyRZ5ed{7@sk+tyAwOsxKpZyiOT<$Y7fk_ilmJdE;a?aWN?DOs0ch1j${%{w-etan* z#xQ1Du0FGHU7gkJYQ?hoj8<`V%XHL=Rj+Gi)ls?QaMRT_!%@%hx;4)yxLq#>QVDT} zl~=TRO*J&Lrk!OJ6sT72rEi(F`P|&qT zgU~Y!w^CL+YHP)%b{_3WM8)!GUFVLRTMTX9q*CGTJb-1#X|x z>U>NX%gfk_U37wL1t!SbT)UM*4~C#h7-mo+!Keg9+bqK%J2D=_9)=z&^6E*dbwbXt zHtKW}>|`4I@VJEi467nmkN7n%;|Uy~(x`E_%zx#;&4h!DCP{F>r9+$PxzG*xV$ zro_f6;sT{+TV6w<{YsVS%`@CIF5x8!FEXfq%LT_nK0Frk;e_GUbW_I5xJ<=DVK`wr zu4Y!KSoTq#AJPuB+9gcOsDL_5)J)MbXY^WNE0TkXzwFtX;AC}1H@JF?K7n?)OgWz+ z8m-i;L-nA3o#7w?4I=91S{k#sB0(pgAJV>zIT!)TX3q_FEXuZwreIRy23*Z14+qj{ zfGGcJ%Y_kGl;OaotlFH4R)q9u^Z+6#yUee8oT44&%a-*HB#!T;MG_QaiumN#u+0`m@C$&a+EB0Du5fYPyUTiwvf|m4{hR*>hSB!Ok5QX`gij=VOl0m?w~v?# z$Dmh^cqPgB6rT}zUT?Sy!V}71^FE4tmo8hLUE!j4>Go}VMhy$&*b2Iz5kmqJz0kU7 zM$a4i_RvhFe@6d_owp!=M}rt1p>NV(T#XepmIDQ>#44H*5Ui#zZDzj&CRtxLe)lWn zciq973%9WDd#qo?=FHYbY#X9qW{^IM$lb>77~E`3-O3 zZA#c>{D^mGl*GG)s~fT1e~2f|IGK14@6+}VXgP)t{qmTk)dbDsOSt*1zka_uhJ85u b19=k;9Tmc%Q3!`dAsiY7a2P)Kt$pzqAY5+0 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/RenameCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/RenameCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..68add5601eff5891e6596af71bbd9e246a3333fb GIT binary patch literal 4350 zcmbVQi+2=P8UNkQZf3F>AYBMBgvas4TGV&zK1E+~n8+gapPqhUP}t2)#Gm zz8gsN%{=$MnNyv|6!Z!#4V@(Gz?)1TC>WEbE924JgaO>CfGA!Rk{cX1yg{enxEk)l z4kG;EuAKsl!zNu7sitC3#+4#;i+zXa^i}_%gbdt&2B%DE`#L}J>*T+=6l_(j{j`h@>@Rdnd zj%m10Dw{WMln$6~(JGb5TPofrr$RfrR6IaL@yB2?Uptq*SGv=iO#7;m{gTqQH)9*J z8gig5^Jsp?Gm9B}FA0!r#-a%MY}qG?1IL|AOQ9-CnZrCR1>*uMZ!D?dI8OKxIy5=K z!8;S$gd!XTw!p%W#@e!m2|P$#?Z_~~tzqkG5`8LINGKTvA%w zqoPb^^<94;>o|p+bIOk66eblsByj7TBwF^Yg5_Bz8w0^jxcFO38Xm?w1vIO)pY`ca z3Z!S@hp?4(h1A!1Oosmv4e!RIYy?y_QSA!M|9b>d65u5sU-0oA5KBs8%Px6_on`VjGx;~EhfsSOAJOnpd`zIJ>Y_bn<$YZtq+}gAU3LxG z&C_F6!A$SwV=z2TjC?|1g*Waxr({R%&N`!~%+V67P5ySv%828W__Tsg(c_!cuHiE{ z?b}#uFLe#C*1cvjZ=9t1Sq-0)+v6p6;E5`kN(y;S!x!*H_AL768J10qw}r7rT6ITA zFDBzlT&Z|LV3h<=*034rWB{HjHyU2jVoj`8@nsSOv6IJH4d?LHAWdA`XL@9f_WByV zMgT=FS6M*HF*5`Bx`uDyJe#lQ8g{9`YTi*`McW)yeUO(N+PtA-aHiX{wBBZX3l|i8 zyZ%ZwhXER1l&n3!WO_TT(gd57Bw^{+cQkw#->VXOmDzl^Hq>>|Ig|#)c}c?*rpb*| z9_GfibLhB6jh%;8yv!_Ri@ENi-%Cn8ei~};Dt^E|v0lP$y-e~CHN1jX$&#)~FJz(Y zoHNIvFxKZjv=AUolFU7lA%3jkC-^DDVdQc(h7i~kJ|oyNH)mz!owZRmNRxNjHDSS7 zTPklh4GaO1aRX5bX~FIxW7I5=3=KC=yeypMenQNWCYOcP)zd0ZWbp{-GeS|jKv2I7 zxH5s*m|6}|Vk-xm~ z^V!6=G=F)GMy%@+;xBR#fyQTJb#ejbajf|Qn2!Z~Ym&Uo8EzI`h*A<5Th`KF=;vc% z;AJF^wzb4xfSOoz4za}IDJ;E&m2DNQu3-JJTwXqNdAYyb87J&ES6L)-tJq49=b=@U|>_#(KznMtsF(TV*s~d zGxcS#f?sEw=}DGvZ{jG1E!;JX=oQvRgAmMxia7sWq1)B>2LD}weudu{QHpRVr8@af zO4X()D5vDAz*gMh$1U>YV3-j7H&>JOM zl)$N8RaYzcN^g_i)Y7giQ~266z8Qh8>P;0~Jfg>Rbs7~;#9G<|TVJBBiSO%51(&Ph zuSFmoyk&mN6n+#ve-(pIvZ%o9E5y$lti(Db(Z#tfd^^Ig3zst<+Id~ufXC6nJ5m>( zMT%W^Bc3BNFA|4;Coca<9KM0gLdWf*4O_%IY-L^DA@=b1AU}wXqEC#XUsxCrr}*LX zDDD(b;VyBOA37H>SjGDUnkAZo3YDXu;pfDf9Q^{X6Yp~L%PQXG=vVkP@!mx}zrk-2 zjkPxf>4U;GTh3gUg^?!c;uM+?O literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/ReplyCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/ReplyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e43fa0cc379492cc47e312cd47c9bfdbe4136229 GIT binary patch literal 4703 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 bJ**ocUy+WlNXJ*C<15nf73ui0Jv8TUL1*!n literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..07e3d3d89e24d8b81e8eb215da40fc20a65c0515 GIT binary patch literal 5095 zcmc&&d3+RS8GgQGli6&B5<+RaNXv5AB+z6f9F0jx2_Z;qt|kx&l+wv&vJC9bq_eZ( z@Mx{owrX3iT3fZXv|6;N6m<#3Mm($atXOaBiPC!i&(HdNGqYqjSrFR;edCV)j;-wiqC;Rt8#Qz^(;3hbX}uUI zJ}v25x16Qpo_0{6wAnBXr$wN+x@JHi&}I$mArxb_ikYYonAvHVdUrZGq}vpl&;=?x zt(cY=&}>7#`D(%{|k)VJO=3;gku0lk?e1S`I6l&Y4Ic-+LvQ;d=LVB>TeVxE% zxf-1%X_9;vt9UK0rq8v}QED$xTb-kiml{nqIa{9Az9vmUR0{+*rL?%-7>P=TOC-ak zQ~3C%o{vwhz??|)9?MP)Z`?Pkw?vw?q?I!oSM!Hm(?>W@j**4=B;Q`uvVb{;!mqs2NrXgkvgj>OLS`x zZ(w!jxFb>(1PflRim>z|BMjqkT?p5sOF^f=iVG4vY8y$zF~;;%w8M1hr*8Df1hDt@ zYIcgTs>=0IHdZ-_%2Rrr)fmJL#2;$ZFK|Uw#7MbHX^}B4VGKtY1HuTk+l0*uh&Hn( zi_YhuVhaW-+VGLf#ifoQwy{FHh*ZgRGBV@>Y$Rpu*QErRv)g4M+{DDG?wFpb+4_-$ zH%mfI61JV2Fo>8Gr|m5)t`)k95yYt*Gihpd_+?xM1G^RM5~w>TB+7)P+v#<=N<}xx zr-}rUjOW^(zIE+=E~L|$Gd*X!Dc+@xviL0AqF|J{;QBE8L4^(CaPerGiZ$d$&DSd@ zXaxZ0tnybOtzt}~TIpbWXJ^mmAoj8qvAyNF-x`VNlabIoX%%?z9)?HgexCi$sxK{$uxn_e6{;;s#9~OEO z>9}F4crV^Z9Fzd$w&xgYYdOL7BKZ(m?!gCCd=U2&A;^v0e#BrxN?v*HmD_1slYkT* zF$jw5`S7UyZPx4qELOJ})Ow{==e~GzOb8F+BMKg(u@}i$#YgcmreaFgNFe|zkctD+ zut!vUT#g>0ls4w;T80C7T)|`cG254N^rVVU;FA<%$&8=l@ieSxFZ;d2sOnmh7IM%D zY~jBUK8-^Po)nnvW=TGwiqFV4r4SBHCt(KhIhi!=8#lD~1@V+XIL}E$)}6ZTc`1m` z^Bf6xw0Exy;)@&u@@U!jJVG**O;Ap43-cr8CVGC`<`-655cSkki?; z^r!8b9cMbvE-?NOYc0QDv0J>FE=QBR>45@rg!_O_)yi`qLg1=gJ2p>k?j+{`l{;T@ zKJjPFjjuwx=JQKyp}ZOWjuzWZQ1!*kuuQIqJnncckiHPi$*YaLP!<>_3WULLMlOtZ z8Yzc*mGv8OQ*+WbG2-t3hYrm-(e#nDg~;<=d|$!$SZkAwhf{EZ*BW^%Qt<=)kjm@H zQD>jDgejSw9w)7njp9ctPU6SR9u5a-o$0xtx@Oz?!=>OS*~)c!wc57k3JKu_{7l|h ze$Hg)3@}iRU*gvaekE|pq?%G46)#GNFV=>KL-;Lzui$rt&2!?f6yvq%7^nT{TKBrP z$?Ma9z#qxpMPD~pr1=6Xs|$qJ^W>!c1;Rc5zt~PJ;KZ6vIFwN_m7l=kDO&}Dr{Ea{ zr--cmR@#o~vKKIpQ}3*G(qo)JI!u%ISUC{uDFy$a*qkhPE0?vMGl^mW=vWk?1iU$O z*eXMaJLSAg7eVFwjGXsNNXfAV6@1PjMU=mSza>kKqVg&C$fbOix|?Cl;ac?wa2YP= z8+#VQeDZM7O9&vytrOwEM9BfvEIp37gGVv%2(HXvQDs#IHMRU-c?};K)Ez^85dw!Q z8^VF&`f)TimV`?(So09BnR0MF=_QRkyCLsvI1u2;H#U}rOP`%~tk*pjaF6xnA1lpZ zqhYW74sLNo-q?Td#h<5PtX-9_S5$#}sBeZ7t1R5HZBiI>M!llPx z7Gv|IL`QmMkJM7hU>|=g-z;A!X;D`CINmBPue>9JcRq;7INp=N`zt>rX+G?}JbVO? zRz8uzrvisu!q2*dSNMd7a|nHcBY6a0$RqGL1`aW<0m!)Di$#1cWFjrbQjYAks3K%k zV-1!d&K-k0HtMj4ch!fnj03}RJc*Tfo;S^tq}JC29|<`NQ9)%;#(B;ZITt?Ihp=qE(OXe>t*@}9)U8B z?;IY-^Nl6P@xoxZWa21(%0w+0Yz$4TDl1+Ud;)XBp*g|&My7_F0mtx*B5b}RDCPv` zls)>≻}%I*#8QCQmOM3#IA2nkg8hq;0I)8!->t>G+#?r{0bYxOvh==*_x_E8j(2 z`7YwhcM(^fiz*n_lQ>1==kd>Of5M+x_REMC`7ZLlo#r>`qN`C{{tEvrQ?5WLSgzn! m1$QcVNx{nsv0rfWWl)bI{Dss-_$&U#Ux`Nz_&ff&Cj1|+0me1} literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/SettingsCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/SettingsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..7b21c69e7b750a16d634462ef949082289e60a0b GIT binary patch literal 29108 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 DOam4* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5c8bb5864e6b96c9d0275d4143718991c4d0693f GIT binary patch literal 3063 zcmb7G+jkR19R8+Bx@lN$p|li1mV44dLjeI>L`yF~4HQWU7EqjQrs>k{Zrt5a!TbGw z#|x;a_`nMw1JiXRlz zG3>N#&lovW3h27nEqrr{aFP4S|Uk|Tc*I8N;gymTMj$1u0IufO|ndgw%NU%GpkfekR!7tK<^uoybh zHDl}z((Vt^KIm`hVu#RhdSSpweah7?s|tq754uVy^JIO@q6FfN4q`o5^1k?PQor1Y}9d{hL&D zV6!Ypc!ynHAj}rekX|w?ao(yzL6o9HH*az0M3NL(HJ_hQvn4}-6Q{1JOm>Cf`afe!Z{_Jy>ydJ;V^V2 zlC_bTzOeF*u6y;~t{5J{ZUx;8+iIpWs|OW5=w(<&SsfDNoQQ1|dWeIPks^QVrqFF2 zh@l^Q73^V{H%+OuZ534P11W=Yikl@dIKr@q?o}0kqzxsS#sLNU88-j#L

4$God z4B{X|q{tn&7Qy`d4ynk>VDo29dtRJ<&mh4&1mdt-PNuPbr16aJtx&0 z;NI_}95C?>yh*87fWKvM#CGzeXU&O$qeo|eEQ+_OnHn-rO%hW$S`_b6WtDVecpo1s z_<&(y6{5R+Aye@YJ|@w~IX2Jh-1Pz+Yp5(W?Rtr}RFzfL?40p@NW_$2ffQgCb25yW zJST`A@w*v8sB))3^)H%1F^N#NnIAIrF*1l+Vj_55Q02!L2tp|1aeZt*FZyj(!M6-c zs{py91O?})8D;E}ql01zdx>B#j4iu zA6Ppaim%ULe+>1i_c zS7hk5axMPsRXl$MFVd>N5Drh`m5RelSn6B6HDwWhr?OIcPU5{I;mcH3hz<-?{#<%4 zC)`(H5y8_!P^`u(`e<2=cC4Xpyq5aXI&iFqj#fCd@;5g4ARedVC3vPlypB)sDS;>F z&f+s4;_LVvU-(CV9be)c!W8LGoF`}_6f1;SFq6 n(Ekt83bHrpC=~@vfu-Prg0%|13)3pj*<2WoCF7wWyaNA;hqvPc!&HF+a|&6Y99m86tgVTGdBXOB3H^W5AivY=>|K3QF zVVPOk6+<@Gw{-Z!+{kb%d7lxSEsoZ!WM>A6X|Tc%#*mgem%BfyMz`7#W%A&q{0CYL>Vy=&+-Y? z9^_VDvu&cCgdGfP=Ofr%)O3P9j8@byLpu@@;)I27h17)Vq)gqkWOU#W;?z)Y55pRN zp5}%mg`eFrmB3@fLbXt!oHDfgLGZYoT!?i!l4J-^5Fba)qLMG#j^bGA8LlgiDO~Rr zt~=*>EK^}=k78f@WIQRN4;~uo?Hvf=0Ht1WYfcHFi?B+Wrj^kQ)!}xhB4(sy^oSXO zLqlDoAsnO$u@2>e($Oj+IV|Id;7`agz4b+Uj>_mmKSMoLb*7(+Tg@%SfsuMBI3{Bd z$H@ti@T6(!gq2{S4}8~}tj92(k#K@2Hos5C2u_lnJh;0Nbu2`NQeEw-(m^R2#VHA6 z46A+4D%~=k6aIo}-86XJfj>yk=ugafNrsAX%DB`dU~ott$3hl6=Y;^WCc82 z=LOSpi0@U!KQ~&G>jWkxXbg!Zh30TsLJyWDbWktmG(*M|bb^~Uf5fmI)kqWEyJ_DK z=!Y$@1ry^WF?5OFfezj0O;={vc(Mof{VoIH> zAm!UcT$~ix4B9>Y2T25K=uOuLdM=}{1icx(gFCJv{Da#q)3eSsuE26?%iaJygcbBf zB864-q{%fMt|PFHoh3vfO(m?m%(k`t3grrdftj{Q^DMU3;0n6hen#u)HMCs?jocM^ zyo5bhkrd7SZqv0s!NkD7-A^l z*#FBTh#&1tyw)x1pAJNaZlu3--Oy3!m*Zc1;*(50yI#&k#0L{=-EW~k6}#~nJ}0`^*o!alCGo*q{cFnj4OsZb t?Y#x9+l7vi+?W$GtR{0k!@BXs}( literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1da285c0c7a639ab8a9d87c2d1af072522d881c2 GIT binary patch literal 3852 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/StatsCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/StatsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..55e41a54f750f65723c4f8f5e59188d80eaf2b93 GIT binary patch literal 5611 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/TeleportCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/TeleportCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..8da117876820efb92105e1c3f0fcaa5624b6f69a GIT binary patch literal 4943 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..39edf10f1159d70218419aeda1ec5ba8a7ac21e0 GIT binary patch literal 2770 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 V5g&>Ui1*MNT$W<;mv{@_`7go1dGP=M literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/TopCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/TopCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a0f49f288f9acac9030d86ef333f0b01802280bd GIT binary patch literal 2719 zcmbVO>vt1H6#q@zuxYY|8Yr}Y5)dIxXrh83O+`vdr5d18Xld~^-As~gH@jhXgB0H{ z@cn*)diV$YpneEc&hhA1|0a*eJJ}6v`rsV=u)DK&X72sn-+j#d{qOI80N95g6|^xN zFfCUvE?ml#xn0mKTNJtG>XzwbG^xt7haW=J=6_YgySqJNU1BWD#v1nr2b zP!MKVm)A{kqE?v|_GvzA2!>eR(zr3nZC(ER!Vb5rI}8W&|I>{u!&=umrkBdXagP|5 zHqWppkq>wvtx7_&{VPfptY=ui!ukke=uxo|n;60+;Z9k$QDE4RXwlPLNMlg+Y3T7zDR@bWHIf+oA+&sZ6 zB8(R(0{V+vED7t*QnEtl}ze|Iqs~6VLKt8ctgdTc*|>QIm;~SB~MpNK&7~5H+pZTs2d_PN-uA`L7sVZccj~I71CW7KxxEbVsn6tXNjm*xHF5 zLU5O*v`F=L=lQIl<{VoNht4H#mk8|o6?!OTah1w3XrrZvl7+4bmuvIKdDTC+BNJB5 z)`ScxRneVmMOtZfN9JrCc&-d|{E(8{`i zl{EI_0L?Qzj)R^Rwig|Q2e_X43xn4XPu;@M^bH*P4Nul_G&WYpGj*I;#HluP{G9p| zgM*ib4f|8EIe(Z+#SDLVcYS@KzR)5}hMTY#;kIF_FVwy3 zCN9?TdhG2w-o1$r7xAeyO%U4~VeJ7IPPXJ(_s zNA&;r#aKm%R`~-gf0O0yo&jd9B~|$Vbl>hieeUgZ?(p}&fBXgDJ^Z5K2*af3N6yCf z6RXLCdd&~S2Cqeq?}b*)Z?(8r4=oXf!iya4hSu6vGNvSiOaoL^bBrz@4YRfa1iKWNZFUTX@)L^5)@*RUi3Yo3SE zERV#zAGCN>V9=*(uH!k;#|%CB@jDEeqF)y}1_--ew`@DNxH#ErO@^V4qYS+Zc4gwa zfgv2zFwBsB#2<6T(W(%B)%S#nEJhdx8Y0>YG34_lwNo)EM}gxt3gdA|Cb)mN(2o-s z(=f^~d;neYYuqK^*Km?So4d78S}HHn)JL*f*t~ zOveR=zP6H|;%Ls_P_s}3k413RKo2gNcncE@7Y|LZ2GO-lT*Gw|Pbi|bkT;0ui7s$TPEped8Kz2y$~^%-+%BZje&0(}&#;kK3c#WaISx0NFv zD61(8FB>RgPQ&b;gW|Nd!$`DD%*#W^YV9DP9HfM8$90|1z#^74P(!))Qrpb711_6f z+&AP+}O_P#tA&!(Bh9)3cA|m#fuu@`?2|+@i&UEaUJ@+i~gj4A{6WRjT)6 z6%`F-hU1b}^5n%PkBYwQ2PW1aJJw8TZH{3y{pkC9s3X|8XW~Ap~nHKfKQN)&)o*)wS9FGY7G&W2$&?MS%ZKcVUyA)H$BL+t1w&9v+ffT1le$0X@*CD=y+W@u@ zX!wR9mnv-H#7-}n2&L5r=u=j=>5Hb^-X~`wAf={@-t|0LLQ57H&b(whZR~aVx^VX! zd#ZG_nBhT#BsJ2-t<)e?>7<~k6w9hB#uKCLw}YCPcT_X&_zYi_`olTuXFc>?Ck)wx zY19K98vV!!a6_#E$FfG&+{NHC9N)#M-;w)`7LVXO{Wj7+u4iHF@7m~c?VYy00z|^BXr<62I&JRLCp9F-od*xWAuN=jRfu=;;B=tx{LQ; zV2a^p?=EIWdqpO*i-k#T;!oK3pJU}2KHtIJ?1LSA`3zsv@T8`ODq2&++-UC(1P!we z{o29i3;0Kn`IXS))UwFX_#~xx3S%V6dpM)mEmDPuLBdXsBD59bDjwroRgfya!?wz- diYNGf_^HkmT^MCvDlbrwn literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/essentials/VanishCommand.class b/bin/notifyz/hardcorefactions/commands/essentials/VanishCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..aa3b203045264035caff577f3c61b0aa04dae079 GIT binary patch literal 3045 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..418276d17f7227a34992312a7f3ed5eab72e9d9c GIT binary patch literal 4358 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 C!q8R# literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/CobbleCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/CobbleCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..139de499bc1ea7c133ebf91db1920e5716b4c884 GIT binary patch literal 3337 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 TiO{RLYh1xc#NiW~M)2w14C@*^ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/EOTWCommand$EotwPrompt.class b/bin/notifyz/hardcorefactions/commands/hcf/EOTWCommand$EotwPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..3c432be656f5ae774bba71f3ea223f38c7a32093 GIT binary patch literal 3392 zcmbtWU2_{(8GeqfRI;@+(vMAXQn_)ZmWCFhG>t9GiKt?^mSQ)d;I3Ck(#ES@ zb$4ae0a^;Qe75BqLJL=&$wg-v$c0;AhJhKb7;d=ekKqD_=j?7|#j)IBxY_fu?>X=L zKIeI#bN>FHKmHlON&F^>A%WA58(8(ttJ$XE)lAoub;ArS*YUHa+iDq3&CfQ?dbUum zuH>VM$$}en7d^Mt4w6U+9CN)!cCE9%ZUtQ9Y)H>Hq8%!MXE}|?RN#)&mSY8H1cuX7 z%L0kKTa%+0#)yV}xI^HslI6&SPHRniRb$PT0^=puH0))=v(z}AOax8K7dTV;e*(`5 z+}V&p6k1ij5(vzuO9K_+x0Zui~ESwr9!DxUJ*FdA5zaMr?xt*;Rx=htXxG`Hs~#$-?R!vSD_r;5kU;e?I>+W@M(dwda=H}n{N5KV&8_G)(tu{ZNqB$dberW zexSFEb+SpXw2iK#8~StQ>iLYG!ZBibi8+Mf`GE?uX>3S+1dm`UiL^j=AX6GfOZr(! zK8FN9PrBQZr|>9F2;8T#TwR%2x^QukO|iOKDdfuwa}@zmRCzz9^3Dj{pDyl|=Hmhn z5<`|o%~#l(hGR-Q#8>b5Dy0-YLz_TB&4Bc{@Mz(78qJJe-E6CL4&tPS&nkZGJGWFQ zETr%>YiU#ZDSV#Q6K?G~b<1n%t{2+pG@MrU!%Ky^6j*sfj+??+fsycxrL&n)dCY3a zV@@CyxY4N*(e&*Zv1XD?LXlq})6Y!K_EkL#q&H$eEEa+NhH1)nP;}ZIE;s+jV(X)J zk63*LbZY=nRkKRIfKn3A35@M5NevgUznCiu zJH@%-Be<;Li+GXLvHXHlE7w`;E3Ri#OQ_Jy`OA1IiB*B=fk^Li)EW$|35+txdDmNM zx-Ee;GycRqsPGg}IwyPk?vwBi%Enhug-RzqRSI~EmrlFn_O_w@hFE4$GXZjp7h&%Zpe(zy1ltFa2pLflE&`{JkZ;K((dyPl1{9mbeb8# z_wa)xzAy05Kv*J4(C`-C7Pz~xFt=KsU!|BY7nUkB)nb`qaC9(5V?p6%>xVBI^)lHh zDOAT1M|LZL5p?)G5tk`>H)Sb&%p4!Qf8U|0hY9yE*Do0D_`x%i9xNB}Rk7C_EjPup zWpJ#?ireu_Id7@A)tJIGW@bhuBcK%>M|yeN@O?>^zbEj-K%E-om|nJ@hj^Thhxyn9 z5*SjiJdTqbW!Vb0`yTxeso%3Rgi(IgZ{R8H=U0mi*xtzzX^gx0Rg2%J^$^<^|Aeti zA7cCl?%u-0_yb#bX#8RIndIjNj&EUlJgde}gyScb(NkeJwEtY#J*8%!*`9rt-7U=g zj{8S39cEO(DU2h>$JuFC$upS68N9$b73ZNSmN-sEg#zXoslYj$k0KVY5rloT{digh zP`rj$KSFs67q@Wf8j{1;kw~05v4t<4N=zjF3iBGKClY^w*~?F=Ae)SgIbIpdY@x*v zKSKLD(i4fjt^Rw@P;by+{M&t2 zH}G8r)o^%x^EkkM9wV5emKJc7Kui&avjn2Vwu~Z{cqw-|dYw1$TUfvcoc%2?x4+?e z{DbX3Q4L`|83ERV_2U>;f{1tULxO$;b^HiFrthP82|vM4$+4f&|2UEpXT`tyI7*^B t`7dZw508;)_<2m9V{8?D6!(6yJNMM@A^bA@Uc;~0stOW#7r(~g{{n~Lyc_@k literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/EOTWCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/EOTWCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ac42e90ea9f1f3274d4cdf85826eb9c05209ab53 GIT binary patch literal 3049 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 BTH*iz literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/EconomyCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/EconomyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4a6af719236b94ffcb443fa1c368606ea05c730d GIT binary patch literal 7358 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 T4wV4B33UmCSVWyXV)4HKfl~SR literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand$1.class b/bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..19ad246b8d16127f3385fb7d6d04c36a18d0075e GIT binary patch literal 1157 zcmbVLU2hUW6g>kJgl+-RYQ?J6qVmypX=03u@j-%-1WjWN@5Al@E6Yr?J4=H9%EW5w zgFnC@WxNA4QeRBjWM}TZbLX6$GiQJO{_zvQ6Vy|PF+7t>d;RHWd&mRVQGw`lM|(|Qh)dD;%0p>QK#1orD$;X@=P@A-lu zsfS)zsuNjfHMR!B+JyTh!rJdFQHqI>+CK65lvs~uQ(I~g&=Fc@iS{L5deYOc7>4Cl z$uGrN=`tjm$`xraY*<)B(nL86DO|}Qj;j{ZC@{p!rZv~`q<9~Vdm{Ka7pu@w4)?n} z@JzlaCX9j%FIGH4>5!C&2a(L+7H+3dWT;(2Mhn}x!;l^bJr|i_yIi>-i`1T;F0P=l zj(fPD!VbgMGRtz0g$LLrfkL6%T8!KBEm@8HR9;5)q`5>DOl{M1thqC4RJsQJp@m0A z#9VaZaxL2DjSQJ%6$OrX;~C>^{%hNVPkh2@TT42=3OzY^C-hLcDbyIAuI5b(`#2z8 zCC{zLP`_}D|GLx|!D>q>f~L>IP=wea%f#s~jpg&kK|sD>{9`Kgrjeobb&8%-Zu)Z7 z+9|B+-YK%x@5q0dHD04JNsR!d(#xY1kjFhg zibbFMsf@zJ^P|y-hrPrb`h9OZ?CnNz%7fO_TW?1`SGZj+;{tLFr33zgdjSsz-m~t3 z@Kc7RzKoNUkPOv!6c4=a`0!As-cjr$hGHW8DC}vBl@4W6zsK;fy_hKCvmVP(rdtf6 zu_#HV(oAQw!;ou5Jy8V1ii0H-ZI~!IuyK~bY&1LSXU#z#mU>kk6ksu|wq+=ujz?V) z@AGaT7|Nx)8;aFcfhs;7KBq0_qG87Mnd$9j%pGNz|y_ChfTi zLv^2ChUz^~DycbvWbi<~7B? z!3y4D4ezi){+iBJ!6wd;MJzg}p1D2`yJ)4^e~{vE$w`-37sim zM#yjxm&l`pZV_4$TS{p8M4GL=A1Luh&9FX29ZRybB$fDbrjW{MA)hjZT*($P*Q2SB e&y?=Ve}t%xFp^iJG7MbBHM(u`FkHtC7=Hl^kqI^c literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..248b5d317caa1fadda7c260f9014e34732350bed GIT binary patch literal 8957 zcmb_h349dSdH;W-W2Duf0}vo=V8Ix4fR*1hRjeh9E&Cbq1f1% z868XnMnXe@_UK@DES@wYt9LP6y*^Mo0Qn9^;=~->-`;h!E!f-L*>Y%4OIN#KerJwa zZ!#W^4mS&m$0MoXa8$6db5=QaWd!TU2-a;c;o{2ih&f@!d#wmrS0W2493rV?I1=bG z#|c#08y=3D$yD4D40&g_yFL#b2(~rP&cmF#T-_N9nTmmKGaPTeS&6kh91SOL7Hp}V z9p@}^)%6JqTVsQk4+W?;P=!T;g4(*iQV5n9D1)J6sbKMRb?!)oBZF4lhZ}hY`BUsd#52#sTy3W9ATu+J2@o_6UC|FjMxpbK+s^0jGDjT_>lEJlY3MR;F*`cN(K-X`(I_ZM#vFLcSUYn` zvr^Xv1Euik*d(a3)nz-zE;BJg=kQ^pQj}n;fq5wR;XSxf#|?tOPw9#Vwn2H?u$An! z;wO~B5@qN%Z!@C3fFaBTu#IUJV3t@&+&&}>B57K7ktreZ&sI@0GHeki~n*$LB z+I$rekv=mXR^OSy!sJL;5t=rw)<`%sY7Op)#6qKj zrCy{1YBXTa*(i@1xE&@@a-oBAm3Kins@xzJp9rYw-lQ2C<-!mw9gO+qE{XF%8W_T` zpe%#D%Sw{en%M}9aoVP$;OMwvjOsY%Eju|P9%us*rI>OmrY)RMTHj-iSqeqeKujft za`NDs^5HlVIv7N*Qs-n114*Qq*R10yGeY}U=gVt{%Wx7CI!-b3x^&>NnSncSrz8D= zX!v-_3Q}Y9DSa;C*u`Z&i}nW%d5D zp}z0Ihjsj%U|x&3Lkf4}?);xM~i8hmhI~8Z@gO2-%Xx6Mc zr=*_Zs)FDF184COC#G6#=>#ji&gMj=69f(jtHDF~sE&sP%iM;v+ZH#VfuF}CbeGQd zj{QelJA(F|F$6HGE^aKXT@<2P&y$&PS5k>o4`&XeD# z7S#2X;0t8GHx&wznW0o9GC>iN{^W?|A5yFRkqp&FW%P>%ep6YrswcQ}m&c@v^m7I# zv&?2mm*7i+j_!zMCahU7`)da#{1Iy?=?|$i%wEI=!td(%9j~8cHD%!U@Kv@+gDmrAG(?-t zrqQu^{EY)`o>IR09RuIR-%&|a zYkw>rVdhr7q$}#|QO5Q^;GcB-BNM~)IRoFrKeII<23!0V=FDYeBj`cnN&|MHc*DTI z+BH6$XdfF-PNSBHM6Bw&L=?4E#6VWagj)Ihn(2$*DlE>r)Bxe+>LDe&G09 ztFn9~Vo|Wd+QW5yI{uFx*w2`WH~R1v{$K4#-WH6!JEhA`z_a&HY}*vk9~-zL?9}ym zD!SiHu;IDMlO3k@q;3NyLL=5-iXB{FhrOj$%bQDtJLl?F+qnn5-pv9jg@zOfcf!SS zYbdWCFh%FxMvKx;Ek)V5qyn z+|Eb0$fifNTNSkbjP1CmE>nsUJNGjAP_b^}*>psZQYW+7FolfQgXA?x$K)%MhI$-U z5Azf!)WaS$PjOJ#fXM`Z?_iAE;;?_QyHvI=ne9b!EZP>2QI}WU7$`8MFuT839wyhx z^}4LSYHROVXviAj<~G~)I<%+t;h9EJ5o<1!I%&|Q-rFCzAPiZjdUTcIr_8AqHPRc^ z8Nk*2%EKMiO@-`Bg_(}ld157xM=G$KGB$IcBU=P(U8!!aMXVTZgU(#C$sWvp4@4e3xd(PxLMU3W@k z7vq%&gpC;~8Y!Psp%s7cHDtGRGS;}`>bBxz;Y7mj<~*CFZ1;D#MD{RMs_tPh=2zW= zUE)pEr}>jH*7|V5pCwZ!-8iSqK4vr*=hIZ_D4VrWdJWmHYNK!G-p;n8z5RQ8+PFQH zK2?m~*Ayw7PbRbV;$)3qKe=Tzp|a5mFSRPj+mZWo58 zZVnDA3_NwMJ>qtO-14c&%^r%mPn_sz!mZ{i_tLx~D?ldFYv%wYNRb%{o5WXW#)tV> zkjKp^wPQ{D;Eh>2Jf#38@Z33XP5`g`ToEzH1_sU58|>YxYl&wQoN;HY{ z+DzuQ+O~4&$Gx#sJY;o*)oEFE`?SOPMg`AxJ7Te9A{jTw>9QlS!Gurlln?6i0lH9* zC7LcaY6UuNGb!Iz7XUoTG2}zSqlPkN(9DqF>+VJ-v(iECoO31U6|vFOc%CHYlG(FR zb);_acRuNmoO`Xi%gSJGH6xK;`f+nbvD{H9#Xg99*pP^fRp`QljsA>`@3u2m%Dv3g z!6+{{S|es6VI_2VfSb4(rpTvIU3g@%d~Q&dY)AVflXXeeq+umn-vVeTg3jlBb*9bD znx?J->?cpJ2~lCcR}zN1T|zM0hxBbVG`Y4{L}Zi_9P#N zzp6dP$NTrF_icsiCoz!5h~RPUF6W)OnCt~6G5)v~;oBAhcBgTI!|R^M2Y@v0F5uqz z%(f!V+MKa9go@ys%BLDX!5c@s)-6 z+9yAqkH{amRz6!(Jc(Bn{41Zy2m43UVP93SuYL)C)>M*Psy<8A=eN}Cx74RkeP)4Q zZz^*GzusiHfnRT$S6$LnejeS`rA-y*aZ9zYsq#D;l}i7X*|NO4qPjATzc0kLs+y`a z{)O&(a`r(o&$IUj;$|R3Lm8H}G#gL$iU7ybenk2FuaNkpM4y zHZTA-a!bAeN3aPNHY1KLJYn35M|j)xB-dWXjre`uAH9ZVyov4jK5oX_xJBmSR;lK5 zDKCYtL949g-A+5&r4t>}%L^P6yW}neuvd@CdW&qxj53`+5oEalrg&4+%u zhHvFs6*Y1#-zu~v*ec8TR!Qj=%5rj0B`av1D9W!;;l)ghI`-)}sUxK0QJv>%Shsb} zk1(j?CH`-?!dsGxnNZHGI6t6yibegd)qaRl{=dQ;S1`4T^hEr!a%PglM>$r&`OOWJ zvMMdLg06K_2@NZpcUMA#;Q+1|JM%gYw}`F=UTgU1N{f&{9q%zV;e>4@zk@z&By6UU z0yL5jb+&0VTOBmp+t@@MkkJjYF%P4i98>vwp_5Q$(=^xDY}Z#t2QNPs;7(W0UpPg5 zA*pXAb&)1{&pV)U!yHuZB9*&mrP6Fu*)BKn$!a1uQ%5D_?QFwWaPkQh6<%m~5hu45 z)fA?A9P`!gg8zf9Dh>MJ$XOgXw_@=`qqu*~)a z+eDXf=1{%JC5fixxLsVoKmf-nR8a?WUakpPHpS{PNy!Pq705{i&qJLFKG_y9ixtQ{ ea$3&FeH>ZJulwb!JjmPrxA?7o&JgM$Xg>jIr2UKl literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/FFACommand.class b/bin/notifyz/hardcorefactions/commands/hcf/FFACommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ec82efbdedd8df2f5ebc14fb1c503acdab091a20 GIT binary patch literal 2625 zcmb7GTUQ%Z6#fn*oDilWfnKP!P0>lAI({CNptzf`xj& zt>v>%b@`+ZzW8DvDCk;U`sxqx=UDfd8A?hEwhuWo*=L`9zWwdn{Qd9m_W+#1w;W9j zCmdH<#pM;VEWASA^<+`xmE}4$Gw)U^!YS0ua=vJej}K>p{~Qs9XK#olVcNnenU``m zWL|N!F!Z=y$;{Ok7cI4M+6+&P-IV#day^EYbCzSNA%^C@)Eq-3;}&Eb&1f^g5o2i2 zT8^BmS8~#u6**fnB(iQ^*mJ_O^#4#8QDv*fa4P$>_|punt`ovyDE4KyM?E8*g7nfm zXr!~7Ow1_Ha!ToIkBU+Y9Gwh%x9X16Et@WgBZ0P7?7=>cy$oFqfHGyFGOq1<2D-7I zNShuTW!Te*=z&UF+c{w1c^o8~MYT%k8IJcg;0c12PBn-E)FF~|3`vI0D>YG)gGsYk z6v=ZnB|J5xZTD!~FKjUxdcD0#ee#HbUL0kJDL2q3FZ&)nl5Rr^{T#;_k_{w;nYfWl zK~xO9gyRftHS%&&)-+;<-Hpy}Ae+hYayDk&=FEG?lrh3*30;+SAaZ3|@UAp;kYr5J8rP9@z>*HXmIlIxai={FMB zp@(f#pD`yYmAcY>AZyhWxiE#x9G4i5KH(7qZ)2L$z*5o^enZ-`k%)C=+2%wjCx2!! z$8m-Fk6*SA?HZWJJCrw$ys5UPa#&*=3q;}0RA`%)vSiJi&{T4~`@cuja#fm_ZLv)4 zk&bBA-#2g_A296lWW`;QVHg=^`?gOBKN4H6->J`qoiMeaX~`MLgIWux`k3+=pkBV9 zYolnOgfbNYMKnW0#IV}o|G$6*tWK88>qmc@ldd8 zRiX0b@C3uzC+Xl@J8wF*pc_Edz=yg4M9)u;jZMWs>DN1K+sUd=aB^c7QX^QBK_>_} zE(}nI)tyJzNl#-p-t^0#o}oj;Rk*=$Uv_3p^M+vuP*@-yQ4@e`8$e;{%7F1qeu_bQ%C99qTURlK;4z9vL|eXut`dv|bh z6=!Ha@p7QFhO_f)czqR_b)08d#pGbiFX-)VS;q{+pSU_0?T-G1YqyaI)Vibn>v*pj z^IAnP{BZxDHOPduhQ;|!9InRUJ%oe6H`oF i5a~K_pFRsY2jfU_e8%ww$5%w`EYL&dz9zLMeDfciKI!QI literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$1.class b/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..ebebd6d564df6a2b6637dd2815b6e606d405a2b8 GIT binary patch literal 1224 zcmd5*+lmuG5IwyUbD168Bxb!|RyS%kUfNw2Um`0Q3s=De_ch#vMKfiqku#ZXxYYh8JM_zyYfe%H{b9Es5 z!i_wwLhkC(NT^=Ohi;!Yv>S)@nWem&L5g8p2Ls-XkB+>Ehwf1JVqXUQX<~RCD}Gomd^uJm#fV4aW6577L2c3rX5GNFb@B|l z)MHP1(E-E9%5tQo@2@S7`D^wS-FFTdQgz*vIWU}Ya0+Q7@HB!+*4p|!(N)Bvn zGFTN8w9)jGd>N0rGHB0=Uu%mzQ^`lvWTc8&_~GgR2aC zt9RAGb!;(Yh3m>N;l`)`uniqkQoE(&z?BWpP`R);1P|Ve6G1h9rd(f#o*KN6(NOms z+`?^!oL2K;Vdz(y3zIUhEuSB^r0U6__79I*(`4elPy^nI0?Jf-^QUR2!{9tuN(Oab zgrN+vMNF}1(5-ylPzcBu4S|xK=tC!K^xIe`KZm3P(o?jTs&}V2UA;HOM)m#_h3Xfa z{hWB8qcu(5KnLe(brQLR3%E!c!zFCav7Qi;@hem(1T`U~2@2L%T>cGYC+XiJk9P}T cg*ljo8x+2Vo7kp3MQkhM4oNn_8esZ<0gw+}&;S4c literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$2$1.class b/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$2$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4252b675028e07557c644c3fe2786694b92a9ebb GIT binary patch literal 1217 zcmbVL+iDX*82%<%lV)9;gU5Po?W$=M*OVekM8RM{NJVVvg?E$LNp|gKw(RT{;)D1e zg2m#658y+I|7-&GqA4^3JO5$+`ToOx^XKoc-vGAIETh2iT*YZPoP6~Hp7W4gX46m3-`_lLP5}%;Tp$gO23_)}L z-7}i*%)fPN#*IA&s~h{W0)|TtE}&$zs)I6?Y!p#kwrLK0(hhd2eA+>g&F+>Z_ zbYp=&IyUZMt&CNM>1pYQN9$ZIOb{OM&^#oywTch6naeoFzi`Li2X&C*R%EFZ_@b zQQj#L#X3}@ZJ7qK@8G&&k@H?DnRFwrwbWQ8rWNU#7iu*_JfPMvv@;(1DzNGNB55zl zHgVO~<0Ck&Cr4Or{Y3419(bAd5(NT2uF&q}dKFi3jVxyJ&S2ia%FpVpA8?LwgTykk sj&b)tkez29p@!fDSbYXo#5zG1;Nk&Ei|F|fk4S5fZ-t~;rVv{H04pn7F#rGn literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$2.class b/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand$2.class new file mode 100644 index 0000000000000000000000000000000000000000..da1471670aa79917b323a4b1d0d764d639c7d8c1 GIT binary patch literal 1665 zcmbVN>rN9v6#j;mme$plB8q~FQnW3Xg@UMAHPI@Oq#DA_sK1uoX}fegOZGxipGp$} zqlpjTLmAKPHn9QL1o~s=%$ak(^Ub+TfB*UM3&1iSr!l~=EF9lzbU&*t-8BuzFg>+pG}Kkc2)tUPDOS@+GE6ycQ{4^PZOd0Zqs7g@=C1lORBQx7=({#& zNckUa0Kx*qy$(VkFJPc32j&lwt} zc;DCyYws^ zPt_Kr8X zFuAMs7w3e97G=`bMN{4MU1F$xI;|>yWKh0;n`B}fUE3{D@u|<#+9}EVBC}K(<>eFO*lC0g#l-b=t{2~4i zp+)h*AK;G??`#$f*nQ}W3%lHV=gv8I&Yb=A`^QfJyLebZfnitaI2bQJ^Qkbtr;Qv7 zFAlVdxTj|`q5OzXy)o}=FNu1~in~)miD6Tl2_Gd#M?uUZZz}yHl!m`b3m+1t#3+;u z<#-xI?o%QfoS&)7(3*?TJr2b}n*MS!2A&TUOEKf|;#l(c>7ISc38lOjs33mHFy6}F zn|t7H{+=`WwhtIeJ?+aX7}gzJK-oqO2NkTWy%mThee0wv!ivyn9WOVQc` z?TPR}n84;)v1FBGc%DB@?g88#(x7M(Rl^2uR&ayi+4*n7!7bcoSQDNnqx4R{{0}wr z&wHl$hgQL^f?w=$k;-@yZHGE}w7OrBb0#o?K@ zJX;=0zJ<~)ib0b?hsx9cWG=8(gyCsrN|Cx+3EQMbd5wn literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/FocusCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f832556598562dc9cca627ed244fedeeaee60a7e GIT binary patch literal 8557 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand$KitMapTask.class b/bin/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand$KitMapTask.class new file mode 100644 index 0000000000000000000000000000000000000000..24006eacb06b5632b737be4fdefd7ea14112d55e GIT binary patch literal 2859 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/LFFCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/LFFCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..60236339a37573dffb90420da98a4f47c3eaea7e GIT binary patch literal 4522 zcmb7H`+F2;6@I_4$!s=5fB>PPUFeukYq^UOquUc{+p+z-1m@M%9~6kRx=E`X zi?CQjmB7lWJqg!IvvHG}6#}X_RDBaW3x4&1Qwm`!St6O3eyG+MTsG(xt z-D{`Qc9tsZy6U^iA#k$}4N(m%1@3rB=M2j1V4;Wh@S9$WVFhY+7^oB|+a4TEiC(Rv z95I0faXP#^m+7~>1F}C&KUT%vgiIflo~^!v!5HSDmUj7r%Dm0-8-Z%N#3O@?H(V*z0??lWMv5`l0$G8X5&|D$vA8+5WJ(FD-{HFNzHUv2NFB zCHCF4RRI&5G;9Hp9Uao-%Ey&8eBXqn1J2`Hh$jNlJGvzS9 zTV-}O^NvK(N(eCDo5F)OQGNv)(5|CHNt#bo?X$d$oz1dFXxJmLY^oIGmF~*fX@)F@ z-KZ_c-Po%k&NCF8w{=kZt!~=&babPKr`X@#CQw}%<7-Qp6ua?C9s9uqDw9J)bh5yP zLht6QK+E+$3N2}gqEBGmVK-+aU4vjX2IWc1kcotqHGJ1lFg7L+tkfM+>h77QC4|=O zTGY-XI__1mWA^6P$8aBxYIwDPIct{e2`g_$Sb6uQb1B==@ft`b3Q>?B5V(yvxIrm& z-+f5vNPWgsnUKt_iHmzhXaEWammRwuDiHJLqAmAwKdkk!EB zn=e^Mi%CX@j~o$84byUb5`|qc+>c=mr;77&IO|)q?=;RZ4k1q{nwTu|WS1^w*6Vb< zUaeU`4c%_L<9ovgWjbe-UJd`Ec#}Y#0&_w-^pTOvT15~x23*gOoEfw{LnYu_bi7ri zS!5SUH-@+4of_Uj=2sahhh$>V3fNk4eo#bxnq{`-JgNGC4%f>_zmMdb)$uO8TVOHe zb7*qGA=gWi1(wxy9XWD+axnMaOL}io;n}3H_yHXs#E0^@W~m*pQ+Zq$lm}8HheQ45 zfStC?4*ujzQSK8lZP_!t9xgMxKDh!GY#x<8-6aXZUU z-%?m`ic3KNE47Lk`~)7>@JWHnskT7P==c;q&8lGg7QL#vpz0z}c824W@CZJq;j={T zl!VDy9iPV+7)HlBMT?3_Aw*w{;r^nIFX77qD|}Bn*|hYnooUKvUqlzO=&A;W0lT%X z^?Fj7F@TTJ^0h+&ORiOM+@=`kYdXG;$H`Kj#i<0VOIx9fSiikq(vIaMtU`h=8lO?y zc_J*-mb9}#0RL4bpi<#K(xiXoM zS$}SV?ogx&P|U^W7nY`Fzm--k>GYn1 zlM(5q2KeeY3ci;>=X@0NQOS`79J!O<>Tl^N z7RJUpaBEHE(uk-Y$E(KBUsF1Pff6*A z)s#Jr7t|La*Q||VRgE@*p%QG1j^pIESap;`6L_t_*%6d4!2{gl*d%Ir!CJ%1lZh>&16xHWuSOP{0|=ZZ z{21mC0_yGO_=SQ6-+qZ-DU9*$8T?v-l5fxAIYh8b?89&HTY_4O2!4m(6D}@C{(wKy z@-wV(e#QdKAy|O{Ya`&_a2Y_zO>Z66K3tWZ=ks)lEgk(e_+dzV5M)z3lg^}J(j9wxkl>0t z?uw|OBDmp$RVt+cw2IOfALL*7 z#+M2L0(YC1WAqQ7j1OpbU)r+uel6`7mYIvEt-(Rf?90Um(*5zImDc2Po42SSC@|}& zc3g{RH8T_M?meof9R(EvwU(WU_vVisGn|5nxUbc5LQm%%%T^E)STcp&Uagm+Ls{L? zZGnoRY(8U{0&9{bLGJKTclxMzyDAAPZ#GQBX%T3y`_J039)Vz+)u)G1hH4d6m?cnF z7wf5nK#ht@gaxXThN*Yu2YYp!u(LXMBuUvG%{JuRUko|}MowUTX%N%#%s?tfNf+p^ zOHRR>&u&UL`*b@ojYJ|jma&v$8)hbPX!26*pn?Sgw@;L9%^O)d2xAfMP_S5FL1`>1 zmLMuHBcnUJb$igrlk2=;9LIdqKStoQf@A z)mKX9v)ZscM@>^kQlzPyj^PZ)J^6%!dj#f}+LnPXKP4P#r>&9Pi6%8GTbU9zqvsiyj(sgYD7=^&^t@ z-74;v*{{kmnY;9yl&->7q*Uz1KBhUXnJJxzcJa6)HJ*vsK^f?N6%WX8g4?^3?I9eb zbC0R$D!F}F#Syt(zJJHgy&WMuB%rQ}vSCI0t-RUS6o!Vhf?k36f9zr^`ap!UnM%LC z?b1xf!IU=gAeFS{=-Oa>FF(F`LI$2uF#v;v&|0CH^N`a{Q3eYe)HsGg1zCaEExS=+ z!ea1aaJM-Eo#Xf&b?|TS^Nx`<97E5=cgjc-lIcfO*plgr10Bg^_kJ0bqarVloIPIyNbv0guqNXX*Y7R(xfke zb>m|5`*`89^V@NW?(~!_{ig*M)wNBQC{(({`;3Zb@ti=|$fdM?{iJ2mG4CR`G+$8h zqFa00_jGi0g>ahmcUfj*yRJC{y_y-qE3DSSjLgZ?AnT{LIO|gbC#n7hQBEVyE>xb? zdUe)H&7}6o&7fvycmd9t;-(=Whr2q7 zZOFZm6`bLcWfna(1oF3#$YOvK7`w%L)ni8jj3l}%C_OThw10Oe3Ps*$fPzE{gQu7b+%49+^aAK>3`{Z-7YZ}=Xw zzvV1|IsDF~EU*AUETrxt%;jvJCym=Ul0RYBs-U&oG2gQp=%a=Lh@Fw(jSFaM_z{r< zt4FZ#8kSzgs+#%{aCYZ)tPS8Csw2U&yRKp5rt-_!*zhy9o`c%(6Sm5E%vHULZCB7b zf*m#YQL~Z1HMo^*~riw93LsFf4Jc?ASInGa{qG1FlTzhhNR^14mj8u%^)Hy7a z!MhPWFA==tdAf}Gqw8*DFMI1_CSo+WrRw;T=<3>9=%@0Zy}j2Xyp4(($nl&EYQQieR??Z>EXzyha-<388-hd QtZ!BD8KHi`X#ki10rooVRR910 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/LogoutCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/LogoutCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2da4221df51c027977fbbe63256a0d0f91e91687 GIT binary patch literal 3228 zcmc&$OLx;o6#mAstvtjlK)?iwdD}@76$sGADHI%1k~%>1Fa`P=+Y?7bmW(6=rtjCH zJy~|uMYr9sXnR@%?KwT|w!fsmg3~*a9F)Z7kZ$UQEX~||=ew`(&fiad`vbrTzETij zIB8n0zEHofEpoe5v~01!i>_{&j#jiP6>gRsZLzqZ<*c$*bF==Ef+)k*Tl@~!3~rXS zD}`I4=qiXa9JK7RR;Vp4>2A}27HD0(CyF)KvK4eP>~A4A#|tD{HH0f{hIrMem35Qh zc&;tPO9AGI0P|H(B}2+%x~aQo8AehY)=uXcqFJjXy3v6xDtfS$p(B;fcY&c-MHjjm zw&ZkET&`6L!Y0^;pq-pmaFq~=+qJ5OfjV{X!g2%9s%C(4Dustix zlCU$+kjUho=4;lqb+eqgxqc~qL%|+~-Jz3&>FRD>yK3;dpxo_c*tOQug_>^A@!jah zmM-ka0R>5h9U&vxMNY+IShk9TI7H!`xj4?y7sk6Hl96_fs5pvalt^B!l5Y${sSsMf z;44=Ig%y{7WJOyN-Zs{OW8Y% z*A$#%IQ`!&s5p-c44Vm*&pMuYhD#g5RC9GhcXi=tZoMi3{_-pl!f{L}xX3X6{0Q6I zQ}H@3QNjuDjHqxT963;n7Ly67l zjw^A_>SZd&noZsO_5XokY<*tOQrUitPZfMZQ^m`=SBlgz23_Uk{ZGYb_?*CtO4Y4P zPu3QH;9d8uRkMpi5{GvQ3f&WjrC}VPYf}dzh(VDTD0zR9lt=G9Q0cjez9witLjT(NJeqk${EvklBY!p+BcFM=PCmePsXW4zDMKBedCM+*%%c$Zu#bJQB%qBZAvY&^G8sc=yB<|oYA-G4{6y?KDa85x&!Fcot zS*+teS^I$YBKXkDQl3`j#EL$`M?ZS&GCy(e^eGSBh`+yrF1ms)x`Hmcf-V}MWB9_e G_T|5@6RbM` literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/MapKitCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/MapKitCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a64b455c1d9667401afd66760a4081c04d9226fe GIT binary patch literal 2761 zcmbVOTXWM^5dKc$M2@3yF_&PVAVNtU5+YhIZDUI7I8HD)wy{lUply0=E4GL%1xXHs zUg-UPe=9Tn2fUOA1Es^1_N_mqPo3!_olaMlLL7oKv=5e#R(p2$?Dy^N`Td`t?gBWB z?*z0l9MTP2on5>lSGZX!8m2PKi?(X$mRvNdRj!vTxl){!C;9v-)sDF$0X~Ke7x)5~ zHLjQCbm4+hv;}lB^ciMZF4X4cRC~#Q?CpwQR*E&-Fc~_Jsk&+(XJ`)(OfmRkMo9^v z9o-@X_!-tGRb5Hdss+W&^Ma-@1d~RQYg61*op(>@vn#5_a3uLZju2t!GITF8hS_kk zb>KNgFDYhZ4UI^0IT<QaN{nJKGDj5>7R;us?MdHPxVoA0kIeeCu&g{5*(Q)_ELtZ?Bwf5rd92F6B5cJ!I ztM4QrE@Ip{rf(t}o$kU3oD`5)s|D0-Ra0$Mp=Lmtl1CeLeTIaVh*L-s#d7&lCQ!THErX@$I1Sr8;P>cTus0T&teHr1%2lUv=cQmeG&`0|Sg3pRDrOg5d5$MT7EY9^kV zN@UZi$#^OsC35a-uH#l_8n`WpxP;3Ln+Sm>7fH3Ml8f+);n331K*A}!D^AJ2!LT!& zXkDRxyhSZ+NXpUBo!6;fyNACj;vMHqfwAahbRs?zO(y+#kJ3COWsFOT>1ur-;zLJE zjApaxvoo$PwIrwaD>PmEnvea+X+aH4@IFwWYp9cAhsFyELG9yanTGAAN6aM8$ zG*X(4tr%`(swZdj;v6y0o8N()Q8SCmxZ0TTBwxN^3_I-udq6FjejRjQX`_F-9MH3i z-emfxMuLw0Hxc-;@mZv2XG6FSJ+u~G1+2q*dZRkWMtag__A`8>2^Ji@hu}5z3Z9=xEJbppfg4~H!!iJG}#8SmAZ|_!qK{gOdV5ooV$gYn7pn<;l& z={C}fz1T*{58)(TIFi_jEZrsy?80U2#t(F9_=7+@bu0&k<8G!s6e#ET2p>Dh z(CQO>O0YVs&&XDLWA!<{Aar_hA7A1t0{&~VA)8iC!?*te4+IGp literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c12b1b8f149d3141fa3787ebce69936bf80f613d GIT binary patch literal 3455 zcmbVO`FGS*6#m{YZQ5z5tc7CL0kO0c8f6i6DhOq|=yb7Di{OIkOgatCBsIxY>x%on z;=XTnOwScx7tJ^fhC~uzf9OdcI*Bu7Wy&EwSw=f)+W=K4=swzT*ni6-`ec zw~V5|Ww{_q#WyW2Z}=I3`n*}Pb-&^o0v*-6UAdTdhBp0KZP?Oh4L7r&mUUeP%d|~@ zzrc#N_A!BEw^KAySdFy`)(BilKw8OhN|q61@7P={iKj~ni&%t>HP&MD~DnC_bLJrdS-1;|oZfff~;&`5Ot zr0EIl%l)qw$x1nPR9bupR6cLmMb_vN8ksQ5pxJrfHSJR7t_wx&#}sT4*m$un zDA>xvoTp9b=}^VA7(Ruo(Nd3XXjjlCurB7Lds6qi9m{c5Y)1#XH{QVSO`ukvo@Qs9Q-4Wy>;g!)W;ky0^WnFid1E(L6AI#!ou+o*M(^A{%SKEjXm$puoziQ>LODEO1@Hv3=dNNx~}o#rhqS_B|?krE;xn zl${x#rheR};8p?cqO|RcMomvNYKE;!$+T7EFhJZT!|%5}U$+ayy_?1OkA6siehjG? z#_c=;^w#az6J{y&RaHDGuDH4!ciM!>L*K(ks2z#PguK8Ng>rFcIV`2uS$4*Yaun_~ z>|jQva0iYk;5gC#qjwc|;%JC*vH7jb^(jW(sC6kGle<*hje7)Id{?(UOZSa~mT$Nm zjm&{(Mb0*MZd+UTh4vSck__97F4@rgROqsyEA(Qq4h1U@1nvZ?l>#gm$x2|? zzm*`YRljeP7YmWXqj+4wV;qHXFc-#IVyfaKo)A#v*{3@;Z`pL@9*O!Co>A~LFMxQA zFkz{o;#oW=phnJuPLrF}9!*<nglv*#0z*y!HcAP%=0puDqhAbA>7f~X^yE4 z)y@Za26?+%{1A8zZzy=3WQ}=T+*a`>P7&zH(CBD(@OV!yoA2YOjrVa;HSqMdig%AI?z9~E9N#_va;1_EGDy4N;iAG8;qhuRb`BTnf z)lX>pk$)4|$Y*V^(S+te0>1HsDl*czO0$~nKjZSHChGzdHB`VAxRQ!Iz)17Sh+-X* zbPk;C_ye0iK)T~sTz&LsTyqAk^VqTG+Ij4n$KD0pm_YJ$$M4vDQ_UGPHP zs21RA3boJSYQ!uaqCe^XVeT#U{~cu#VUErpS-_J5^LTz>#~HjjhgL3c&EYC8@6KT( zmk;K!n#;#?NOAe>YitN%eHk^Ut|K{*uOzy#vQ5ks*iCeMSk1l6=6c+Q8v~^2Fzz{| gIU@a*I9K8TzQZZvk~OMFA}G;oYq|A31quA{54&NrT>t<8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/PanicCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/PanicCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5fe29062fe07535f0249fcd4923e946bd0ede848 GIT binary patch literal 2587 zcmb7GTYD2#6kVsc3F!bOP@qT^kU~qLqg+H9L?D1vL#YO-6ctY=C&{#vnJ_cK7B8S8 zUjG380bh9WrL_8eemwi+FA~>WY7?6B$wOw&?6c24d#|-G`RkwG{{(OpKWk_cIPAEA zRhqwTRHRolT~C#y8Cb648>U;WN~h=>6|-baNXIgBu|z|MK+lZ4B@J6TW#jVnj4}fa zT>^VtuWU@$XJ@To`Mi;wIzOk(df<8jT_-Ka3Qh^M4-Q=w=*YQ6l}0+e#plcTH(um7W!TC&G@PV)+6`^UohaR$!g$B#sG`2J>tCT~JO@dD&-Z zWb-Rn6avq3%Gv9yMMF~>HVbTTxJfyI70eqGwwza98ok)2VXMH729<<_We|02N1uRJ zR>8Qe5}7T7L#wY!;RS)tT1Z(M{dh^ki%o>ZPU_f&-IS}Fb!q!!WryVFq)(&0gR5;0 zO{MU%z$PZcNaEB;bVD}=uwTPIfn96+9fPQ2FuZYnMfwxUt6IL#L`&lU4r&;t?S}Jb zqa4z42qScn;pUig~EL45_LNGoABp-#gq0^6SE=xp7xNo)#-iD$`E>bBaI zhJmAD79Lvzgsa`iU|Xp6x{ebVWircJjTs_vs1<0da7=E^h9*wxcq3#p6}T}YArx=w zIE^zbf}-WuWMEd3SOkv$pDcYk%Iwfo8abTTa8AHjvr;Z5#eX3w{t3HYwj3Q7@RmR~ z;U9DSKsqLq;|P&|PCJY?hcO**;~f@WOlHX{$F`bSbSSQSGHgIb$+DGkfe%u@BF?68 zi6vrIi-)Sp_hni6aUL#zrg0hXYM5ZS&uLo6dnhnH>0r!9-tq&1y=xO&4=mdVwX)rK zACnr`&Nf68{I{dy16(7=R-hPH*#5RImu#dnmdI)0IzH0yA-mm*h2>oxAL9mFrK9HP zQFGD9?UxuIfYdP!Gsd`}yjzOb^)^>ZET*|(|%Rrs6>9E5^v>mo?_Tc@4xmB5-ZP}P+3B^DyYIp--=U^@MgNf#% z#xnF2x56Yl*N8ct@e1rxiuu>rYn$XPZ)5m9VZ(|V)kvJR-3V|?L%q4*#IWf26mx`c z+H+;mlp*{38$C(7dy81dLi%p&_za&j4mP;)h$&9EDfS3InjsvIt$S89XOm{dsmR3L!uXC0rUBCr+6T%rJC@-@q6C0U!7PGv@M~-IXQzl7TPa8Eenk z^WNX*eb2jp{O6sw0Sw?b3IYNTTDD_mN>9ZW^?W*I=Z%b>a!lJQ#8P%Hr(5YlY%!II zP3xs`Z?7OIu=9d`Nsnc9Yauq3ykMjp1q}inc77q2EG{jXPMJIAb4@&Hq>7H6R}d1o ze+#-ZdXl8eS;H~%0u9UA;(}=jJe1hhz7xK|lfJ>zF3T{PM@-9fMg<0<|222loIr5g zP8(s=p+!X#b_&!*yXG1p(59jhVS$!}X&I-AxulV&*;#`p2|J}{=k&ZO_x{VEvuG9s z4sLJ6HX)`Djke`SP9PIaY!NX3c*d~OMt=A%6vK&1vSysTX)O$&-~6g;Uco+ry&GxA zie{Dy!ib=y5%0qN3f?WSyUL*PMco;4{?k_f%W7PBJXzyhp_WJit8Z z%geN0pf6fwkB6t>uBum_)xIUeA#@6aW()d)F{H($z%D7UdxIR`)w{{*rJ35ua#k-H z`BQq%7}ZAfoL#h>Q7N@wMGOy8m1BFd=yr6oxZx%o#DIc_1+=QD_^B=9-%FE<_hC?= zsX(_+8U^Wsz@BRF%T~{YaTr4iju1cFRzT4)v!-Jjg_v9wVvn&XXXQ%8Fh;1y$(N?} ze8GrYjzH&Dda9yKB4dG23W22~Izu=raBrt(7Bm{5>DnbdYo;~Jg?)b*V>qT@T%fgr z7+->l2~09>rsd4(*&(0w47}jCC#+7WxGH}E*aXzqHZ~^ zPyGrWqXAVRHRMStHtpssj08?8I4Ka@Ha=T-2o+P9rrisMGm)|_J6AfXTg(L8PA~Jj ztu(_Uj`>W?dmN`#%-{?oO<}W^d9i53iRZR5Ok`SOv$OGIB%Z_L3eE~d|5F7j&S734 zOwnUHTWyMg+~w!6B3K6YL-a-lmc?zPHOJPL^^ztb{9#!b9}#Gej&BBTrJi&myH`sV z9j!zuwv{bui#n4bMWmz%`qUnc-%UhDmJ$<50eLN{TT7arO36|pQWkMRfk_*yayjPS z5-OIE6S!x6%rXb=|I8AX8N1p;F5x3Ee31Us`wb5WUr?AWxLy%`YJ1HAWIN9cuK|7_&D#7 zMZMrMrN@j6uU)rD=4FTdq>4|;J{mkel{gl{r&&p!bgfe!e@4Y;<#GMl6Y(<>Av`Cb zcDf~+VZ76{dk&vh@dCa;?C9zAI(Bw%!cM#^E~&qy;>(h{rBF;ddETZzi`4d26sbouX|C&H)LN_=(g;dA$&_<2N6?{q4Y2$YhxgU@9;oI+C`Il7{V2LCNV05 z@gfDw@XOlksE*r~-ILd%;vW!?cOfTXeO6BzgjQQsgY$bU_3QZs;$znq*Py(W+$(^` zRjlRS$XI*!mh-)@+Kk$43p9JQ>lqMnig&2oU^}kitbrBHS3Rn-mgX5pPc5C)m;K42 z*|w_YC4u7qWJ2)b;kKTHS#ac(GGi`Sx>JARPkQUg7Anqe?J9cw- zk4KF?T*<$%E0s4i_TpYoX5CBVpr*jlNbv3YYv}5E3z2iTaNiBIub`vty(@_J@xQHy zKP%{4#X|uEuSbHxgST;Ls6JBv4th86JVH`QAlcqu%T~XFM_+-qf#G-!QP1xXzl?Ct zZxMfu9}Ghck%m7Y()}h{SMY&I!zw-~u!`9LUPD7`5QEAdB_ics!{`RN=P7sRffYO< z&pX;aTHfwaR*-BnYP3dzb@XUqDAW@Ptsr-KlaUu|$wRAP9~f$ka8VMtf=42a@8EF7 zf=@`5&yeW`p5;=?cQ@|)&(#VeXMNrEvWtzbi>^|qZe7eeIEV1Y7R1V59203DsS_7hm^m^A^e#m z>|byMf8+WeJcpm)r%*&l9LDST8NXN$iAG%KX(N6P(0jFS zjgZCIf##zM;%jK<@0eKQ)Vl`GtB1F*QN=e~u-8oWw9 z)Os5?B#9UM25C2=EUSOOBQ5)dma<=5`F?Tb`^A;#m$Z^!_f2C86C#)psr{{g13U0v AdH?_b literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..68e7d8f09b3321fa6d7ee62b258b87a962af20db GIT binary patch literal 3175 zcmc&%OII946#fbZ8ippsAu)lFIA9aQ4<;SDm>CVJ->A|rNAL{W<- z6$%;{TGECkrpl#d;mq)5Q!vERw$9Bt?ilhr6h^$F;WAuE|0^ew42`xG+QyJir1v&G zE3BMwl8@PuOmD-H^&G=0B(Lul^)5!yih~LcFr3}f>au5;hGz&0LXmsgu#e^}30)OW z;}F9UJD)cRA{iFp%o|>DikC#jnVn6IG7KcDTwG~-rt)-BK^w#23g3n08Qz*7bKx}L z2t(h3U5@MAirbdC7B9OZE|HHL`S=eATz5vk6D>jDlkf@d}k8nKqdaz^NjR zPKG9zz?~GX%L^3fgVl_mQ}FCg8+W+Sgf4We=)no1PLaDlEV*HkCqDZeTa-I`RrJXn z4ThVsBzlcFi2((t7{;C;6nxdtWMG201bLvPMkrN0Zh7v|bV`MW)06?z>7j+OYfJN~ znTe&Tp~2B5Lbhwz5WY4OY!E6w&S(C5fy_PEs`Hv7q2JhQU1v@kH0ESj2VWE;%)0d)$;sC|d?YYY5)r7P&-}0kz6DNNgJjs;FmF3K>IH`qR~HwnL`Ei; zt|AArM{xv^MACP(GOQ!i0<(gUvUE{d&3DMFsBQp}x1rnP4!Pbf!8cUgzzSVN0$G?D z4r~JNdlvSGC`zyuShQThP`Zv%!n7R~tGLO~;W^xLP40;y(-V$G6MtFuOmg@{Vq|xg zSFw_KDeJ7HSXX5)s9Kq+H7el(8St3xw6V_Q%fh54PX3cUt(A2sbd>H6&|zq=RJNmt zld9&d$Muy-z8d!TX4|3}b?8-7c!Xm4KWWhw86s1P>}t#!1;V{7yUE@E!-gxnLp(^C z`w>1-@G%v@?VKiRnDi8rFE|yS;xjT{lvcep>B-;o-}g?z7YzHh6$BfjS-b4$LKa+N z=VmHXB;=EDK<-8-sI}5x9la*yFFo97Y@{!Zei{AN_5FnC4>YNPN@Kk*jG>w4YOn$O z&_Z8SHSiRTbeLTvHT5LB*A{sc`4%m0k=ipGh+VFGfcF01aQHr&`(y17(NTlQcm2Pj z>vCON-9sE_xQ`w=OUPMA|BvX8{DRtrTB#trf#)`l?C;sYg>}3T8(POmEVY4G)-fdy zUSn9tTqLrA*VnNe%S%~N%9b}^hNsD}THl#7{@6xdx0CTl=uy`}v!j&!$8emm>7#KF z-I%3U$vk@THA$r76Lf-{3mum;2d)psJ$NV+R8n>er|BL!dmFbAp&M$khC76HA6CNI zJG9<}NbCMTP^X~lBq@0p?~#J{X`u!m_@S_9CIdt;K8kz;g*`z120r|rM1dbcPzHS4 m&IMbyY-`!Ft!2x$mMz;_LffPr^shwIu!7IYhA;iw@BRf8R*;tf literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2908a84fe88ff0a60bca759481bf76c07d7ac48c GIT binary patch literal 5146 zcmc&&`F|AU8UMb?CbJ2{(G{ZMs0*QxY)Gachp>Q}C6QxuNCGt2qO+UX&5+rhb#^uw zYY(e!)!NIWEmSJ4ZJ{k~6*WYysJ*PV${)~Q`eQ%+6MEV2JF}bJoCba=d_Ftx@jUNy zf1mfwd;fjy3V^M+s-Q|>Th?~X)Yt>suuMHc5S9o@^b zg1eKJnKj+L0@ckeM+E{gd&mgl23luirO+T&aMh)6>v1C*72G7Sae>OJScz2vRd!0C zx4A+CKOE7SD+~8S9R${>SOisIY23^jJ%voda2O$rehJ0xq;4J69aGMWi?zFprfzM% z=76;vtw%MQRD`iiivEO(I@C+g44Zj@9djQ@U(K1OGMaXlDJ3ZcQqA#MlCHSjZ)ArI zCpr&Br9X=?zPrN3#if?x3R(qjs*q%4UDF-Y`Ye6SVDh&K+&Dd3Itr#m@%7k*raF8Q zTNG>-SYB~RY*=?=wq-jiZoyXO)8Wp20u7b=PLf3BIonn2z^zO)J(r_x0&TOTNXrZZ zikd`&*d@?9K=+4>E)H{OXRWcY;nlH>d^j-{&Ut3#+ojCiQs$m%qDqdLQsEDJRC6YE=4Q zfyGJ7(0OAhDSgj;N?%vdz4R*yAYwg8yk~TLZw2vr_7BTQxj}r9rY47tP-*I12@m1-#Ku2$UUp*ef*AzU?VxKeeQbrwokDk(T<_1 zhUYx)Af6F`#Nh8r^!}c}>gL!?(WSn?l#+ldA#Pn|^O+Tb*?^Ve29KSGoP;%&o-mlD zp&5OGn*rTP^B!=+EDe_m`7KCbWu=6vRY7;f76>q$c{XgW+dSkA~ukeC` zUklu_fQm};N~CpoPmLq8xKzA|O9D$+N-_T#As;e)<228bHq+fu%=ofj>hUth6}-Ye z>a{3uhc__!XprZsxQqz`j*-c^W73mM-O`Pve2RkCs8RU@@lCn8fWMe$Q(15t+#QM_JMmo=F#z&=#IVK9c^4RpITD z@;#0&xbiWsv~o@UTNDa~mQSGJC9Hmt z(<*$NzqKR+yYkK63OEaULL_4sX(VfX@Pn+7kV{SvfsYzyriM|2!}Uqwe10vB7~ zLS$D>8LWaY}+HvH(nYWRjs>h^~^K%s{xO}OnjumzMtf$vT zPp{<_`hKoL-!FLjUMT9jLupX1N#}4Tvxmwlny_R(E zK;u~af8aJzh1AH(HZy<2N6^t6vPyqS1_pHXFg2;Ro>#J4=H^vl4_rXeE(#@2zurh)X=Z&i(Wk! zIIp4n1{Oo$9F{Z&E@AZqet90X6L{%`$$0psJ?QyhtItvL0UAm^;Hc;Wj*33u$oGM? zk~kCUQ1B{+^1b0#v53-D0d8KMnq_TMYUuTfd~6N9;nj4RUKU;GO_FSyOuNwA98Nvs zca>*MX7p^lf0)7h&fL83a_bVjV*YalRTi6cTD>C>ZE_KdR~<!+QV# literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/RebootCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/RebootCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..798fa159fb67a13d088eeb24b6c675fbd4a3bc9a GIT binary patch literal 2230 zcmbVNYf~Fl7=8}fuu0fJp%h91n^J8Pu&kxDRf2d)L5iWRTrFtzWOE2xmfg6!QQPT1 z@T*_ikABf%_@bk!mzn+mf0E;<@7XMnQnp$%vzv2yFVA~>_V>SjeF9({rivDZOSa>i z8~5((o7^oMjw?2};hT=_>4vkt&F!+MZyFo=f+#tTUuYbuP#BKg<)3ri;&w&9S-L9> zUqvg!kmFYLQf+I?^!E(tq1N=5!l?O<%g|c2Y8BIFxLAzzJ{!WB3E|udRPv-eY1*bg z#W0?IVeQ-sgHmwHB83>z8j@&dh-GstNl-unG2g(0)-@rszp=x)$?8PDgg|G@K|YG%?mx5bon zbY42j9%Alkmv9M&*`R~Zt%(~zf-v(KvJ+c1jPROke#DI;NJ_d2^#A`KTY#?af?S>Rrj)wL8R zF{R>7hOx-8s`;j6`lj%7x$^Wm8scTS((o4ECQw!GMtYcw{~i7kpbqF>bsf8sDc4*s z86zXhGMd5+W>vh$phto@dbTxO#~h7cMfgi($(`pmrI6@if(jF9%afc{a)>Q->EG3x zb*USRxS?X6;mZHBpy4KNF|-q?1_cJ@8D?Jy(?Qn#dsPvVX<&&EE?`N;BEz-+jxgGu zM#R2MB$u7bQJ1aKN{)~kV7 zHN0RLc#b#;#w}hFmSoVwv_qE)cPqr8$B!T@x|G#qVAK)mMV}j6^Sl}|Z)(x0xrUfA z18#om%QPz8;0&>OjGj0>U6R!4d)GqiBvSNlqumVcTj)PE{21Es$WQ3_K9K38cRT3< z9Z+zLG&;!w(9@8{adgv;^a85{4=3m@u*nukL#4Z&KIO?nr0A`DgUrZp=)L_IeLvt- z9ht6|>o`|O?iXBWfwJ4D#KyWV)p7YD*7vpI|E{Hs{fzw8cu%|=?|l6T>5;BNU@^8k z{3AN*n6Bgfo_HM}e2c-r$4cO%^We6Q4_9Nmgf>PI0#g((D3&xula=&{Q^ZUCC}040 zFo;ia8Ybn{CBD6nvv`1W_zLIoh@`(GX_=!bw9~!4B32f1+Rc1D$=OU7^z!Z2kkUV{@MX literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/ReclaimCommand$Rank.class b/bin/notifyz/hardcorefactions/commands/hcf/ReclaimCommand$Rank.class new file mode 100644 index 0000000000000000000000000000000000000000..ad054b7856ab634bc03b6fabe7b9b795b644f6b2 GIT binary patch literal 2535 zcmbVNU3U{z6x}yXnUGAOqy|*av^`Z0eA}%R1yVj2&W7`S?f7@Rxt7aFk$)?&9iwD71A6Z- z+cj4PEuZ0rUzxtNGyG*P*%z$X&EaI3TC=VClI7o#OHSBN&y-F@`nLLyjY$Q!Kygnk4@wV*yl0YUGcscflXCs#aV~DdV^sTxRY+BCF534cgh zY?HgYN*#{MH)*@e9+QfKQY<=&*u^7Kx5un=&%SaX&DEQ-5z9n|xT-57Vpl}(=yHk0 zKidU%EdOVA7L+K@;W*RZuhf_0UfK@eApN45ejK9phj2YGR2W-Fw(uN> z3*+lJR+w1FU|}%1j^n@3s|P3fKFS!t0;4Z7(p?PT9tLqAZ_-*|CX9l&n3;Np!mJYE zNadw+9a73pzf&CR%qFsAXc2fDr}0^W)h|W1HY@xq&O$>+~Ds;03;zr`N2&k1zjzfw|vNS;&6<9E+Skwt@Ru$ya;X z{jABq4Okmk*)Db{1oHtCl}v4k8YXcaRRmZL3(kclwYCawp$?ZNoW==wT$@0HMVvy< zOJbDNAT);1C;}LHNgYeX7H|o*FRtC-SK-pD^8A^DL*B%x mx7bH>iw{AFerE>9Ukx(9O9lzF!aN`2JATt)0Z;H0iT?n8{&pPz literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/ReclaimCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/ReclaimCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3a0dea1f7ddb31034e7d0ab41a41c99fb9c4f5d6 GIT binary patch literal 5473 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 XTx@{CCpw{ua-NgKH%NOgLdpLDds-y< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/ReclaimResetCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/ReclaimResetCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1eacbc24802a47acb20535a2ba28d1ffbe3c3931 GIT binary patch literal 3387 zcmc&$S#uOs6#i~9lTLZu1CMHa;Vnz#h^`17eCC_mcGzzS$p*N_HP_4y4 z@*{@JQ!PWFxzEY!*0AoH@;wyBym7NAkhw8}TZM{PnjAZffWTOLUk%5@&jW@%YPgx3 zXk_|kgFfK7rk%?iyIzz&s$i+W(z&|3N~XmF5?F$TO<0Z<3hoxTD*~uzTxX6g$5pWs z_b__>y}JdLL=nxXWTc&xihHq|@zx6kq8I3FkKhUFB9o4Y0@NXrOe59^G!7N@oY9@q zq``I4VA~u!p{qBulNOkt+E%diDZ@Re=Z)>s*m@Nk(8&`#Con;8+po8hnFkFU72Ge7 ziUcD}ZKZsJ?5Nm;%>wg^^!9*Jl*k2IqfS@A4kz#c9#Zh2z~YG2U4Cz_tw+ILsh!`|P5p+gTnUb99FZC(d3>sIZU^iu3mK zE#0incOx7Qm27^rGaqzYvCEZ{s51;yMV!DX6cwLK(bH*FW@BwFIG*D|#o$+GT% z!P;dKqNHCXuK_7RT7ON&>v%(8h3D#a(b7F*r^ShCbK!HloP``}ZS6ggYOJu<^&*nH zBs)n_tD{U(lO8$ll<)%q+(ey}cd=efnPBR3U+(tk431N=Tm z^_fMF(3=L#9Ftmd>E7A@1H-mROvA)&XY+rBZxnpZkk7Iz>(1g0QC==pe2ec0-pCic zDe1{vZVtUm3^*k>Yshvb*Vnj&c1iQRERb$dhd30j>g1^66}O&i-t+i7pKltUg3oxz zWi0rWi#jagZ-Xyv!D6nZDizR-7Cw1RKr4T_SzMsBk+SJz?Ak@7*Z+(Cuf#{WQS&c;Wp^po-KhK_0MDr0xD z;VK>%DC4jwV;~gD$25+V@$^qfbSp`v41N8gbyqM}#>r;8j6(BdGJX}O<;Lf);MEWZ zeK>))aF#Qn-uJm13+T&I`o0VuNb-8L65UvZ9Z2CQgLxclxT6gvv~yn?=cx4owJxF4 zk5hjTi!e@%3f`oijNLTe#ygCxT%EGgQ?UOZo~AIDihTQ6!3zpLrI>$GHX@Vu89wJhUvOI;zVtIZOlh3&u`9Uv ji!Yx|@FpMlmf-sg@YoFS*bMO44DeV8T;O}(+7JH%_wB^6 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/RegenCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/RegenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..29a468ea1eacb6c4f70db3ee9cbce3e9756a6eec GIT binary patch literal 5328 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 UL-Ai8FQIGlLACx)sxtiJe*`T8GXMYp literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/RestoreInventoryCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/RestoreInventoryCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1d1611387c721cbd87ba39c4e9a6a52043ffb5c8 GIT binary patch literal 2936 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/SaleCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/SaleCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3475c9b56bc680bd4154cb562fea81d969c38e60 GIT binary patch literal 3523 zcmc&%TT>KA6#jZI%(4t}5iyGxR=lu)G7+!YMG`>}5Y&J|1WhvR4$H_ev(C<<7<0cE z&DF%D%DlwN3rUp^CY7ujt9(i2C6B2*`vdX=@{qEUoSvP95m+mls>FxoO!w)pzjONQ z)5o9x{NWCO?f6uHhheL3Sn9;=S!q%>6LG^-CgixK8hToa8`IOWo=8iR@d;^2)|AfN zfB+vu`AK<3mNZ#UN{7ZzDsf9d5ktLUCZ+Mr)Rb!FmrKs7t}{wJV;QD^07Km}en;eS za!qN9rI-vwDJ_#!b>i1wkYJC)xZ7cT*j^H&#cistTI~$mBM-g0ahSo^X(W^&yeJb< zf^r6Lq;a?y43#2^5o9RqS9RrJW_nyPiMFQDOurGAwPD#*`L{FZvnJIv!?waC3gwuB zC^mE_bqo`c{$(=eOb;n~LNQ|x@QC#czet8C9bVf(W6k z7;8}{;Bkg37opBc+3GYj!xRz5I!f1I*FJ`7H=}u%7{^&JVgokPLCL8Uv1iy4aq-Cs zD%R*4%CUBs!~$qwXgHddlS(u!rAeCMwzMUi*15E0q}s!6)@({?506>uv~q&)*U0y4 zTC|OmiNf3Pm77IuK?_5`GIIVDd1UF5SP7m$tAMQxVOL_DHP_gWI@VGIg*hGFNUA&3~l5eAV+@v>=yGju-`qlK(k6g!--P0ZqG)6u%{W8X zBS+%~G8dHfDoC${72e^}?Uz5ibjlU9$iz`j~WHU*x#L8t#GEH)UGO#|PJ!Hx8sR23V zye_4N?s_vBGXKdVk&A!}O6phB7V$40Qj@xDWlZ9E;s4;!wlu5lF##`8PVIEtWcQk; zJj)peaSmkxyh^#{k}kpPcvHX|3@a9#xu1x)@HUAwUwO{IPgF?XArUzG3*sW) z6YwrMF96Z2s8Mso`zaCc;{(c;GM%z)A|!|WOX5yv5kGO01W~>;)%2vgy9}xfjutj7 z@?AD148b8IW5$(kmA5SAJbb5zXyKHxj#?ZqJn%!{%?|H%s8jTkT>_DQOX;hd<~{T` z*mMIcnwq~y#W(cj!AkmFLB2p0d{{+mtH}cW+TJu$O<%OmMkPgKH6F`hdXCWw0bt3H z@6Htj>DT`y!p*l4I(7qVzC~>o^_82lh-A@x3z7%EYvfaO6<>#Z-qy+;S?s#PnnONc zYvmqpV_(SUZ@r19cKNIQRp`3>`4Y7K_n|d?hl(tEvp7`k&*JDD?%H6ZHrOwZ3U-`> zy)cJMJfN$%xIh*$7ul5yyJr!f!?f!c~6nasQL28@Eun{xZgfrxE9*y{n zyuQF@d_|4Xk7&V9)cO2MEzMo}FU4=zf#0cT@nRRN#BNrHC~HBCMX5jO!5%h3ori)B zTNpjLBhL$iB{2=11VJ)@ffSbwS*KufQIVB~MKT$r9WunnPaN{rX^Np5!P44$81Vgp zihGFiKP_t_A;LR@S;9I?J|4ViOE^nb5q*y eAL1hl>k?t`yOtaIm_~SbbO#$~@DnmUxcoOy0NQ^5 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/SetCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/SetCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4a3591dce6c5c671f935417cc13fefe46497dee1 GIT binary patch literal 2956 zcmb7G-BS}+6#rdF*d#0#qoP676m3jEvMO!;2-SuV5DiEP;8$C^giTmjc5!#3U~Ow{ zYg_yI&`ziR1HSm8Gev1<9H0Brr#|)n=!>0B&)sY!k)U-ZxqI)~bARXDbAIRC{r%rx z9|Cw4-wUW?*smM5nqRsi&B*3-&M=j{oU>I!x1^jgKQHUkmNb*gOIgKEmDU1049&Ch zC0WvBy&#>QnpJYPfCh$k!z@Ts#ko1vF7KAyUFk(7SF{b2!J9LRy3N1_85(+2UA2!f z)JJ0z44#xRtpreyCJ}xF{9t%Vga98sGpeo(7w4xGb4;Gn6oz2N$jRD-Y^r?i3O)9W zYB3zlyy&SC41Pm*on^>JGwYuvtLW2;nRtdqBC{HwtZk}#A#q`?D0W`JR)%dAmK5Dq z?ImeMlb00JhY-USihkTpMch*CxI8_t>Wyf@b`fpZ!O%1#TO*1&uUZ!6jdnz9net&5 zLtxklrzp3ErZnPZ>=w|@5U#NA8Y*Y4bW#y}@CrktMduz;EK4p>_-k635U`hF>(htt zEvgztEPx1_{OG_w0i6t+E9|CbWa5`*m?F9mr(EUKj8hL-)FTDcY*0+NwhJKt4*n4!g%mXo)z4 z!xV_@*l2Qa;KbNuW^gz?*_ZB5j%UU=Kc5bR{hKOT0&fv3+ zl0Jnnx^_!~b7Qv;y~M0YcSNJg4Mz@lg(HWeBb2%D0qH<2KuPEmkw!m5n{CRvrOCFE z)NIAnY2svp*CLhD-e_v=L26j_;RHh@(k&53!`6a)S$C~+`=zx;1e) zOp9vSN3KnhFc*_%Dhu5uiqC$(P)S@`h!LDDt-C z9T-ighkdxr(3&Qera5t~VlGErF<;cQr7&3}A}&#tQq&z@`tUwoU#ppLg�%=MY(^ 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 WewI^+qc|k@?DX=Qc(2^Q)BC?|#)!-S literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/StaffModeCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/StaffModeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a598b93823f78a6c124617c7d6b6d9d475e84adf GIT binary patch literal 2863 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 aJScIm#NQ=Lrex{Ee+XOP9~7;^KmP};ey%eB literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/TeamCoordinatesCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/TeamCoordinatesCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c2eedfa11d74c9551bbb7453c14aea271087ef83 GIT binary patch literal 2619 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 Oy1U7ZkLkJ?KKTbhL=_$Y literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/ToggleLightningCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/ToggleLightningCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..8257fefd7c9abee7900cf455a0b4400902293ae7 GIT binary patch literal 2896 zcmc&$TXz#x6#h;!$)xE(xfLh{I+TiOD;+Ksgw#sug`#OGq^(lCO_I}O+R03q3lP*7 z-~0*q2UyG12W4pxUCX7f{w9~W&&)K9rD2H=nup1pvv1$G_u2c*?|=UE3xH94AtS~x zX4#&xT7Rfjbf;9b9loj;J;SzKt!P)Px>a(uN^w|8Omfx413n} zd%9-oR$04ISmQ-cMv|f5cFJ18Utc%8O;1{6HT{4Web07eq!^Cxptq|uy!2A4a)uunk; z(hOZW!{YOPwZI)hZE}+2?4oWi>y9DT(Wc~843}ZNJ&1phZQ|2mTTv1jRx`OBaust}U2)ol^~uG923O>8fv-6h4h! zbakK)CuFD$2U?s=R&;ODHf={iKTc9!Z%t1z9BjqgRLKfIuPHc%*QugLJijZVe7-Se;q$;RUrd4{iEwirj;5dq6sfD^)3uw6`BIdA&`Np@zQ#WIJ&VqcYAjs4dBf5N`HMSW5+O;sQgbOYG;k>*{4XY~8I% z*hIFR##^{7;}V1RiY=oci!p}XW$rDx+?mrY3ga+bB=Bur`JQ1Kp21zsCmXHBkofgr zT){iILdbr}pdo9PhN+S1bXDJt_-Ov#vJIR7tVDVW9#gB(F;n2K_<72qWt zJg!%@Eh3Aw6g&viEZ&uIo#9MdOl@oxyoVf32*b@+?EB5p8O)Fs;dfra4J^E8IG#v<^)$=>iKmpdO$64-K&gHZ;7)d%H7}EhdZ7|nniLXAh$13C&h%R z7q}@VYZG#U5rFnj38M3<2$1;e@aN3cx^$p0RT-`|#8MoHS0_w?fWoL&nC zw2Uglk@g)Z!~WYn7j~MARdQro_3PLakJ AApigX literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/hcf/ToggleSidebarCommand.class b/bin/notifyz/hardcorefactions/commands/hcf/ToggleSidebarCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..91b2d36bd19e792eb00ad4ae4f0e0f25606b5074 GIT binary patch literal 2953 zcmc&$-BS}+6#w01lMP`-Q4u1F5vc}J*=ngRgrXQhYy&ERv|_(D;SyGs-MG5}W7|KV zFTUHEK6aex@X$JKtnEyveeK`WsXcdh2`L|Tn9j6$*zCRM>-Rh7o^$v2KY#iKzz{x{ z5n>oIEmvQvJye%9d$DBMd`T<0x@9_Q$y#02%tc3CE-k5ZR=I5OyuQebnw|9}G9-pW z_p~)lH8iuV-YnkZC09n2q1Up@YO%VqqPv@Z)WB-u0WVcu%a##i=-EYYPAhKeFhnax zwXB;A7jk<7oeGdo2FP!DCK)mw)lJtY>jO761mFpTaE;vaKOY+5WcNFl>gDz{7K z0&$+3i`>qq|4*n(3yEhEWrw8=?!S#z_NVc80LafY%wJ8_NSSTo*+N=Ep3MZsB|qk3wU3UOmN zpK3zuAG=I{)0WREK$3}}pCLU*HAn_|PSUGo8nq<%4x=blvRF%2JX+46h?y2KU)>fe z$kpDVgyovhUrPmV;1WZtL+q!y<7j0% zY8}l<*hE%{<1LKH7-mrS*)R$+7$vM_?&ifHC|cB4Q#1h#ZZl+w!k!MDhQ3;LbwhV` z?x;JQ5aR^K6kNs?;zD8OP5pkA-=KmX-b|1%SLf$%T%*EY#WfjOhRgplu7U|nGPF@d z|KMH~%owJF1a8ILFU2Nzgm((>$hg5Uyg$56P87V09L-eS2_|hpcXV&A(BxSV5oQ$J z#4Uz)hpOaH z&taUQ>C{KV=`4ykhp&*r*Yy4k2E43H`FtB$*}%v6gt9?7fJPP~!y71J(aY!tIF=|! z!*Ec>GSz2_Bs%UPiWSnFL8R{wBxOupVK3;ylc{_%F3K=um@+CPUoFohJ1O0lhoiOH8@EPPEx>$;Zx7s GXMX{QNjo(F literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/help/CoordinatesCommand.class b/bin/notifyz/hardcorefactions/commands/help/CoordinatesCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..5cf5266c4601e184267990990965d9113c64167d GIT binary patch literal 1925 zcmbVNU3c3=5WSn&UdL9O;C!@B8)!pm?WT=@mXBJY(3pk#u(*`AZ68`|NvzUqi=>E|$xGaM5PlRY8Hl^kfP;Vg;_ z+>+sn=#W5TrE>pKS)3!WO?7`k4pVr8GiC1jLRGcivK^@}&?Amc%tjX1=`zet^Lj@Hfv{vS8wnN{d=5I^;dq-;eMMjm z@8Sl-DM~d~xn>6;!=kBaip+0mu6cr=yDc*Q4P>++xVup`@%-D@`2S zdla*j*a^YFM;vq1IWG|oyc%xfV`@8BJ|;$oD<^JcQuq$49P{Mv$-CMXVbyayU&E)k z%WyvQg&R0D8SXfAvKkSQTlF(F=9N5d-J z>_liQ>T2rd-V+XWJmII*q@`-9hr--k7F*GT<9Nt$p-2D!41qWejt306y4Uqhsmhz- zO#j55RkU#tG;-;erhkC}T4~tQbBNw_S{beBt51>pEplu0%tXdKPSIYA18^F{^hV*~7vBl;?AXo&CQCpAh~aaR5yaMR=IVkI=3_yHT9O z7$rB3c}!rH)^$uqoEIsIcqN?GZUy(EJT@rqOA#6o u4S6&8mi!f@hW2p{Sq{cQV|<)rierNl3r;nO;yy9T9N|@ZeMblb`2HV)tOu0< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/help/FamousCommand.class b/bin/notifyz/hardcorefactions/commands/help/FamousCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e7eb21ea35da9e51a833a228471f24f3cd018af9 GIT binary patch literal 2502 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/help/ReportCommand.class b/bin/notifyz/hardcorefactions/commands/help/ReportCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2c5c7eb6c6aeab0ae346bdd3f60ae366d8088cee GIT binary patch literal 3903 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/help/TeamSpeakCommand.class b/bin/notifyz/hardcorefactions/commands/help/TeamSpeakCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2671fb8de25f42a21f715adc2b2bf2618914d929 GIT binary patch literal 1391 zcmbVM-BuD&6#fn(12|>jU!@gV8E86{lIfVGh*pl#T9_^C>Hr5A9cEa=;HqAsSLr4% zu%EShfF7#VK7dAsUUb1eXP?>o+kfBY=dW)+0L)@TfsbL%c09B2{)1NHZa(L@qQG;W z>DW~*=akFb&R4aPuqxV?;N?t3@V#X7S%IJ7!Y<$En#Jv+md@^qoTnhbFy^>LEnC~$ zGrc1at>u+^Cvr8u6~AvZv1IT#&b=(sK5R9 zDgH)5AH&c|+m)JWQGgHzFr;9Rp}#GcWQlu8$8ua1mvEUHww^Xt83x<4IkwTmgfXmQ z1Xme?p3}^Q0Aulg(+T4`MioT=8fVi(#TafdDEr*1iFAQsJl5vl9J$^RGJ;!jkmC#k z?JljR#J6RUF%|JfDJxV;7!gdWxPvL;2Cr18*9=pgeA_Z;!nOLQ2cZ#5j)@x02zOt& z3sD*Co{IZ2R$wP(80ptC+N_M0I1%L3nvQ~mFo$^s4;iLUrCiN3Ez>haRg<@>_DV_> z3y^HvN-b|@UZ$2eB%@DKfCd-Aa1WO7M8RW*Xd44s`*^fUO*X1nmQC)dQolAuwaSaM zDFLYoTC%Zrc69WojJk4VYW2t&reqW(BZFs!Ma<)Fkyfs+1G5>z8K>sv#F{BLcHnpx ztp%Hw^uM1XZOS*!k-(TRg!_mV;JY?t~L#D9=)UyXK|6F zbp8l`12QrB9g&>_^w)9a3$7jF<^gWgy^e{HS;tz+f@59nUU;#WNK!T*T>d;|`J u=>&n#5VQ<9+XQU|1QJ+5vXMjrt4KAh6Ig>zHOa5*cuI*dJR{AA=f45L$Zr1t literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/help/WebsiteCommand.class b/bin/notifyz/hardcorefactions/commands/help/WebsiteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f9fe587509b1aedfd2631179a21cb9b18a757e5d GIT binary patch literal 1657 zcmb7E>r&G|6#f=U)0Swt2vxjQytN=ig?g)^QYoOpqD36^R~okMVn~=Ib<|hzRs5lh z;%&wU@Sz;fHUTSAW}Hs8Ih%9N_w6~~*`L3@{QxkD#|kgzXJ-Edb;$K_SS z^o3)4n(3^s8}_QF)w#8yJ>?Zo_`DEoDu^)jtQjv2%`)toR;sLV(^n8>7dl4 zB=)Nx9VG79VObce8NGeg%G_S%Zhjw+y#A*XW#1KcE&u%At?V-ehZ$14eWx43B7iuC za7@8bhC?k}3U$LTIF{q8IF1ukzS)v~k72Nt&5ln#K{?VYPGOiK<~sowN|?$1ODBOd zIH%z3UpfjRRGdeKL3wFd4PGLloXfPt2U^STnKFeD+162pf!2_)D6-K*7*jFcJjyg3 zC4m$!s|) zeO$>YMozj>;TDlM+!~Eq{~nqq=o@-}H7lj=3{=YA|aak-9 zGcl&8i=IAtMbPCb?Kl#&c9T^^2mOG=$Y-b{qo0ucKvoBOX+223a*ZHK5j~Uv7!178 zk3(cpTr(@9YyezClV5Q9GqRhwK<``7`X*@EL~aY$Hj$_I zE!_Qz=?+BRQD6X{XhIEOf)Y#U$sp+tbPltaBS-?mJnlEWb9jI|P1-r=SRf({4^aw< fY4k7syGA}D`F;l|+T0v!f~bK*2*R+~^m_Cg^uw_< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/help/YoutubeCommand.class b/bin/notifyz/hardcorefactions/commands/help/YoutubeCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..125605e7b6c2f6048d8c19c35a7a7e8f7e811ce4 GIT binary patch literal 2515 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

*H( zh3Nx*;H_`GlxfY-&M@t3r+=W+AJ9M0r%tES@7gkvv(3;4T}k(z^XV+#IY+<#`{N@3 zUAV2FM&N+$&G>}wj;9^h$mr>u>DXR8t4|qT+_1-uf??<4NqamgA9|drDcv4d z5E6Lms$S6JmTqU`r^l`u>70Ukfi}m@#>euLlV&cSE=$LKt>g_OozFS0K>f6p&ziQt zp8iEG=<`kL^-VfcQb|zxuxXpQX9c>VPplmq5(xD;<3=NDu}nn+mJ8HIV?zy~Ln;)6 z1)BR!+Zf1CjT!DaeatchTKb)|ZVlv|7gYnK3N(Rr0sF}nGdB}IW9c)7tDsF_?Ogkg=S_=FHDWWCHDDWdDA+Er zDge?mp_6fzo)B0QjKX7)gv9Aku@k#U5q)}^5fj)Iw6@IBL~Nb|z9oq; z;xyp2ZOv%YCBr@54Z7Va!S_h;y>l@AP%n-tHM>;o!+wEq&MC|DE7AEXi6$IGw}L|g zS|AE@s;Eo_6$u;`X!7XhDZ}&h>|(hYYQ(cRs^B?+_!AbJieorV_GgV;r2+J@`YnSc zoS*}X!Yx94Uzw>ofnEj4|IvVa2o)#M$AFsNF*d9MeP6UBg z<1?CUA_b$f39aZ?aS8)erdt;r*CI`1HUbeZ?J^r@a8|*KEQ7gcDh6>*V0kGp1=Drx zDH5J(TL5Qk(ta$FXuuFID!4#1=VAusR19N8Ksnc!ypkLs=QqtWFDOppz9bMEcJf+U zw>3u+xK!athJ5V`b#>T*|pB7jdu)A`s z!a#=Ij8MldCp~$wl#Y~Cnowa@oej&~NflPr?uev>tzsP<_K~ViSWZSNm6A<*8?LEv zWiO~Zc{Z6G2!m1IAswI43x?+9(`gn%CT~?DV2nSGL1!2RwgyHhZCGL4;D@THLN-@u z62{FXU>!D>0IW3qmWl#ikSx&5#3k(JtRBm|!>w{mY>f?k6GrvAp zRtM!ORG`SR!JM9+Jf%m_mdDZc1krSFfFg1K`KqJ>CzV-6GhWEzy2T{Yu#zjV zrYz03ReYmf2~`knHP1?zH3@!C0mNt|^yscQ5DC@pZCP7Hs4BFAZG%H zK1isDS1yF^%?g$R^cn?s@oIS^pb@&q_}4N&Kn4-6Yf;ZG(8A{ke^0uw0sHwc(t}O7 z%-%gpHe}F-8`y%|*ov>Q9e1$Q`-6& l(V9`eKlTs06tw=0mSiH0Z4p^=CD{;Y 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 PTeaLrKVzTPy4?4_c|cdt literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/eotw/EOTWHandler$EotwRunnable.class b/bin/notifyz/hardcorefactions/games/eotw/EOTWHandler$EotwRunnable.class new file mode 100644 index 0000000000000000000000000000000000000000..a64c856b97c99944f77f03c94c06c5811090d993 GIT binary patch literal 3664 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 J^!o~-{{T_DNgDtF literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/fury/FuryExecutor.class b/bin/notifyz/hardcorefactions/games/fury/FuryExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..5a0be3fd96bccf1cbd349cf8c647a92a773558cb GIT binary patch literal 2193 zcmb7GU31$+6g}%Gm18SOz%p|k~x?Icy3ra-C^2yQ}JoDXnYD9kXkme-1iEE!n> zN{1iAJ1@LAe9ZKf8J_ty48w3&l7}R=GUM^g&hFj4ch5a{&z1lD_qP`SR`FCthT*2` z1$OJ%_xb_%o2KWB7B>UibGy35+oG$tLjRe*MZ@NI!VCk?SD`TMr+S5f?bv}$p1fo0 zauqF1uifTuQ-4s6CmX&MwuKw?qcWVkXS;T=&ahglrAFUQKyD=<_npwPU8DSjL8*F8 zk;MefB<38(kk>E{jp0J6_7(qz>kfAz)!x40E%`>_4g!{H!Cq^YW zu)7Q^={%lFu3rU%%Fu}@Ww@2@ol*sc3C~UH%g`#-Jm1nA;o+ej=>7U9+jZeKg>Rg3 z!Wb;s7lWqq=aT%(8eYW}BHt3h|Kxu;tm^4WjarW!uHkhRuQBMUZ)iAC8s5NlB8$+* z@0a0rsho~%coahdC}}986341~Zp*gfSSOg5=FsO-)q2ZzguX>Xd^#~3Su8PJN{Z86 ze(WB)-nZ^@J!~X}%i#uYs?aIh5o2q(g_Rg#EIo$nLn|{N(JWROwCCNhkpTN4hqv&K zinkfgpFXW&4R;w-UvwO9k}~cezodG={kr%%6s{?bzpNAX^5FZ*;vU1)^Mr&NZwQA# ztmAzZ?=f6FK}Fo)5~vzB@BzW08t+mcWtgK1pT=zDaUWYMHW{v@hl;hL;X~QV@?BES zj_7u|C1i_xpy3i0NVd{0e1>ahXev=1!AcThSUBT2b%Sw7rYzgc0CwuL+_$LB%ns2d zLzXt94$tr~{b`RXI)=%5z|F%Q-idmh3hMmZsrnl+JVUPTg}y1IKp19@fA(%j0&tbO z%@}<>feg*4_tU7-Y7YuofZ0kRdxTu&cT7HAJi>GjGe1X%FVHv@xlWSP6bhKeJlW=B zH@t+GX+;50#6=29YQ#bk{IBRDx}>PQP=3TlrKpUp^zh2v@#6R&C@ubit3A9~SnOfB za68_+Q!ti#c(;c;zoMFf@>6ATX}PEzVf)yOt{Z~{b~(ynmc}{EkY%2JYXr$4Fq;HK z0$nHAGS5EHJv_um1W?*)*oo5E!!E5PKYQ56$Hd7D{m=LWbxPn7S@X#J14G5*zcE3s KpOPtq&;A34u8Ir* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/fury/FurySetpointsArgument.class b/bin/notifyz/hardcorefactions/games/fury/FurySetpointsArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..5eb152965f4ca76650683a535efe92f8b978f75e GIT binary patch literal 4036 zcmb7H>2n)r9e!S0)~=OplPW!MQ|QJ`6UnKysS{Fa8AD=X;#5w8?bxK{TFWbW6KPjj ztwLNV_fcq}EjQ(AOL`KZgjPvmCR08!!#~3Ct>5V|Jn!zxvMwhXk5})j{oTLkcj#aL z``a}D2T)hgC-AW2`gURMabwl=R`RZA70kSEyH3?8nq{kM6l&g@G0n%kBz{F0ZW$56SiaflL7})H_e@16o^f^E0&5a0)y3tqbhC@$k6Yq?yp*U=)LY1bW@Ll zq}xvLO2$XG&NC<~whG+0nlEG`M>8^j88eDmW?gs!{kTnof+Ta0%AGOKn?}iWipIR} z*-kNgBj2PK2O)5~h5^I{w&rZdI$kR;Ti$}XT(Sg`IX7>X7ERBV_vp)*ziL+nvc1D} zy~H!zYSHpfRm~!m?CxTGy3=|E_Xyn8?&jf|U0Sg`6(151Mglva%b4sGxTBlcMM-g= zhF!RyDK{$>%UKZ^?MB*RL8K}xMeLCxQUdp+raDb+5(oa+^h z<=WY^wr@1*Cwe{42v}Zr6N)ZKdaP4r`q2a)!ovzaB4FHP`DqvjZN7~$it2LKbchX4 zrY7ARXTD{YjRig;^6VCT6dzN-Do*z_p`A&?$8ks?(Nr!l)fEt%i)^;58EH}glPQVC zPYCpoo-(XW$glJflRkfu`yv$lvS-J{7O*=M^ zioaH|jFTmEjXi}?QSm4-93@#-@fm@Ax?R;Rn+?*_DN8R9^D8t*el72&UJ2M6Ei;qA z=kNsupBEVGsk@mBd8!)6*d0&FlLiyZbi?=7PMTiTnsI!AJzdk?tSS;&L?f$|%|h%^ zQDD{WX&UGRJ(Gs5;*0{DNbca(a2BjpmGf`WEY;Wth>00lGL8lp6@hI8;FRkW>|)I` z70#g=@G3HJBwWi^5e2JZC-7kUtbf^Vr8{9PtcF8iP`Dn3;L4QJE zS1=n#*L@C$q8AxA8cx;(zKX9a_!=9~O)Amw4SbUWfu;t4=sG)?tsVHbEWhu_#y``$ z+6M6?zOUeW0uS{}K{zAV9WsJKIU+ZJ1(uA4r|>kFis@5xr#aqxx4_NC5DZV^hZ>&2 zvmEdAE>z%|`LnXQ9@-3F9g;&XW21#$|hzsTppq zlNSBa$Yw*2IyK?A2{|WgjO!yC!uBq6n^K}!uxzdq@+Mlt5hquuU`3(m4I4qDT?*V1 zw(h9kUtd9cPAOsDCs=3AO0aw?`0I5iPMeXO?DKBT%UiOuFs%}LghSXd8owPfG8x#( zx!BKNHf-*4A?B%{X9X&sgS_PsLmxl4jU*FEEqUt|p7y?t?SJ8SeYk_qTLb>vk>G7B z?&Kf%AMoHVe1JD{2eLUw?%Gx z9v_PTvx6-kunh!kRx4Y)j$&wPxsG!eaiC4(d6I|kFC@QQ$5-n3*0u}-#vrYm`Yx8n zmCN{U9Y1&%&kZRrV4DQ4PhB3*ZFpc|B#%>Pt6fPi*CoqDGT>f9dD6S%df5X6kxWvDQF%iRlae%pz zxtj~K(#V}Sh?mL3-177)UX!@sN#>K-%J fh?R&;BKAHe6RWu%hqwO^l#;Gd literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/EnderChestKey.class b/bin/notifyz/hardcorefactions/games/key/EnderChestKey.class new file mode 100644 index 0000000000000000000000000000000000000000..0159b50cc58027186c3c150454034a9bc8024cce GIT binary patch literal 5157 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 Z4(t)j4>9L`A>pt18&xIz-BSF=e*x^vB+&o> literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/Key.class b/bin/notifyz/hardcorefactions/games/key/Key.class new file mode 100644 index 0000000000000000000000000000000000000000..4d4bc0f94bdaa96f9bf20eebecf33f0fec458fd1 GIT binary patch literal 1236 zcma)5T~8B16g^XxZM$7c#R3*TLB+OMRuX)w;lUabV}lPE5+A4Ap&h#HlHDmu{Z*Q1 zNi^{X_@j(>c5A6^03UYd-kEdHJ@?MtU%$Wq1h9*pG*S$kexT&>;FHtkVcQKtam-yM z13z*){8U6vPYj%QVvvTxP&nb|-0`^Iao)F1gsT_~pHK`-&C9Dp6-vKTXE0w$U#dNZ zDa?{2$6d5uqNbn3cmGf4K(?iAG9>d1Jg-icj_$mko&KN^2 zFuZ`1^4)9Rp|7MTm87}SR^&7S|5$eFdKgSMwi$M=e#R@pDRsopX*#S!dL~!wOFb$X z8ryCC0>(PEdX8qEA*JVvtPI)dc+HZxPvwog}f9NY0bxxIT)~!#R3X+ zwvwQ63rpltT+GUd^EQgKYEFlCM*DpAD;7SJkn=crLA!}iS-J2y}`aqbs?0FyZRwEzGB literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/KeyListener$1.class b/bin/notifyz/hardcorefactions/games/key/KeyListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..7de23666862256c42ed49d9c948b7de74fb118ea GIT binary patch literal 3115 zcmb7GX?GMw6up(Lhe?BRWD!LfHDXAB7Q~G~FoXz^NrEO2QBf;1l}wYK?yyp|~$71JQHTZ=T~f|B63Aywx+2PCz-yIZ0Puy{+!M?^XTr_fNk7Sd9q-bpltr zUTBYu@3jij&*wZ}jmTVRdv0Kj%AyLaF*R;&QR7)V2$ie+)|Cbt1g`M>QERw7HfD!b zkSnNs*-^f=ArjnPc3nB_D1oN1U^0gjb0VX2+lk8 z?kW@4U^RC~Rd{-L2?L(hbCJf8d+misxDGcMxL)A$b8DNpQKvD7X>7CuP0K#E)+}Uj zlYzB7WXwfZL55wPlsf%*2iTgD4O*^`?+5RCdAJ)Ng(}LC5_}}U3!z&Xb7$vq0 zHaK45P+TyTVZD-VVM~W#+UPW}iz6V$hso^(9074}0xmxUpc^F<_k&Gl_==Ru(euVQ z6eNj1pzbd#H>WZ&Jf_Ic%srw>XrinUY7V`u_ki-dWT29G0OJPs2&{2cXcak)a=si1 zs}osgEK8C%ftB-$MSXo}qFiHzY-4N4^Yhy{xC0Y=@t{C5CrfrH9eXdcp2D?B;=~fJ ziF9QiHt|T*6r1|98xwepWLTEg)8q*gPwEyk*kXN*sB8ALiDxwJnjGbhh6OEp&cyS0 zflLfkn2n@tFcNNi0xz*G?%Kjp*FQ2?P@8SX*-4aN!F~h#1Uh0BIoIW4;#Is>WqbAN z(WIU-R5+{baJ+Ugk&1^8`L3hgKwU1fLrCgqKe&ZuJT`aTK2s zkzwDH`J4>GUKIp#l+`+Go9o#zT)iR$7M@YN$@XQ^Hpg(F=kqFobbO|rWrXuaYSj8v zO`YMBo3o=q-z!VCt1mg=mHnK$#nw-cme`wRg`Ri3LA%|Y;{~iSM|i=@8~9OR#mpWi zCMq~V@18sLS-~exTl_fZB1uMH>1L117gd)dgFpqmRXG;7c7cUc9?58@_%R!-nr zfrD77EskML1vj6>#uK=ed%YFhmfBXqP*v|vLC}UO*m)G||4;iE?x{f1CSO4zHI^z? z;8hTu#O|v3nud<5%EAT;j^QC{ryk{UhzUL}aOl*IjtZV?Jc8LB(Sm-StsSVQ{o=od zJYcGVmnZOglwH+v>TT}RbZ4Zdvq>F_milRi90zdC%6WBfMY Q2OP&qu9A$ddBUH60J;fZ$^ZZW literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/KeyListener$2.class b/bin/notifyz/hardcorefactions/games/key/KeyListener$2.class new file mode 100644 index 0000000000000000000000000000000000000000..6aba0a12934098536daada0bf932594845c35ede GIT binary patch literal 3108 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/KeyListener$4.class b/bin/notifyz/hardcorefactions/games/key/KeyListener$4.class new file mode 100644 index 0000000000000000000000000000000000000000..6f7eb29eb55b08824a480bba876000526c9a0e2f GIT binary patch literal 3126 zcmb7GS#%Ud6up&9(!->|II@c}V#JUDEf6;bPzXVzlLQG6QBf;1m88i`_t4z~1owU4 z_YF4`_XTAjdXD<%IsWB_5D@4dS3zW3^ff4=$#KpVa` zP$O`G;|BJ?$X;tmdbzCYsR5Y{Y}fIvL0M3~HLOOgtJO%x_5IWK8}sk>ypX~1@5KI6K9Kx1Zy z+$F72VCO9z3{|FR6}3w_++LE2L=?)bVqT6gsEy&L(+QNvn{{Y)o~>VHJ9e-}px8Xw z*d_)tDbI_x3dGvooSFiG(@fN%Uaw9!VIZzoXPB6RL;|&#VWI&u1!|l1q0=(9qq<9l ze&ubhpqtFNS()D|JzM`@6~;8=0?Q|Psirn!QtOo*17``$3Zc$RXVB^mJlh#uSF-at z0t4p=OdFpO6X&8yAZ}}<1J@In*}NzMR%cb7Zoon`8#rGedECO-u8Box zAx4hc!?aExvk(T;)4xMygS3Ig0%u3^Z96)vt~X-QN})H9+2I6QvDAbGvaexC`g)^F z1u}&5I=#Ex#0s==cTfe#cNfy(Ni7$6I5e-V@Cp~<5(5_tEI75ciA!}D(-_8j+t;-0 zW@$}98mkSg;w2*{+J|J&?&e+3#2Q>i9M)yFbP&mCP{(xA3EEg|VjbFvd*D`*H4(Ln zl)4?b!oUWW(!}(dxDuTL2J5M$dIkg*Hdpc%MZKEJ2rFoE9tlq}*iUW(|G)wvJ4ur%%iKwX^I5XH_=-cewiU z%ESN$i7lON9x1XZ&Kl3KF3Ga6Wu9Q#7&fqjEg-^&v27E19dpbfbK-CW#7%J&`5_n` zAX|J8R>M=ISC(GZM`0mhyk51lq@1iuN3a*3rwNFd=N}x58m{ZLd z6VKq;3h65oNOOB!Z(+-_gOTcdA~T=Iiw0g0m>u;J)iLps&V;6tZXj{ILikc{e;}EF zTq=&&*acDpo?A%Cl*Z_F6K{k}?%cdK)7c)!TLR|T#ZsK?aqK6BmL~8n-ZOB3b134w zGR;lAj}O>0`aM_XveFN_l<&(yChMdXuiHp}Wm*W#IU#jpmCV3xc4S|->g58dXnQ+J zH|KDw)B03Ro?w%kQ^TI$C5zQ5nCNv&URG_e^(&+?@_bpUTOWsMhm*~_J|`Qy`H-74 zP!?D^xi^Z5BN(N1*BSr9;A^KjdYw}dC9S8s+3E0c)t;BWuY3+zc1XU_Y8xB%0|97E z>gPfD<>P=mHT-RWNxi9Dt>OPMey6vz9>TPi#fQ+?vg8nwEr&7v^H6&h|JG9*_zAQ5 zSD&Ol=3p+r0%u}o#g_Psmg*>4^)=>gJB+h4EnlK>6!QhT4`Bb2QJg369a_5mE$X8tre9yF$xaic4{Z@;wCv5}+i!D8{Udm%Ph(yS zjrl@8=767>yI(LLzhWPLBLctRTl|ji@dtjypCXOF!<@9}9Ew%doWw;NKEy}N%6z1eGvQVtsh;$h7u)0qVx{`h2gkb)} zLX2xNYM{rW%OkPwO{*eCH@VNL2pwaq4eEJdl&W4?uttgRYa5Iv!~JGQI1#2WwNYBo zuv{dVaV#TiVxtl5iI{ONT@vn%(yKuu+HFQ6W=}qSF9Od%JRFOMlUoJ;33#kZQ;>

j=R$`>X?TB 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 sV~6qbQU2YNHm)4hIZu9JeZDQfV!Z literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/KeyManager.class b/bin/notifyz/hardcorefactions/games/key/KeyManager.class new file mode 100644 index 0000000000000000000000000000000000000000..4d846b142c80def8a3b2c7cd6ac9496e610aa84e GIT binary patch literal 7166 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/LootExecutor.class b/bin/notifyz/hardcorefactions/games/key/LootExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..d274f3b89e6c36c2925785ee9bb27016f1588b59 GIT binary patch literal 1475 zcmbVMT~8B16g|^cidzs0lurfm14}_x6!8H>DS{e{A!0B*4!c7;vfZiMDT@Ef7n^9} z5AeaCWW3WYZeL2WWRsb5Cv(r7dw0(K{`=z>fE7GRBf((%O3UN3uXcq8uA>5R%pEP2 zU$@J=D(d!$II~Mi>FqDVX=oLskz&~En$*zJlUhBmf54F1Qm*L5RfZ%6bm+%MbvI*@*uGSaxlu+jCTsCeF%+UmkqAh;Ii>MitR(45j^fnlf*!x&-6aMwNG z!LWNlIWe2nQa#G>G_LA*%Jb^yk}Tvfn8pOdT3nvZs4xrThUGfLdR&&5^0cFaQ-)^d z5;R5bpF}lH8=6}T#kgvUf#R;i>$;;sv$$ja>Rq}^d2>_lF+7XQ`$E)IUFt~ToKaX{ zcpjJOgVYr_;GZL^c|&#o5>(r#V)dL)AP{Kyk@mrKgw-T@D! ziQ9`QU6FN$4j@Xe#S+R$odYiBcKhb}<(8R!ZWC`aC9t-if!IL4LGWbS_rwzUt;@QI{ZijHr zEayW!Z}38h7Y$w_{Ebdcz@~8t85*;sX^6gIOk)HEa^NaPQN$Q_$w!BnfWRa^VG0ju Y_h_gZ%Xml;>Bl2_u1#%^DN11VA1i;yK>z>% literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/RewardableItemStack.class b/bin/notifyz/hardcorefactions/games/key/RewardableItemStack.class new file mode 100644 index 0000000000000000000000000000000000000000..ac55bacfcf8699d450f638ac6cd332bb2841c128 GIT binary patch literal 1989 zcmbVNVRPF=5PfGmR_v%Gaat!OX-FC{j@?$Y&=PP6ErGTMw`DLBJ}b&uQEf{eSxQNN z6CYrPmX;3;pZQS??%Hu|wZfkj7B@j@fgb#;e`*UVF5~AOeMf^eq{fHorxaYiAT! zV6BzHcibcC2A+RxjF~kA^4pH<1UmxF>i->Xoutro18GaYafWGgPawDJ9mpcGnAI_Z zIe~0-bFYXJ&TCi@n12OG#|4xHrX4rfGkYOZp+~a-fh8Rprq$QGItnNjv4T|%mjqT{ zpPP>NutqtCGPu+CLN_3-YE!YBZ8@%d820z2|D!6DK&jOC*3lO(eV}~%) zs0(OOW4OT#uENl8P2gOl`zV}_k8qtr+mg~$l2EAzZEU8(CE(L2(4%h-l!_B*Ot(C# z;_+al-9LXszyT{JNT00?8+x>qpm!-Zw?Q+A+S8bW@59UdjF1&udvIy z9H|a})S+PP$CSpSp;86=M#o*;qt=6v)fqKHx;iPxq&R7;#3Z1zyyJNnxJ;6-pBw6` ze7--qRdkL}YFTW1A#a?!j+&gMGw!=3}VP2#eHNpJN(>?>8?{i#* zwCDJHsrConsa<)F`Da+H)t}*F?RQ+f%Jp+B{}#Eg^Iaw+FiV#?Ld^3i@lII4Wm;=7 z5H|2WSA>iLis(zj2MnZa6@DpdGx(5}Ds35TMpS;LU7e{!RO+SLOI*p|ZOE;7}$>LW+rKv2F$_mai*>$X@sB9!ua=aZUsl=9;%6&9R zNY%!Or~y+dmI{)I@>K-{VU^}_9#aXhz_(Q3Rp-TDPB~Z3bp8%&iSrIasZ!)?%WQ{} a@)sj(jZIKb<&_^xoR4}<3EGMxKKKuskIWPR literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootAddArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootAddArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..a618c0862532fdaafa4f3079049c75d7bb072221 GIT binary patch literal 4053 zcmb7H`F9)D75<(rdB)DTIL<0UVMr4!+r&dcfYfr*8YdxY0Ua53{(avQoPsMhD zuDSH=Ks8MRbU4s~E!Zg?#ss!Cao9W6LG!yb+=5RFC|N5w#o`HUjrXpOMH;(JgO1yo zG_z2!oQ%M}W>#0}R)b7P6Q9wrM|x8Ow{mQG!aFqdATH2Ru)MtO`vek?y~+;DbyLcA ztW(AOjOCp+XL1a-JLRU$+?46r^11pl63p4Yz~Qw^`u|}{Zz@yrkZ)$`=8g@Wlt;V^ z2NdjQHCC2N!`(Q@G%uLBqBS-vOER)Xp6``;zE9wmW)jQURPk8?LLXwKW!aACL(E>9 z{l<8S=V;EHv2p_Ku2bz8f!TP<^|HoHaem$ojOC81ZcnnJmX}yZq6tDDUR|W#v$D=d zB_7;$s1r{O4$QF7wgQGxCC{{JTuLgxXQl@lvKH#T$5 zN(YJ6iL9mR3ru=g#X()-J*8nE1~%ao#ubbS=yfqQO^JpFWe08YnV?b2mv~SxDX_Cn zk!iPsk};k$OP1Gxhj2y#*}=F$LelU>Obc`pcPFjVsOiv`M`B|`u4$=;hCipSXCl>h{Wn!8Jt=^0Qk$3t(xOHe9U#z@f*+&mAj;v7?+4D>wT=rb0*rNh0@DVdnW%xdeN zm3J2y68YIDN#@`v$a4ZXR$%1GFKN%54Z_JId&J1PZZ>Cy?czE{!L#!mPYaw+Nhk0% zxF|?E^Gf5U=aVU#QF}c+sb#UM%nmCndQ=1?v7TCjoRHlZ*8;wx;0b}vH72R*YAE4J zI<=i(O0r4VW=R!a6&RRyi+b90bl1t1^ep2HXOC_>dcpO>!1c$Ari3d;EHnKzfqOTQ z=?Uuzj!;RlNv3TwFw^s!FoCaY_y)dNL9EPT$4 zI!#{5ahb&rH2e@hBBc;a@-Vy$t#fmzHD{9qCVJ1x7Wj#VpUM_!n?9CGjh#{Pb6OwH zWOygg<^C@<{HoF-W2vJuYrod;8@xmzX5=(GfMcLB-J@n;aUSM~vEQ+^& zuz@3en^^BXvE){>2`evZ3c!OviV3d*uB`NK$FK|=hy*J_{kQl1%E2G;l6Ww31o`HdG9f1r^#W?7#d=53vFF-(;kq_f!jIs zT6uRT&B%)+SFKztQ2E`?Ckqj@@ON)tcSpCjh)?zPU&iLX>)0~gy=@UY`pUSuj9bgt zeHnW%Qm_TR{O+b2u$^Xhpc6ZJt&5>Ad=nZ&Kknoc&4x}19yxZaE~gnnC?%bA8CPJ? zPd}Y>>1Etgb=ZBV;`Ln`skm&TI(S=c?q(2i?z0~;RB_X~ji==a#ZoM?6nz=-e(7!z zhcDstWgPEL(th8*GEP?fT*YV$B5(G8goz7?a`7Q12BUrNVRIR$W0A;#GR_XR#oGRk zLn{n@nFcOlhBhl=dNGzmSKom?`4|A1)!>{VjK6N*TYG`}}=1ln%FEt0^+n<6V1M`l{CJ+#=qp6=BU= zL&(h#X5b}IA*TDVn*iIxDXK0U+|`cE>{w7>?^L` z!rN?yggB3P@GjwgQuy?DiRim1I`LP$$B3_q2ri?{c3I>Zo`QO(`Z2~7Oenar=VK%l zWECvz`2@G2U4c+=iaHAJQt*C7s3L$Ue^s%I9|g}+;}gcZt^)r#HYmsz`5QxM!P0*L DLw0br literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootBankArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootBankArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..7ba58e0e8f8850df63c5b0b0572caa792ca269ca GIT binary patch literal 3287 zcmb7GX?GJ<7=CU^Gif_W2~sG64hWdG+JGWrgD9j0DuE&`RdAiAx5?0SCd^E*!F}KN z9ryhUAJiko>d~X0JoPVmj{4lmq)BP(fe)F?-21N2`@HYHfBp0GZveL88x0KtJ8j3e z#>%IYdD9)uI<6cuv%clnUNUD+NG~}q%SqGCl_sR^Co_)Y?=kK1-Qj|Uh`|0uEtGt# zVEGoUm_;k8zJiaeGcjS>qsjhs<)vy(AX+Sxa+WQyHM6ME{b8JY!#EEIDk&=Ov~0`Y zC9o}V$=V&m0+F;cDr0Ej+X!=vVW~hOotN2h!_P~jz}yX@;Te`~l%0}mC@I6tW}TAl zH)9Ew>Cn(Ba7`j}!aQXr3#Oe*4*ITT=Th@mI)fDrM{{ z9R}7DP_tN+_Nc&h3t63~8-|-wCa%`8QF)8`P6Ys!>t-F-AR*9PlVG5_;N#u%3(;|0!%l(Kb)Gl{EWeyQTrkVhRh8bQ zn0Kqdl7u4kZlpErA-C#O(s|QQI|awp(ThGx9_i~9XseHIRwN+LJ_XDE3uremazbYP z)O;kXIK^8~19shp=9fqK^A;KMTqLdS%h^EMJbMUDKBb z&7#2iuw81Yh6M^1D3WS{iL8bZ<`8sBbwkG}*l(KU^-UE0azLQtG2}Qthw{>uhRL7p zEIx5rKNFUY6BuU)lb3FJQ2GMP=fKY;hA;s~1BXpr2;9(7#7XKhB_`w$*0wpi{oy(d zcqnP0@pvtV>aLDcc#vm?Ehi~3cc_M>)xi8#)KrPf#y%CWYM6&~JgnLxdaNMw0r zlXz6eW6EZ~5NPNzl=M?No>tP4eFK?ZCHt(7=aj6PVZ&~P!_uYbI=RnlL4UVS&5vO2;rw}LbiUo!T!>@E253hP7b0&x~Q7T#Nn%2tr zsS$~7l~p_oI83T7s}oSf;#>@h&H+1jrvfeaIb!P1jB>GhZfu{cu(R^H$Z_3o`;tAE z+C__@WR=4ePZzJgbkH}m;|xAHzchRza9NENYEo$UjBqVJjx@Z^^K+25kF4Blse^Il zg?F-UWl=!yw{7XB3#R8uR;V%H8`kp}Uc%cSnXK*|d|SeI4KY5O_$3iR1OGR5#+&2% zd0f`nbq>orf5D1l@s;PXs&fi!rf}sHHk`wz?Ko7gTP*m-veR>S8;|W8mv( F(|=20gp~jQ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootBroadcastsArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootBroadcastsArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..13b8b62580a57550a8f0845e433aab84628997bc GIT binary patch literal 2093 zcma)7ZC4vb6n-Wz>=KqjmqJ^LnpSNg*leq{YEuys`lbPt1Qe>Rlg(t=vf1J6Zpx|u zq`#nF{Gjy+z8w7l{uqCP^-dB<4hcPcna#a3^W5h?bMMVR|NZedfE%c3h%w}S8M(D* zKUiBlsM<0RHEu_)^h3+xbrD+I;+e$*r%@MvWEG{1@`2=4n}<=j&~|G`Fx)>DrxCfH z8@YtVcU((ZO~aP;I`^yAgF@@a0UE==ZP$0BIfnT3%sNA&Age;hAVaEh7+c2>!?sQECX`-CwzAqcTEfnog!!X0>6aJK29`_xq6a}vD=on!zq9z3QL=c5KPSd%T zr-PY79AgHOIKyyjx_A^O*Xw!M>zY~DFu`#4=pkqJc|zo3!RTJHoFrTwg7|b4=9K%S_^~G|dUJ*f=S3DwX z7NyO-bso6NZaWjvmK!oG7LTp36W1vP)k&GPkUJFZ@`)0rObxtm-~-$sU7vEVAy#VY z4GPByds7Mf5yMo!69@7!Bt2dc9>bvY+x5>-n=Z=0u_}%2Z8x$G`lG#FqE`|@?lmV) zScsd0xQ#gtpE6uKR?|+;7NlQuokqabP%!Wr=BY&rs|)2jkMpZ53yXz?Qn|#yHdRUF zRf!G^Vi9*W+@bR8%BQf!qk{BgVBj9^Q(NC#DK0WhbZ2yUrdeR0D=EJ?QkpB3C&G?$ zz3Lxmt7C~_s6d2;ngn55#|n)SU+(JoiUjv%+LOMcdX9Kcbq|j~?9vcS)7Vob5@v_6 zhOafy3`%z;()VEue4~1ED5PgvYTc*iQkDo9E_El__deC8*4`jeuQ^T!6Eqg6CC2)U z8HQnB>~=;p*`_>*-siOG-r-aM#CfO-I8nswz%u6ro7O9=4aI)!$s=&IQ^M` zR;pL1nqm}7&jC^SYJ8J!g>x4W@u%iV0VJE~- zbf$%`cmiWh+=}d8 zFHzXT1G7j`$CJ;Yo69edG`}R%Tx})zJIXO6ek7E5SB~d!8s{;O$tIV%R+K|7d2C>l zI8bCf#J5eR`6fT5dLG~55fX%O9ghhkNxCa{eY=&6V9DhZS Ry_@mYCY`12Dj~%n{s+c@CUXD) literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootCreateArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootCreateArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..f1925fa757b1ade0bd2680799366e002594a5b98 GIT binary patch literal 2955 zcmb7GX;&Ln7=CUDObCO8bfMVA=^miX*hQ@bYuj`I8%l+iO6xWxmoO#C#L0w8-Nk+1 zm#=>G_(6MYu=bpO^n<^{!>{moeC{NaEpX_UWbWMiKF_;6?|bL(|NguS;0S)y5D++) zcRYJ+>V`RPx#^VS$}ubD*-pM_W~`hnniF!$wA@T7C-a_}bQ~|?O3RZcs;@Kz1$tM+ zD0z0)_H5!<1>00Bf01%>IV+zw`x2FhIW&QWLbjB#^8yExD}we`Jv~$P^nz~^r*V&+ zx4mNmN22#_-7zc>OgL#7LKBfvev~0J3p7_EE*h4>WQ0+NbviV(2<(d{uUV6pnYHp6 zbI5b;d?vp9O~-H}1R^@>(V$_2K-*HIlO;QwmTm}}1X{*ZW3g&}V&sd3u^yWhVY|S_ z8iXCgVZv|Gu@&0{w2bu5vv2|%q8-b9QD6`0FtCF$T7`nlrv(nwLS1HCbuz9XcInuy z*g~FD30p1-tFq^#_)<=Sdp zeHrw|?V`Z(m20^siIOnHtXwKu88Yo%Q?QKkVI0zMkOf&z?ZN z5Q`|?_$nuAi1O<4x^!Gor9Gyk_M|{vRO$8v5*kiYObh4}~5}gf=FVGQAthKmB`eU29$!??_0KqZ}%Q~g$+XfDSTyKF_Id3ny8Fe4+l zs^JRrabJcyp2c(Q+KK}LJvD{AHpqAgF9>YEI4)gj*qm%xj=S_!Wx^Rsh-qV=s=lRT zRMj|mcJRbV2pkrHeK8Fb{lPUbc~b>xCQ3!m$uR+8NNiTo+d8gcqB5)ao-N)wH>=bQ zVGc<+4V)m&e*evF=qTVNYR*d2mqp`nPEc2r-$fms^1ET=bTT<`IfTi%InEia z#yAxv@v@F7++eFQr%KT!7IZURSs<*1N|x9X!fOOIuG`+Yp?KcV@n$7I1Ibeg@@*Z{ zc&9RP2Ayn{!LgJ2RA;@X+TeXP4Ek16{fF!&!}esZXk_e3nKw924VO?cGAk)7+3j5D zV@>gM>S@&tQm%5G2ZOxe>FD|zLxJuyTLPnd<~Ev>OwB(!fH@~qTE zzg6(B0S(`AXsmVd6ql$fxC)1;2yK)iRwx8op-Q)B(iY^ZJlL2SjP4;cHY9C-*_;94*o`H2DA{S70q1j zX3;zOW>Wv-F zw5>qXjVSj8;^?W+h-td0(PFkec(?v1M7tE-44$}&<7J$Q^bx=FKpE#MJh#ywK=7B& z-_cseV0$olsElX2>)Y%9!qFv`&(q>2UL;867#BWbY7x>M$Pu+agG_fr6}F7=_J-TY z25@;E(^cM-XxrXU#&w0t|5tntf9qBM@%8G)TV=d^6aK~ri})C6onM+5n)tkxv2SCp zwzCihbFzaSypw}s7baPhY3#+f{Dk?3SyN@}tz_z6*=F$(KKAoHi%;;WU#?lG94jr& q;xl~C?DpVie1R`n;%TJt6~3mvzTti&0{j0(pGFFS@A)EtAN~iOx-2vR literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootDepositArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootDepositArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..2dfedf7257e5f81de6f2615c2f6950872bdf9ed1 GIT binary patch literal 4733 zcmb7Id3+S*8GgQGlbIwF35y&HXopL3Kvt5{_CBl?X#uIW*0zYUfGEXYwD!L5yZyI+^woC+^~nEv5x#h!J0sII+aaY zw!lsCOB&r4gt{dNwZ~U!r}BEsw!94jH#c6jcGG}BsKXgHRn!S6!})8fs26An?(FJ@ zp2!%UsWU6OWqXc3>0~qdkYSJMMk3*4ZLb!Un598MgTTth_#R`zh^7oX8SV8lmYr;$ zdD1jc1A(xHDpV`DR-j?Jl8Si(Rj$YCNYMovB3Q^6jg)1$rYkV#&Y5NvEEbqQ-PEmF zD>ZCpR9r8xa5OQ}8dRb+#nQGG3f)?ZMbPCfmI%x(bBm^dS_ZOA!*Z-(AW75fB3cBl zZETtui8QuSLnE44AtRkO?O}n{<*d%o4Z>}gCR#MClHOF$$>&n$qE$l_Hwx6I&CIyv zxIl~UIF)MD_W>HDF{c`FC&_@u^#|MnfFiDYkH>?5sMMiQR6x5+f=GS#uvQZMtl(J2kusYwOT~cW8Jgc2iv9$+q@p z%@`XfTxc~(s?q-bSZBKwHZ%+&Ay7}@m}id1>}@1kfu$5L3d^!5n0hBO8I?l4o{<=1 zu1q8q5OL9~q+Si9u<|}{Hz&6nHZPPRh12IHElsu2lnO%_!?*&1bM;jzYOvvuU3h6) z6S%De&gCw9rIEF(*vpCzI$7Pwm^!1xmh4=A`_VD{7~2y`{P3-6{=4zdBsHGb2@RJ@m$koQd(b{_A+ zES#EsE{C7)uK~P)o+lQUzTSsr3LYZeU0LyJaR47w@BxAAFAq%(56ehvSl&%Oi>df9 zc~J(*scH`EoWzA7ReY57k`vlpr4MC2Iimg2`K?>1ourzNOJ4YdWY1V}X7j_PKm!ty zpVIJYJVF+t|6mm`hdbmVu-!-tED6Ycsu2To{sBb@>-~6C^7>~s}X$H4R8+`ih3H;%mI0 zTgpt!O0>%MDz}XTcviy+JVz8zKaT<~Y)qy7+eqLt%XA5g)2q5SYxpCb zfGPrH0p+|bE#`N{I)9ZWUHeTmt0+#{GOV+0?km(;#QX_gysk~A3oF~&Qq}cEerGP- zg-ABgL%l!u=*{2#6#SVfE$V`4^-{1(T7P(pRx|+<~zNb{JCWreD&9MERQXw^m2is~RQdS1^{$toQ&BKSJ2fpv} z(;lgno<1Vaq<9V=YiMOPSoD5p zd|&7o)bNW>p(=b%Ug11{oWM7zIalK?PQW+vZJtiug*XcNP=1IF0}f~f%|uoUzcg3# zXB1sTQxB0gK!oiklt&5Q2?F?DtivN5v5%r1N3b4GVgr7NjrcKf_iK)yf1?xs!4|yA zuL~71(aG;UlklsxR>EItW~go`D@t0xBtbUf`ek#Mcjh=%cxPqw{=jU!Z*F> VB5!?#8kKns8lcYK8EFOn@qc1(E#m+H literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootEventKeyArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootEventKeyArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..e259b415e6610e80bdd4950e44cd246c5089600c GIT binary patch literal 5638 zcmc&&d3YRU9e%%blbLQN?KY*rQfvoko1{k;O1Y8}Nt3iqyG=^dCI%3hY$ltbyEDt| zY-zv)Z&5)-MMP0Sv>pYaO4@J~JW)Ww6THO(54`b0k@|kKv)M_q0UrMGdG^`;=KFr% z?|gs9>;uog zTV9*My2j+JTsH^GZVZ&&o++d)yS1rbAkyIsn=0lCsHRkv2B@eNShL-A_E^KFo7WAU zoBD|3>SInpA90;5xAHkNWsO)V-M~x~fb1ggFI&-I~ zUqMXZnCYY&3RZ?vRn!YC9!-rj2c|dsa+*uNZH{6-j*=1=2`s80v8g`_ve$4d;sQ$A z^m-T|fukCmW-23@E!J>6UP6Z&xtwVa(*u>b&bS-s+bUTs)u2mhs^=8#o=X)@)Nm4( z2}ETy2A@`e`AN$*dkWbh)7@zdWvFa@(n%Sae#5oobFdllMygO^>^VQ?QnS+GAu2X77j$ zYR4>*S|=lQn!xduC`$2AafZMN`g(6HXSV6R%m~bN z>>#-WMjDfjn@$WBcJH>lL@D`#<36IpbX%W;q5|B{pBeC`^CV{0OAMbaFsHGpe=c5% zb_M4Ur6KVhqlVYvWE@w+26T{eM^~r7(P8JGyS>9NpNKa!2FsR^V0%y!x`ii+wE~^p`i7r{`c5)?Acb>qu zigI5h&sG%|2(0QiGS+ahI_gqrzD3{KyL0nuy`#71++AILJGtuK+1}ZeY_7$H(#Nk5 zICeH$RTxaTqTPCf1WHQ7u!KWo(~kB*70ei|L8rGvzE3nuYY|~3*Sz1!A zG2;0>MM64}cARv^^wI6uiJWU?*?9J_^K{!@Uc+uMDOArL+itjdrg){Y9!3*ynQ7*Q z3f4E#pd!cm)u3B>UnxVk{lZ4QTzCptz!sECKyX(^qd;gkc2{C7Z(gclFUF{sWqWjR zfqF4a0G@C>p$r3_nl?97;+rYW*-<#o%}b57p3O~0gINCdIJHmi6QQzW<}{Wj%B znNZKN%j@1K8OwZqjZCg9Wbv7zWU=0ta!CgCbsAoeH!v#1cegD8=eX3ok^LtWWUF)% zV0x0WRq}X~hBxCaOeyk^tw2s1Y-&?kln(qGZ`JTNyuDbP2OKxUJ|;U}NTR>ns^DsY zC86!IBHf;u?emP(?kL`gYZSao;N<5?1^PMBC97h`sF|13j)r&RJq&T$v`yFW%pK;X z96@*>a7Be&o4xrwclw44Z3%xVKA*s+6nv8DS>{tZ)$nQT zXHl`uz25X;DQF?JxD~f4_zatP$bUYpG~A8@4EwO_;KhOhefHY9g-$pk$niU;v^ z1rG@v7gBUud(`j^Jj}cuavfthW#rk;{c%2Ml5Ag7oHOlqY2GN8%V4OMBlI@~7M2gX z_NL5Su}IX&E^HD7Cx%^InKeBa9I&oE2RR4E2nTS2bYX>g#-AqTbVXl;nN023r1Hqa zB)TH9Eef3VqO+fUhW8hRMyp8&P*pXk;RN5p5J{;{aPr6+d)xgnkc_(dJekTIXu}pv z?$0RFl#-dO%ZtKyCK1jF^U`7=<}_a(DvM>9-Y^-nJY71!sAH)t(12=sPPPm^e6OsF zOas48la$k7_(g$!4PF*Hr*d6i!4c2Ly^Z|qd_k;MK3fHkD)=ki8nUNkFKHc{RD^gg zV|t8F;e~)Z#AzBv!!=M>zOxzUpEiSbJRG&D>8IDwP=9R7g; zM7XL(4ZjsWUBKrm{^~31)%xf`Xe;l+{K5JK2eEMFIF262apPEW2Tr)1G*wv6?|D9- zVj0g_JkY{#ikb5Szhk^y7mplPZ$jfLDefRz51?%v zo%Nf@f90BSbQk4JU~3g3`{R+CwTH01rMk4J5iLqQ65(cli?Rq&R>fN|jvw2VVuVbTbfrSiKP~@rXiUY06RW$J%L}vb-S)_*3spxg9x# zOXQt#?70E@v}>15A&tdOpX(FGVmD*uG}2d+G!`4jt7FX!218zQOw9ydE6@^+bMZzl zYUSceF0^% zs%2hWi`T~IP2iR}7?As)6}bM$<7Isg$}rtYeGcGm={wric>wTi9? zUw%arQn9ZIOdgdiIfMry`w5PAY{51>LcB{9U(J7Gh(&^B1(Di7ls4fsuG)y$cB~<7 zGhbs9eEm5YS*+zd$Eh5w)?pvc;M{X24ia*A6Lh~oD}KdWPvRUrg?2Fy8$=A9;wW^9 zC4Bqtz$Vd!Zqb7+VgOskMM#Rv`5Jv4dc@8Ay%pQ5YWa37;k_RVBydac=IUGcHZ_-f z-@$if_HZR3&rIg(dw7)AoF*Q_WB5LEx=lQcA8=JeJs!dj@grK-izWCme!^@$NQ-`o zpK;qa_*ZpATl%TxFpUGjGdt-?RJ4fJ!jn!n77e@?F;{l1IW d70*j9ruzaHa}~IltH8xv6rU%CJQ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/argument/LootGiveArgument.class b/bin/notifyz/hardcorefactions/games/key/argument/LootGiveArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..0eb73f7404aeb654e1026ee826b093ab44fb2228 GIT binary patch literal 7800 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 m8}}&C^?wzMo>lBW@n#cyO%vD{p-K1@>O;K literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/type/CustomKey.class b/bin/notifyz/hardcorefactions/games/key/type/CustomKey.class new file mode 100644 index 0000000000000000000000000000000000000000..3ec2adccf53da2eebb48ccfcf4aa25f9de0f8b50 GIT binary patch literal 3138 zcmbtWTUQfT7~LlX2EvGlfET1yiy8tL6}*Oei&4Q46)Y5NYlkp|kua0aOi=9oe*Fdg z1HSa3cD0~&tuEiXR)0qSL*HDr`^*eUMDW&!oH=vmyY6p)-^pM9{{9DmKK!5{B(UGK zTw{9SR(wXYr?QrxI-C?R?>&q@^Ym8_`Vf zc}trTsEW!^)~5|q&lKk-b^D4oDKl#zUr=u2&jKNTq!$_TvB< zr4Vv6|lH{Yu3zXM7c|b*sd2Ruj^UYQSmz1AL_JWJ8s4@GsS$~i>8c% zFInk4IH^oGII6`-foj9m=Ny^cX%$JF@c~X7jw{fyHf%D!xRhcs&kAhxBJd7R*|xSI zzeJG2d5KtaJqD3haDi=EmXjhXhLB;k9pe_6&ej@`qL)-$#xSvGXtw5Bw(RsEe$T}~ zaGt2g6^tr)gI!WKy!=(g7~Yg^q~ByNkCP=pK*5B-p=Xpr4##2r1{*?lHm%Q%xLS5L zf^od1;%&Ucim)L{9|U$X+6sag=Dcn)jfHqgh8!EmyDBu9zSO>?+gaV!a-44hSrt<1sR|>vl`&3Y`^j*c*_=dbXb87g) zwc!+J2Mb;vj3qfHuz~JQ+q^-un&Y(!NfsHQ_pI(;&kd!&9(!dgV+Z@7ihp4QLh_>H zu7-Qw1zhX+c9~y8d~S$!HP$R45?jQ&F)kbK@GyiHu1yGYZKhHSRJ5WIo4A5MPmyn% z`9>4if~_>mYn?K_`7zHC&=dO=ZL#}kAHR!N?_<|^)1D=C(ofeS;*02A!l8-Z&~_I` zAE5nb8uMMtSb=SxJJs9w1nxL18ItEjY-SGClpB`8H=S6-sdU$$Xtgif9quj)91GvZ)-Bh)LkO;QkEm0vczeFGR##+!1Z+55Wu^b2U0KLf zjF?~LPo`Qz>;Y0k-DS`+1g$&M({&GS2xGE%O(%%XO}Sgd2US1OP$e+?n8JPn(#u}# zBOnJ6#Ua9R1P5>w{k*S}gs2Qms>GUFo+2s-k|I2T>UqU+R;RRDrU- zl-x;R8W4JjsDhLa43qy9p9K)?(W{0lx`NwSk(bUw+#C6av$Bhc**bVFY5mGnGQ Op&2S^en&qceE%Q$>>y$Q literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/type/ExoKey.class b/bin/notifyz/hardcorefactions/games/key/type/ExoKey.class new file mode 100644 index 0000000000000000000000000000000000000000..d1dc051c3e4471c602f099232eeb88399623c316 GIT binary patch literal 3749 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 G{q=t^H)44J literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/type/KothKey.class b/bin/notifyz/hardcorefactions/games/key/type/KothKey.class new file mode 100644 index 0000000000000000000000000000000000000000..5f904ccd78c712817fbcaf7507f3fb402f23a129 GIT binary patch literal 2338 zcmbtVYg-#d6n+N+8^X}06ln2Md({M6wl`}vMVlM25|SDyl~%<~vLpk^Zrn_$sh58B zH|SsRL(7NYV;}tie)sSAcqUmPp$YbR{IauiX5KUJoO9kYfBya39{_IRsfGat-FBqd zY&_9Rrd!B6uC;0ArEu(;UNkFKP2aW}x@=S}eaVrfC99#q$8hx(KuNn`x$%-!lZ0Xz zz9VcQKVldRh1VE-ai?JUF+zV!nbpMr1~JMp1kNxON^O}trd~GfqP`+sVHYDtcum7G zhTDA)u1irCQV?Td?^w2U+=gyQs}ie=G7%X;5aSw7Fr0MUqMoa7Zwsj}o6>THS>`y2 z38EIuJYbki_1F;!U<^}=;VFjGp`Kg9Ya^J(>l$8TxX|IlvhyX=mK9=E(~}1ijyLco z1CM62nFkw*=yG%+$#ALDcRwi6c?;(>oINUmi(W?Oy^P)~*NejDIFAbqBSlNL4GcFz z;Z)zi_V&^uaEaq>yu%PAUvbCY6veu0s^Vd|d6dh8Ty>$yXBh8lm^rGz`d~RO;|e90 zm~=!qB`QKPgu3$8H>P1jC0XaVifas-w~rzBYH;I-ARe&pS)CD8I5#+nlIkJQu7`Oe zn^fjo9Pcahv9{Sr&l_oDwYBsC$A>LM;(j(7Gg8Ltx`sQHkHh-WK*Bq9*y>3mfH~Y% zl|4Ly7!n%d3=y_~^P8Lnid-<$eDn&3>#C57qF_#+=9Mz(*XP;|qq-f~Zx?W+P2a zmm%F5u>DK+mFRy}mpW*J<13g9LpjwD8O~D(I+EO7mMhZCZ&N@R@*D*aqtTir>(#93 z3Q5iUVwWO%VOtHm$Z+Q9GgMm^99ymK8#S^4Y+_0oD;%~mjwOufaweVFh@~>|CAC~t zrTR6)bQgzzJGpu(7>=ieZKdm#oaL^n0%90XIeD|ZM*P*>Gx}sn)EKVyZ+^Ysz(~7& zDpAy3^&E7C@<0qqPYsSIN;N|Z*<>=!aDqBi%yrB{-mFRWKoJ3Y5+9Q8SIAr5niq;M z_nzBXRi-#cnHZ!;8}ubt7^bgAv%l!eX#9C*+#ej?Lty3w#@2Und=HbmIQ=WmG;xuB zng}&9yNm0-*6?0?xIIiW-|vX555Bc9k@vcmiDkccrYyo@9x0~Zjj|U(HnqE-zg#vdT9NaKm(Kbkt{z!M~$q!eGN#| zX~wXF$KDlZX;fGA?c$qfG`4-I007rJu)cllxA@M(UiPp9zF!U@Z*?FC_L1MWcKz@V DxpkEN literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/key/type/LegendKey.class b/bin/notifyz/hardcorefactions/games/key/type/LegendKey.class new file mode 100644 index 0000000000000000000000000000000000000000..95428da200dfc345a1bf400f821d30fb4f192141 GIT binary patch literal 3429 zcmbVOX?qh@6n<|BO&czf77C~cT0vV>Mg`a6k|slmoh&9Pg(}8rGEIjjlQ@}x#eLuR zecyLftePUYfAsOA|3Li(e)sX5ByEz~@StC2IrpA(-m{-y{yzFWfNl8MjW&S`th{4R zOdnJxbvvEP+s1^Ra?HF{R5E(bC@NFNwBk$`3`H|ChLs*RrrmG}oPPprs+Bfu|D;iL zh)bY-yJ?xul>$rp`gaMq{Q0!eflfN8iuPa$mPssy6j;ZrO5CwcD>D%6 z-{rTny=sVVinZVkK4y zEK|b)HI|I3zL+M^qb+iCz=P#j&3M)boZPqQ6@ugeol2a7Q%P#ka7u-kZkrC-yRnI9 z5u|JpqdiSxJ%f@%5iOvGlfGzFQ(61zto;muQ<@~rnKBTJvq#PpxU^+3N{*Q|9h2hN ztbed%W+^zVeUrpltbIiw=nF-{fn+r3ANK7g0KMpA0Q~}M7YD%b&%t?aoGWlvr7ef`}!MAYIb`iK}o0= z+a<23B;uUc$>U7FO5$p!FQ22wqrO1pWKhE2d@>q|1sI?zv4a760=|%MNKN`Q&4Zn| z#*LtW($e;wwSwPKEBI)(lrb%dVNgkQW(=oF5ZFp4{YNPjv7HD@L=YA5k}QATnlLjZ zTj$;)uq*@99)!HKAC6sd$* z>$pUUwYCqcK7S<4Btv3?Ny|c!L8>O-XjqN8F)6TSVdtzBy9XKU?ZgyvZe#^kH59CW zQl|)I^R|SAJSFo`OjX0wh8t6P{t^WugPSC56bX@DD9~IGIIpo~N5=OVDQBSnUtPS0 zWuOBkD&=@VKVTU)%R9jGZeAd!*7;kDVa|gRx8PQR4kur|PqtBdE%ZXAiQF!62ks=N zrOjd?t51h%#tDQQq0j3)fq*tw_nd9)B87W(z za1>5Jh1Kc>JvC`4seCTS1D=QLR>d)Hc9hY)ogSfUMTw{IG!284UN9X!YaTRql(Jcx zW@jzxqeY$kti*Hd4>d$r#V*F6u~wc3w}X^kSto5enMj#;6I#Nnpy@VKV5G z<~PJGoEA8PHlro9X@Z{AQqWFMH_(=0y zBQ%3R8Q0dNH*irpvf(o_-h6XK-&B4PUs0ER8bWvYsSWh>lY7odhxQZ+FGD?b}V^uRW`vt>tqB-D} z7lKVM1iQME*NoKkK7)VF%!y8PlO=Tq(T1K70=UI6m`H!%AGxA)Bd=s^OEdCxB!Jrt zFRrhBOX%hL?Stq=ShDmpthCVG5QxT1k%}NlUkG<_m!X^Ia&=^e?G|{~%%OYR$c=8h zBaZF5rXYq8mACB-V3gt2^<#HA??H?p+C?F_7eYHa0vKo5xB;xN*LZnd==|hDYaG!4 z?%xP+&ny$3?O396fj5aLLvLC$#Ew(S3TuyNb-@r$n=04$xur?poAlcSt-`R>ypo$$ z1T{k0Eoz3v=BJzV0YjH*c>T+8lt`OaUdcMeqGl`g{`QtL!pI3L)nZ5LYSX;GIyHSL zbGQ(~9Oh-uEzkujE;hq>3v`d4A>avP7-_Mc9*B0GXN4{Uex;eI=ed=qfcO7LAwy5b z=4x@9m%Z!+Gp1vyVpEg(>uYStc?pd;6=WN|z{Dl1k}MzDRQ5D>k@tmWee~T*hJ#gv zlE2V29=ds5m{WPfuR9?&>OETG4rgE}pY z2>HWM5Jie&{2HT3xT`KVrjaC%RA2_Pq>RZFcnUw0!ggAVMf~Sq5l((bY-V;Y;y;7( z&VQP8?J5>eX-gX z`0LpxXY|D<#|Q0P34EcT zMPQ_0d)DIJdwSMz7Sgt3E*fdivJ0-BG4iIXFWFvJH=Iloc;B2raLisXL+IdFmbr$|DR5xUGM6>E)Qpr}^0chItW8eOP8@T! zW!qV5M*!PZDCibA7ERtXZX0^eC}i{*&#?-bME#$>xor>#t7t`=f?Wc;w;noEvT_Ti z6GE@Ro@{zCUg0e+Ns3pC5^u*&JSU+e0zD0&`{vpSv{%JGJTIVROmB*%71$N+tB*=L zJD@_tK@w>ci)LX#V4#uLy0evV6VknbGFSPkZ(;(5$jVjM$Pnr1 zQzgqR2XS1%O9I_n>!#vmoFLP;jajHtOY}z+4s^B#H zrv`p3Yj|UJ&URFs!5DX589yt~TZ_N3#cz;tnfSRatu>vxX{NnIJy%sGLYNTP5sSq% zIrExSB8{sKTtrgAq<~fvQ$tErT#|Fr;gXuychk~DPv&J0WK~$Q z(!ujrMz2ZdODYBs4dHV5|xOr~IhdT=OB^ zrfloHgEUtP?66cisa7NO=qs>QShStIA>CAj*zjdIPPvjbHF;|ss%^W5UBHP~DhAHp z6Si|>kix;D?rbm}tXox81THpLp=Z1X3EDa18R?}Rlg!tUXm5Cr)_&yQ~w};h7=!*3}Wb7p1=kG5+aYcZPnv$Q9lCpn_oR zlnUf5Ly(Y~1nJg)hfbV+f^=(ToZJNbnS0jJ+ISL()F5aZ2pUcyO1r>o7~+#jiLV)5 zh$mM1CB!2ne#J-`XT#^$Gg-xj7Q}wTjxwfJF)J|C_5*H2+Ey_y@HYZOt&!H)_n3^d zmht|O5>fs^SARrVMY;vw;KZiW44p<=2g6Z5@#wT&4-enZwY+6_TA%0 z!=;*dfou{<2Xb?IgDGR`T^fx()Ja1|433K@e`~m6W*X@ z1yTTH4y$YHLgBL2YT(C?U~S?cLhL+WWrmyY@bme&3tf>~7dl{MDbo&3kX&`_BLO z|K8(~C+~j{z*HG7F|1T3G@&K+OlZ<_5+Ti=$R_oa zlL>93X`gK6G3#^Uq(e`N}$4Kg-am!9>PN++B^dXw}$f={-wB5Hk zZW<}WX%|@3*fcCq*=ddGKGc$=L@QYsz+x;>P$#hFe+yJmkEH^BYka%rkOJ~yQ=@B$ zsih`DgN|*aCfb_L#x_3$&Q+nnC$Knbr1ZXQa#Xj6v{6$RsE=B4%^cQjgXi92^=8kN z^^H$Ca!tcNTtM!pD6u}Q5?DEG==+0CLJ#s%FcVMcV_8!l3vTNl>J4BKE>dwmf&!P7 z@vw}~!|c!+6;-HKuvXwa8P1}xbYu;4Ot*cwRA5CSKHlOXq=n(vl80YQ02iZ?RX0(5 z%BXG{4v?aCDlW$r0?LH$^bv>!mNj}|FH+gY!a^#p#8m`4EuGd=V**!{lX{v*p1D%Q z)hgDrHlJg;DP~`vu3{rL2?Wx*ois8TDk#p|e76aNl}^IQ2wcB#($1<58P4SHj*K=z z{$6@kUXc0ixL(0^0(J8(QxQf7g>au{X7&DY4tM7QG3??Pb`xmI?Z`)pO3Ktmb(0Gu z!e&#Zco>UP- zpTLrM*0zb@m?C0^X>v-46Sgu&wlm-Yehgqp!61RD$mGt1=5$)7Wvkc$W{@rY(Jq1I z#YWHVk#KniM{CzSp!JXL(c?~@8;U@h51$V=3alEUg3RdlKHUy7w*`$%(6igj1=+x7 zsdzS8tvcd$8#{MKqDqvkW32<&7;gbqRgm>gUVuQS9sS*Y^ZmncVHwI=^F{h zw#Uc^>86&}h#zG3xNS)5CH3}b8Hah-&zRG=KevplB4z#j6*<#ER0)-pJ( zfr*rYq(HDJJ7oc-!eaWU$q>9^dWH)ofW62lumwU3#;JVMQQ;s<@S)P{-beTu^q7)F z^$_PQD9x?uLhSPlYlkAGa@uOJA2|g#33UAb(o`J4a|O;JbMuzQv^3eD=SQ|EL`$Uh zAYP#0`2w|)8uA}h+>93zFBqBbWZKEeD%s7@d$Ed_F!UA;ba(miG6Dyo)s`3~yMtOP zsB?hkdP$HH8q~(AQ3g}i{uYMnD^$D^uOjmXy9b852S#@H_jQj%sGL0Fl%U#erS!-c zf$0!ltKc>HULwEAzL@XyDh}gyWDiL%R9mr#;!a$0Qab+z6}RAx#HwVpog37h`B9=J z+ITD8qTtOXQKAnjZo}<#)*$yZ$09T=FNtu(TPFc;!`l_yK|U73od2rg0=#2>^YW-d z!8@rc3uh>2YrEOf8XUp9RJ@x{R#Tq0={b(odsQ66`()z69CU#uuSdv`#1poavO=Bm zPiZiiJ`dsjDn5YYZj*^wDJMbN^DapVai58-YFcTpFYw#iR!>4t{rDlzEfOkKr2 zm?Ez1*%6IW+i)4X>`sz*AEp(Y$TPQup|p>roWu+{)ZMow8X4@JLrKvVLdpI3u!0BZ z7F94uTB_nBc+jncE+dmRwVZoX=qQfLe8atdQ>>v37jd{AR`F4MOhBa!bZNQ%@twLp zNmwlj+1v*iwoj<|B!{JHu(y9;D1cA1<)6tXS%zos02kaNDn7>r=kE#+Y#RyRup`W= z|ALAya_adqFwDI>fG^?83LX4_DNYtO^R#7aCgIE-gyV6dcgrr*R%PA&O2w}w zmnF0eKWTjUtw8gcS!=9_vZ%hehj1;eDem`WyAIvY6z>B=e&HrX8!PF)OZShZW$rSh zGwEGV#8z%%UcZqnzSylK2~Xy5frg^mDy?e5nItx9sHLY|7NN6sdD(eFC8#C2^4&u5 z?I%RLL%Qu0zejTE{F`KRsc3I1pyRYcp)7DNFbd(-6{d$H^unp9vp{Z`9QD{!7%0nN@wgLh0P zF%`6aNpt;*`jsbfVe`5ZSl#>pF5Xpt$w^$+JPrE4Wg1UAfei(b^>hqaMHXC$T3m#+ z2uktGU17Ket@NG5N}B~KYr|$wpA4-_zWT&tJbleljxtq4b#|Jzne5o;h8j?!pQQfY3Oo+ zztxeSo#g5)CM(cm}v;i;;jM?<4CK&!9Rd%sD7V~))(>{Yor4L_agT5h$-{K9mG?YPQLEoLm58a6>cd&^1 zpUB}d{{A!G+*A~R%HwSGF9mKt)m6|eo&F8&&Bv+oIOVAl4746Bq2DHoelunJa(W}R zU)5roAUI%J*?K;;bP^Gu`P z;rEnZUi$<7$Oxhl=boyAMt{QNWJQ(G@MrvmEZ8bm;;;A{)k=;|9>(7ZtGD7#`~&}_ zsyT`~@Gn}cAscSSze$QpmZb3?8r9+n@`91<%6O7wxF=7+FNGrFnG84N&Jc z=bmm(_uh2Q&CQKHnA0MK>U6r7n|p8W>E18r-Y<0zC;Od~q)i}o*gw*H&*S^P-|u{{ zb02y3-Uk4z7nf^r2y9KIZEJY^YJc3w#G>hpIc!92E1k;vM~tMI^^d0QxZlW(aZR%)b8U~UHuwT+ZLXe4r`3vPkhSVOGA z*WD0r@FkNC$p(Sy?(UwRc7f%23AU9q{ln=@(y;xVhHXap-lbk`Geeoqu|#gfN(rnD z%?hczz*Sd)tDR~KH@h}R6IRNyw+PH>Y#J1(>PW|ESUt^%w-T@iXJL_sg#ybIp69ei z$JsbXz?~l6Y1p)mMr~|7ork6~0p^ClVjUjTkfV^5GJA8$eP$+N>`R!E-E`DQ3>q0r zz840an+s6ZH$HDFng(6)k&kS_S6o;ouyoKe5Blu5=_?NVco4oFeUWaTkug(7)`K}% zu44&S2sBiHS^@l^MAo1~$6O6f0(GbQi3_WE4pwS7?ZRpSVY%SvfMi~7U900FtP{|T zgk@yStiXaRPgkSiVu7fQC1PgAg-b|oJUZM`aOxHrH7&)cY4Kn^Hc3>i0t+jk zY8v#=kj*+S1sz8lG3{Q)p1@g+g`+L?dMWI39qrgkUp2`C8%4V4dBvWyVtaQ%q181BmWP}jiK-L%`yp?BUG_7q! zuZ}+KBsT|Sp!W?+9y?|sr(cp27C5iciXsJ!$Aq!ZOvva;6*7>(aAPQ)8S(GSjgDHj zznGy4(_u2r4DlQ*+D>DF5_Yhv!Kq$lnk`L#KD=F{2c%O#biUmiVrLvDw-jCY}DA2nt6byGy2W80;#?1%u zAq{u17|)oaEYC1Jv*R9oRL95g@seQOWtyW* z4P}(6D3%k7womA|Q_@l$?(XZ4cyO1r{O;l*D|)6kxN#K6G~7eyD9NN9al`INC(;=m zlQ>RE+xi0mHg$_ilj-y#Dm{uR9rwzmRqa;{w7c*r0f)~g3)cfOy?=TpPpR5i@V(P9 z7xTSzzK3*tMmnD?L8@W&;B)wbhR?Gzk;WQh2D=rN_GSO81n){`VgoV(>v$OSiP|We zSevcF)n->Nkr;R3OSG)jCr$pcj;~0QokM|8sBf2a&adhCx=f98sZw#Ij#$F@riAe= zS*3!rTP>wNs^dFS>YV;SrwiYcJT%HK@&`J8h{vcc?+XH(N*%;DlVjj{P!0|Mul#8QRjs*e0##~<)VdPgor#s%7+6HvkBmHSOgETWYrv^8z_ z;LrH0hQA1`neBk{?weyyWV6$y?g54K{u}tSy&*u((R{L`3juY;7L5K;VFuk zNux5&>-Z=BMRtuC`?j)fu;|3QWeWa}j%V;+W|6p&?N!;97YfciiIcj3nz6Ehx-GgZ2My^HKJN*ns5sEN{)BF zY<+s@K5X0E!XtD|@D{Od)*39+Q2xdjW#Id_s&*>Rs+cSL%Z1@ce|vCScVurU$i}5J z(A7Q=inv6rfH!Pr4wxCAJQtsp^+j_T-VE%-xb#IaUl;Y#7pr%52O|NpAI9nIz2rr4V)2g%zG&YuYVMUfJjA>XW$vKa(#S&Q{OV<=GoxIqH^97peD!wGI z%RYIr@EQBkIor2`w^CnvSlw{CtwiENUoLCmrXgN}g7Q=gcQe(f)aJL!qf>2)oR6murc~2J z(RC&B(v7LKTJ<43&626`@eo>3iw;Sn+PUxm;)ARRwc7@cg>c3)B{xR`?d6&`LCg{iiP5TCOGE$2?zM zbHla~9VId9TCEAHUp)I^@}R3C4UmQ4> zzfuU;n4YIbz_%rML1EjqRN~z5wK1Nnh0S_YkX2so&N-SsB0A!)%hlI#f;LsxTX}_suB&pX$?L^6n23D4CXad z4bwu>zTr<1Rliot!}S-3U8Fpds=I}HB!)xH{(%n4FxWA#y02+^{PAIJdB6r&|4?)&I#N) zi4U~SmG2*!z!CNS$<}!b^;_Vcz{FuVCvc***6UJ4-$(G?+DY6m6+I{wHJ-p{$wvJb z`7?n>kv9LjJeFEhn8`*A$)=xEV`VNdu1yF#)M!fp8Qyh$;uFjz}tI z@X}^-#i1Fz3yL)tPS+$A!~=N1TwazfNeLp^-VW2DF#z;d@5o`6>>lTh<0>skm{ zqLId}^16sZED)fFPl-hi61#XxoXeSMNYb1I;sw(x>--e3ny(84-LRt6vc2U{s*ccE zt5hKFXAA>t7#?dGx9b>&>lq*yqXQfGedH1hVI!j01PiT5@N3dF*n%5y8E(bpqM2W? z_}NEnK|t(Am$(W+k;Zm$9oyR5&?BBkuVX&?96i|Su+Xmp;t1wTS1$&HV^k~?7cdYw zCYFm8GSoOLgM=A}V=HMBvx*}MLo_f@Y8_XJM$yFiC5~RvELJfWt#ky$g<>@^bl`E( zBK&aE_Q%8;?x>;l4~w-aQ}IBq0{H{oq_1JaL+25COX7s^?NA~3{2dD7nnohGN=205SylS literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/koth/arguments/KothSetCapDelayArgument.class b/bin/notifyz/hardcorefactions/games/koth/arguments/KothSetCapDelayArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..52f39fc2d5907c7621a4d4ae77eec4e16354debe GIT binary patch literal 6084 zcmc&&d3+pY8GgQGli6$r8Umy)EoFd~CTYpEwNOY(pv^%OlBPCkYf=;^yOU&^-I;ZE zHX1zeCtfI84?I8=MGz5GK$^B(f)|Q-pLpYecq`s=`Fu08-A%F^(!Xqfzw9?N@Asb1 zdwkzR&)jt%fQ@2_f(n5y+wrWi=}Ywq!%Zd}*Bmnvp5@qCecVW!S$)#+CUnCc&!tV< z%jy^LanSTSj7+DQGN!kL9~49cwv}a-^Q@HRS!8EqEL}eN4+$roHteL{(-AE4+ytsK zsoc0_3#{)e%XC|)aCfNi4u4A*7OoaCMivg z;uwMDv^}eN6Q;)3n*UyN#xz5_Xkcht43$`-LP4Ft>c+l(#+0F_40~K3^jymxZ=3(7 zX?G0->Qz*sTEPhdb#pgG(IBuSP{Yf)rY}-%dY+0nP7+Xzlx1YitibVm=L=AqO$dUPQpm-He5?Shc6@Eghh{DSROt{lN^*A zrE_*=jd2P*V^KEK*yC}IigVFQ*G?I!oH;Ni!_ZO2x0|JJ&m%%hQRF=s#rXma+GZJN z8LM_}GjZ%^GSj6hWsI6Bff~mS6H;KTvCnbG_0inqq~+=PgbhCrGKi+zwg5#5%$GoE z(})ahr-WLUKxLy$iwn`CU>m_yB)((9@H(87)k%AbYvDcKbjH-P(^=0<`+X<0K8kUHQ->x@*VL@6 zMjm1P)eP6P4b3L7liKPiEP;yEEj4ufq>2>M0_xz7EgfB#^bYiF@7gJ_q0crwJ+wC1&c;)!pTez zjO}FMr-{vt#dr^)*VEHf;%y8$yiCEAz`CPVOU27E&BnElO3L0-g8O{9)0S7@RSI57 zN0bdjA#QS&)qC00cFC2BSK~6)jEv!CX=lm)&|CFv_%DjfX;zQTLS`kkWX?6@jImbB zWzC?QIr8{0tuZ~Hp5;Y^s%!SQTs}`HHxWboH#J1)+EXE(l ztqN`-mShPwGDcz|pQhPh*7B^hsdt6|>-OOk;`I~wB!{E`VR?c*j+>+xmNxc|jFbo^ z)t4n)mfF*byG+TV&o-}wAJ~Q$ASYpjLl)&K;jqo7@Emo#0Og>5GT`|v5)i#CJF=&T z6;fc+bFeE@TB%uWh|?g+wwC9!NO+RvF@v6wnCv$){&c0_J~pnhsP`Mt9BawKvAMa! zNoP`~M~LSZk(vudVE$}aTr$IXJp_bQM(?w-9!;qkw8m{iVprgb|A!8n=WE{1D)xDN zQNb5jhW%0B*O-G+iX~MZmH}Nf*X`ai;Kw#M{)q=P32qnjcdY)Xr zqvE^x9&^Yur6t-d^0A!l+pO>4S;h*yQirE`65<4nzv2lJK3j(;=A32ov_*!6uj)i)4EN&nB~_xzKRz5) z^)GQ!YpW9qb?LD=l6RzxEbl)QQ7f=&UKmRSLlL~mS+OuF(<6u+PGw40vh1*C%4-^~ zs<>7V<=+}UP4T&czZ;tCWA*Am9NWC+0FG;p+>7IfE9*}jJb1m{BJ&YJRckRL^-||Z2Iy{8tO1i z4JFkoDX30AgiVyShJxy}8MK8$>)Qj#w~;UqTg~m@?M*?p#0+Cyr@5FI4cwsye*>D&y zu0U&5yy^iYuff_m+sC*~Qt_vLVit=#urD5|qR>OIXW$*erJJf7s!zacuDS-=94@b& zwKHCIKa#D{cytD@YpsdbJP3U@eLPAxy@`858?Kzay=De)yBa4pRL8lx>Z)rIi`O(% z&)|K*&$R_+*GUgt?=!lA%Obx1mz$1!X{e4w4&mk_&vh*f5djgpivg+hF=6vc1ZX1C zn)!bXuf1B(&X9ETYnmZ*82`($30LAA+{AmLo3R_UF1m9!YI!BF5+iiluy6LpKuX?hwC2s`Dm0s`&}^;( zv!ywe5VdtNSrda4;XR~G8P{~sI+9FG71 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/koth/arguments/KothTopCapturesArgument.class b/bin/notifyz/hardcorefactions/games/koth/arguments/KothTopCapturesArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..96cbbb2c59ca8700714f65fa5b0e7bb011b424bd GIT binary patch literal 8210 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/skygear/SkyGearCommand.class b/bin/notifyz/hardcorefactions/games/skygear/SkyGearCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f5dfa6c3699da9473480d912d91412e7946b17d9 GIT binary patch literal 3435 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Úhj&TKig|D6LiWg18OxMATdgobebB|WGc|VxvpW$4V;;RR)G?#2Gmft^@M5>7Gg1)u>=Y| z`_5t+E@C;ZU?o1oDjW4q2bqhSFycuVHWOE2!Xln(NxgaUt)y6&aSrDZpznnuJNVOO zXY6k5T;P;kyc-YCaEnXRc$hQvbqEpkHI#IO(p`&2tV4<#%m6k(qu1gEZ1lk%^I(s8 zu*W>uqj=theFiVMuwN{~{&%8ysU(V5`S3E~n}EG~S5ep&_d*n#3H=sgrjbO^M4}K0 z;Z_pGHWI}S62(p*J6An+W){Vpo+#dO*|}0=2YpZS~Gn z7x#>UJp^$tQLqnD#OV>aAE)T`Jct7X=O8X2;iF*OqhQ<<$haqv^Z3T4z`(aI1>en$ wg75zq3R(!_5u%`#C}<-J+KGZkh=QX8r-LZyoC5_vdKCQRQgDqbumV5-1FdN*ng9R* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/skygear/listeners/SkyGearListener.class b/bin/notifyz/hardcorefactions/games/skygear/listeners/SkyGearListener.class new file mode 100644 index 0000000000000000000000000000000000000000..f391570616cc3eba679949cf2cb989613487d388 GIT binary patch literal 7371 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/EventTimer$1.class b/bin/notifyz/hardcorefactions/games/utilities/EventTimer$1.class new file mode 100644 index 0000000000000000000000000000000000000000..3b92c694e000d4bd545f02f685696d0db72a2379 GIT binary patch literal 3636 zcmbVPS$7mg6#goiq?6E)5EhAofJ8~cG9VBjLjoiuFpvOdLKGCGGgFyqGSiJcJ%MrG zcid4yQI0RZ$~h8=4<3B+fpdJ8pW!bMzv}L+rbo;}I#svo-uuW5HOp9SL@8UhP-RG?C=YISI+szEsx z>!?P(KzWn8TH9+{@@OG9B%J}@X7#;x(#Q@Pj;ZzmF`^79urnM^_!}Cx(hlWL!Ky(6 z9?)>Vz_xjKL&r+25~wngNtySYYR}K4&Eb!5rICxe#d9*6FXmmD^W!dXYODsUu~x$x zf!0v`B_-&12M|rY3<{Qwc<~&FX=hWG1ACv0lR?bWJFv(js&;p_y?oiODgN zBhnGr|G!}QTtS}to7e(uz$OhF1={Z&+#G^*Y(|t(?V8CEfphco`h1<^k;gKQr61 z&kJm7`nQPbQfF{_!n<@FK)0U_2aMve;gix}*s(0dmF|N&4yj{}kPq1fN6`-JIHG9P zr1hCr!IjE4eL9Zfn80FEz062V^aFvOQg)u57*l;DK2r`O`7tCk^b2%`TK=A;=@`HX zfkny}0n$F>9Pv-MLHRIB64gGAlNz32A@_VRaiHTAo@6OxPjre2>CWaQiM*%rjE1LY z@bW;%85ra>UCCgyY4PPV^u_}^1tcLgqy*}xluw-M7)F{YX~_%JJ{dq+!%9bw4V{%q zH>Sa4z)i98L5p`E;l>|nbi9IBCo4(b&dP+eQpz+NXqsu)lXfm= zSg9y0hq~3}Z~e>E(16!6Xy zg%jDFQniX&gV~Z*{6AX3Y`-u=W{yPc+QC@VIhXQ1q3`hzrpHK!LYi>da+w~1(3%8a znv^}JnqX`FUe6~un^o{Cij~aTc{;66x*0pA#<{OmM+tw{+}$ar=081dS<>ms8u`5B zfLGyVDAsUdEa#wJR#&G6NT9A>jgN}LziQO*d;wRxxmWjUTQ=N)-m>uq7Pb70y6fJ> zCHz+MA`rt;esynMi)C2O9s3IEeKF!M3aKXTPRmcwZ(_yoSR1Uy@ZcC4)g~Z}qoo|z zxmh%ZEn{fCi9Nj=#?aZ$PfrIw@z#ic+B=Tp0^{H#$MKXvTjdY18!E>!BybCvwu**| zahz4__BL&0gGM3OaCDVg^jt&tvWQy6zXREJ`4V%A<5|Vwj$^b8ZB-3bzhU)dtWe+@ zs%~NRO}sFM*Dfojg-X|30$1){RQ8BK*`pJ6{C3cQd$FGVvxz;h72UK@4|fOoJ%k(% zqsT^g3BC9V$MGYZ&u#SM51##r6P_*mJ!jkrY}tzM$^9O!8N*e)j}PdUedN8!RXJsT ziVwMpQ1TgkgpcXcB74v$WSEFL`GNqQ|OMc6U@iPBMSeLHg8?Nd}%dqQR^?tOF0Q>{e C)jC@M literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/EventTimer.class b/bin/notifyz/hardcorefactions/games/utilities/EventTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..b5e540f6036704e2eec6feceeee9876771dfd34f GIT binary patch literal 16189 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 A9{>OV literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/MoreObjects$ToStringHelper$ValueHolder.class b/bin/notifyz/hardcorefactions/games/utilities/MoreObjects$ToStringHelper$ValueHolder.class new file mode 100644 index 0000000000000000000000000000000000000000..2c42a62e9401393ddabcea267220c5ddfee59399 GIT binary patch literal 826 zcmb_a%TB{E5FDpz18sp)-p>cD;`^!=rkPgTakvD zl}cJkt5YJ+dp9Ds=~g$nv_|T|u~2uyY(-pU;y6)#VFLIJwHrR@yUHPXC)6>4@~TxVH=!oiR5`)};ffr9EUQG@228sh#vi83oK#Q9+eqrX#gD z%WiwZba_wZ9VRhX5jWE1Uq#8LB5* z3)5CSO+^}Dg`qu$;|j3G(E5)N!}RYFVW|8V6711$6=(|GTSSQ>5MUz5Nt6jadgu~p z-xOsbAtNmAykPn{r)v~TdGQIew02vaS>4HrtYD5RPP|R%IgZ5he~TUMVIhx;SR$-b PzKm6@V}<0)*ud&1%dFqC literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/MoreObjects$ToStringHelper.class b/bin/notifyz/hardcorefactions/games/utilities/MoreObjects$ToStringHelper.class new file mode 100644 index 0000000000000000000000000000000000000000..b2770af90a497111cafec4f6e368c5e78768843e GIT binary patch literal 5870 zcmb`L`*Rc57018VlC_rDfGYxyFewBRuw)Ar8fa@n5-sncotJ$Ki#jMg(uXPIGleIK85?z!il zbFTjN-@pDHz+?EMfhL8%V#&#$zw$z6)+*<+rLukA$~yT{v67jw=Iu(R>f{S~C(o~8 zcAlBOU}v4m-tp3yQ_dG>`t8DkT{aL_XuV)vvN8p$IFoTlDMYgct5O*uM=;65HDTg23Zc&Agn_LJX9CtYhB&r~knIZNoq<~;IT3}zLnaKg z$kz@NQTJ=7i5ND;@LB9OuuEZYwltraDV1glc7~txrDA5wa-K|A_`lE@^0(I*c4qV3$x}gCi~jOdXEGpC$jZ^D=jzSjxqYKGf|9vsv|4oX^Y%o( zlBbEzT4f$R$1Wc)(o-$HYYOdJ{$j?eHD=^Yh)sKA+<=274k69M%LTaSh-aXv&v5f4 zIb7?{vbUiMQ$9=Q{gF5pZihhzY2rF zsql=bFe)k#>Zih>LJQB4PB;pa^+%)@90SNA`rw|EgZr#PznqI8pn?kM;0P+910bk? z99d8SIi#QhaxA)xBS7I96hPq+b`{JM@Hg0lrUi^r-Dr%SG*qy)DQpun=G{ zZ@U+NqMDbYEQTCrq#BuJ{HK{Fq~U^zIk1$9SPKhwkqItc@6uj^Yt-07(oJ(H3ZkU2 zQ+#U!*}YMgLKjVx(IUymUUa0vFUd;{NPddXLgm&?`_UFJ>2@NIm@z^kjZiWI{c-Ouvp zyLgS|PtLX%R;yu!{hiO%t*Lgz*JODnl8ko4#Orv2wk+7i8HZM8VL2cjH%)vGZ!rT` zs?!x+W-Dy(9Po>BV$gTQpzq$Z6&s4K--_>>cphIPe0^a&Rvn5C20WtlUy}&}k zDV1rRY1cOt5_QXT*R%>&*rZeRYVEM8r0)!#Rk!-shchg(xyzx{F~`cz4OJe4D)@GCh}5Ag0YR;re>_UXLTwykxSs{`UK^sIqm z(JpJ>v?~UFr|{VS6V!R_S#?kMvPNs`7~t*?4pOBM?}K3;Cl=oPYLW|re)D>u-@F{~ zy^TH8oZ~n1uZx_~#CI}v7h6&vBR;9_;=v`frBZj$wuD3~w1oCl*9so~2RfGU=wCEy zKc73am?Qxyw4w_Sp&Jh)jZPfke_*={Mw0#VFR2ydb&a=_E>HYnj$s6YkqV2LKl8H* z0*~p*2RY@ChMDd#52h$8%@GGUGAimTWcZW?ouV1U5Jsx2`z}7WMvQ2}5l!3e4ymbT zNc{06Fg9tWx^aXpg6#K@u~gU26@0;m+EYi3)u^!=HO7dy$)ooAQjhvjAHNUk6CU-+ z8a2!fq5V=_ohvx*Lp^aH)RP|dRE_EymDIf}IPF6{eIL{Tk2=^$rCp!)p$^^$b;P5d zsZnbd*u8?YKGc!>ppI$kIG*KOyvz{4UG=dZHj39pQeAg3aj%PwYP{?Hk(x6^B+ZWa&xS{rk#Bu*8S^6&SMOk< zCwv==iSQj%dYapBp(WA$39NKChnSEYmLFDtoT+`4Vp8WxUPO z>wV7o2(N1Ujk?zG+_o9N#Sa(+S=-^)_#rLVLT=&^-S-Yn@GkS28Wk*E0I$I>~W8?0r&iQSt{|_=k0iZmUUe zt7Wz}y;)715!ZTzTDdCx(lh-&3YK;1K>5*H>EPztq-IMXZK6xa^EQ6Ncbs2}?(%y& LK%8HHz>fa`=-7Cy literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/MoreObjects.class b/bin/notifyz/hardcorefactions/games/utilities/MoreObjects.class new file mode 100644 index 0000000000000000000000000000000000000000..4bb94a38744ac8bd6e355a7ce2b360fa6f8676d8 GIT binary patch literal 2139 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 ZNn6QPZ48Y@suUy)f<_4fsSOpl{vWCYK+gaG literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/capturezone/EventCapture.class b/bin/notifyz/hardcorefactions/games/utilities/capturezone/EventCapture.class new file mode 100644 index 0000000000000000000000000000000000000000..e531c163a723f694627eba12bdb4c1c259300bc5 GIT binary patch literal 1812 zcmc&!TTc^F5dKcDwyfojR=E@eY?sTb_+lU=guqjS#*)4-?V%h}cFFdX1Rnhn{sf;j zu`%(%AK;HN&g`jx+a)2s__8x+&Y5p!zM0vdzrOzf@EWhONC@nBzE;PVSI&tWG#h>( zkKKk=zSnVD?wRa3U9H+mE7BV7x$Xw?%J-zRcOgB!YYbVW1V&EX3)gA8UdwrVbSfKK zAmtH&z*zO>s-^?wwKfHEk^v4c&*{ON>b+CYZ)dta8-Hopi2(Hp-Ul|OTXc^>u#X< z+&8B5iJ~fZ@6O@Aour&Tln1N7KX9Z!F;D}u5Fvk)nfUmhlZc&wN<9aG84GD-Sevtu z#RJynE#!>tnT5R3mMjdx5}5kCV>Gq>u4P+N^Lz?Slq-Wo30U+XTr;yJoAm16_asMP z@A}J8AbsB~xmg=Fn9KgcjQz>z_R1^|7-MM?$k+UC(2)CzCwBDqpJJW6k9ndjNq?X; z63iuO31%{s#A7Il#ZVH5bo(&W3m7JuA@32AS(3CR^c|?J$Rh9@W%_dQ4oSvJ+g~yLnG{nzGX>1V7G8lJ<2)O6o{x22iH*DvbzX{fUX67w fMV%|L&TCk|?w2!A`(hMiEe0fk7a>D0Z%@;2UjCeT literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler.class b/bin/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler.class new file mode 100644 index 0000000000000000000000000000000000000000..71d1da25c3ca63ddac8431e3f009a0c5e0b49aad GIT binary patch literal 3436 zcmbVOYjYdb8Geo}X=QnhZ6!`n5JZqTv7H7b0Sv@(f@2e+qBsVpb`zlOMmmz$S?xN~ zD#4+Y76KH?9a1hW7jp}@6xt!mg_%x1b*2n6{RM5O-}?jjkV*TTU2QCvxRc-+uikTe z&-*^ldpTcUIQwS+H{%NpO#(x<DZNY(J0AEy6T#i>6(-( zxha{iTC$wJ^N_UN@nEPSB+xN!95T|DVHeZ8_fN~5t05w={d*|SEYvR0a=>w?MwKxF zz1f^oN*5icXvs9il4JA7vUp)SQz}(mW4|S{X2l)gxpA{-8*a5M1qLto+?MRTBjaw_ zw2K2O2mzrhP!>cN&!`@)N@iSgQ7}(a{QBNj*BQLVJu-pN@6P>Gra;93vk@HDj%vO5|v@ zv|pC@sIU@b<`LRO!ZI;z#ug2Xhx8SOkd8qxdRmIo%{s-REDI!idK*IA;w-smB&*ed zDDDtQWM!q2a;FSCwJD_%w35op0s+g%upJ{Bh6S#kcVeLm9d}{}gX*wRwy9X4t1&R@ zX{TavCrueqYPl=r7pT0JFR)T#UKNh;rr2Xy=dKlSOp*RbKd9{uYdZ2^*lD(W(9PH`vG2*K2)qVG9aAuA9X(dGX6nW?G=>2U2Lhem zw9j`8(^hjF}l} z=jUUtLD4`X%|4%X-K-YJSh-RKr%b(*cvZ)1c%7)bj=!%V`Wh9gn_rFL_jpUgn`Fkr zW1&+z-u9}U5E;5`85MWT%&}9b+CC4tZy8HzGU@iwWuWvUr#qGr*J*{Tr>Z}{Ki$gq};+cU=v~-vn5^}w{gtI$ThXU1D*WFIkGrz z;_vFdQ&`d$UlzamG*+BMs_!e@u=f;JpG0@xx|3MT<=#Jfnt#CW3Pku_iV!umQ`ZV~ zVI`Jf6_#T?SC;uYaU;?kQM-3H9}B7_`!_e0Xmu12EBn4g_Ze(p$Nmzj8g2={i#Wx# zHQXNGR>RP7TnL7D)sXS!YzPY4~{m8L})Y_dIzzNmj3W@3?{=$ZdLNeWJJmBO72c-O72v0A{kY3my+9(9o+Ol z$MXL0x*BHsBm7pn!tWz;G$JS;;{R+{q$}Kf8V_&QXij%RON7qgm(7^`6OMj`r}xI6 zIfdsEp&DL@zrs&KtKql&t>KLtey2{H!8>FrGWQ=3^kyi~pCH`|`W7S!{k2H3cC8}p zX-b2932ozOh)|E9n-zWyEACnxL=RkoK1&S`lbXj#$x}S>A~xU{^Xg4(!W?eG$9#yK zz%8huA7`-z=cw_o*otqc@gMBP|7P3oz-nueyMghDo7e`aF91?QG@Wd9;Z0=oH^#_*+^l@F_l{U4D9;@Pa?hSwS6P1^E{g ZnmnK*-sIh$qbh^Aq3)=_AG}?k{}-0Aonin0 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler2.class b/bin/notifyz/hardcorefactions/games/utilities/scheduler/EventScheduler2.class new file mode 100644 index 0000000000000000000000000000000000000000..13f4c3fd7b463b99673363841d84c9e6f3655d64 GIT binary patch literal 4245 zcmbVP340UQ6+O?$8e0qj3?Z118UhL4Kna0BZR22M8QYa?u!LPFP290GmIow_G8z#` zTDqtEmeM6%(zG;n8@dD&WExUvx`Za(+t8%j4{5)CrRU9zU<8JgN*>Ky?z`_U=PrKr zKQEjGum%56P$RG_Z`#Jx;YY*Mnw3tOmOiDWY{SeK!x=577sDmn$Qri6Q86{Gr%PGg z3P%s>c{@>=ZdMQwSh8O`sD-myJ`*0E+^?r>1;PK1`#?2&fn~it$>>CKARe9Q8y<=G zB$Lq*f%P%xM%&2g;VIL~X?D0*v-KqBea_U@txkdZzJXYDVyGt`6=-meI6@|D%gAR) zuqZ-hZ7pw)YT1%rhef4&?%fw18K3Bl#(KsD#2|TRwW7VZq+5r% zTcM6?1%XEQCTYBI%*Y?m)BRd;np;w$gptW>cFEEO`mROS<>IL#g0k^VJscThS4uv&Cn>Yoenb0xc>O)YYR68x^z*+~x@72%IwWsgh+8 z3So(=eYB8@O$bxLL^Luy)SD1!@?AX-eP=C0O@6vUyx|^|VYij`w#~Sa%^F2ox_Pi= zP|C4Q#Z6c&u$XYshf29g-AZbcSz@HY@&Bl18FKC|2D?0mZE3z?hqsJ|umC$$bYP`| z`vh*etaBAuL+Hj1DcmjqOVxU>E!h8@ zT8NfzyiG++-c*~)>YAlsNMMB{v0;XHm8Pb2OHYsJT3YAc9>!i}Zy;YN*^F~t%T>0S zH(X_Tw9m-uJ`x2<0kv{gZiX<5w<{PE2;X2#sTjxoOf4DRX54ChW|qP+UYb2vdbd-% z1l}S2@Swmt57(7F7g+vWCH=M+6O#U&0!y!;ZyBw}B+?2}0&5*L@?@1_S}*E$IKd2; zX8cFoc~OOqDVlU&vTtI$z$*7P{|S$hG7e)}-f0MIzI><8a$ZWB@30g(jsx;|mU;E^ zan~W8Eu(c{OpA3P6hQYqTuCZEy;T&!^c!N5w(R1VVNVO(>~Zpub++7JhlAwRA$c8A zaTt$M!D4~sOJKu%2OhZE#v!~5M-;rff)l5_R3%^)@4iDQB7{+rwy>n{f0ipSA0jJFiR^f)_!kD+E1(a zj2F0Ok*A-)Q3anP4jeHY>g2R#J|gp)iqGQ<3>ht*PLv7-OD`7nw7^Qg(wB&dn-IQ) zFDrPGfnZvh@MP)00mEiGkS`Tq!B<%|7=AG`laZmfx+0^K*|S__^$)wdo%MJMPb>I( z#p%^FYzDF_zJYJD$|jVO-&OD()|xyc zGnby&O7ZgIESCmNOXcg#M8H$&T-4tk?vdZ<4VC# zD@}lxiHA(P&n)HBm!d<#&np-v$-wZX4S|~`tLhO2cdsE`b){n0wa{xW+#m{QR)$4$ z**rN(phiE$PQ_*Q=Fv;uUR!c44M?%b32SzwPD7#K6$;OIsg!Z2i(Oh3G;a6WedXGX zb*dr!2^SQ+R-NY$7i~SK;?H=U;p~|u$(F0qC9x}Ynxwy|SR$LGV9slwLJ6~ErF2=X ziQQ=R|0SCwXt0*O$^t&M2x67&_1KNALOo;;vykH&sGPI+a>iuOcY|zqxWCL}%whk~40bjK8ggZrPa-&jdpIeT@kmE)W9`}6r?F1*Y^+_dc^1v5@mOPR zU~?Jo8=FC>BiI-$<3k(E_}F+y;QYlGH@=K9&OSARJu!|IIc_@_Z#$2=_Sg&-wY5Kk zy0-Q*KHGLKb{b!t#n;Z@7|rs`EWTaF_ZprnW41x%&yr1LoGRmVTN!6g#7@vWN$f|C zHE#=!u#SONKgutt_OtxH|t)zSWp9m&N z`!Ce>@Ks-bk=(fM{JgYZq3#_24!I ztxc!!hV<}rBynx$f^j#G^)q4y2)99^JnjQylV^tjZpB{-SXZkc#J{mBz}er(s|J7n EFHXarB>(^b literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/scheduler/IEventScheduler.class b/bin/notifyz/hardcorefactions/games/utilities/scheduler/IEventScheduler.class new file mode 100644 index 0000000000000000000000000000000000000000..e8a9f50d5c989646f59d2f46c4b1a01d46e05802 GIT binary patch literal 292 zcmZ8cK}rKb5bTbcH4#L?N9e`5cw5OqR1hLLtRHA6ok@qujLh~1^l2V^fR7S88}yJ{ zRaa3}{r&U#1pqg2Qo#V>E@hR)`-fXnnfqLLL0%=N)&*K~>pGPvDu!CW?12nYxEKLFb5BN!U5j1Az} I(5Oe_UpDhqb^rhX literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/tracker/CitadelTracker.class b/bin/notifyz/hardcorefactions/games/utilities/tracker/CitadelTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..792a59357002acbb89461f995d7c8481b20efad2 GIT binary patch literal 2267 zcmcIl?M@Rx6g^W4rL~A4e&7e4+*B81eUFsRhkcV?w zoW}*yAiZVbIHEz`b4&T9G#G}nNTHXZ-xMxiY1X#5U$(X!PNA5dZ8__fFVr|R_RNGq zOy$hTRJ{qyvKW?S)oE6QTgb0x(1mMRTtS8u$Xz95KAPswidkUjscQ!e52DE;G%;iv z(yLRRg*i#>G!$NZ=B^duSOjfXmtf8ePHF5IReJg6!R6Uomn7$!Oys zk{Hsk^T8sFk{b1N;|6XLl;Kue#W>lOBX&d+cplai*UWcoLGmq+TgYbbV0oj!N9`U`w>6B`}Srgi&js;klMpz)Z+iB72hBi8!Y<*;p{y XCZn4_B%`ZalPQr(uG&en+R2Mw-62?E literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/tracker/ConquestTracker.class b/bin/notifyz/hardcorefactions/games/utilities/tracker/ConquestTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..64e535a3ffcf6960fbc6dfb12bb2e4d207df471b GIT binary patch literal 10211 zcmcIq33wFed44~1%xX0tEFsy8g~7qXIuMI72Ac(fkc1J|1rj30sqwNq5(}$cd3P2N zu^rpQXVa3yi33TT;3jtKx{a~T8rhA5ofMj*job9To22)ZUTKrMChz~x?Cwag3p{br z^GGxQ%>Vu0`F`*J58rs_)z<;6l*bLs5^P8$?bzt#q2QiyDjG?qtkH19jwKW6;8=Lv zN(VD`EFQCCys}f_$UZ9->`W%^&RA)C*ts`QE||MFygwX_hZAGLf!%wph;5)!uqO)OK}m>e${pysNWga93YXZ*R{KwRLSAOvVy+x-UE-=;|%1YrzBR zDy{5~WKt>WG7^qwtbtV2N?B1#2??r(Vq=N0ok>}ON8bgJYm3XUt?+ozo}93PgYodB zl^W)KsJ9S@o`h|US*g%^s#Q4=&y2+qf*Xp<+w8`FlNR>1PV)1w^&DEQ?v}~z@;5{a);Lp8&jT%~Fq8ffdO>Zn=^=HO+(=FlM zaR#HdHyH`XN5ZL?x_1XF*SdDCY`$#2w2b&shNUK2P-kG7VB=4pKz_7isj}k+6DDS> zs~b(s#T9Dyrld{HC1*UYVG9EWKdl#8rqap93Y3qk{BH4RXL^l?9{v~1% zv$Q6ea5HzCHJ;qhkl#`wsJeKxuIZpE9A}O;Noy9^mPy#m;E`B5#(e2WFt}k2izPpucB$ zV4EMk=r_d#9r)UaQEx(J1S^s?(ybOuJQRXj-&y0y|qOXx8U#a zL`-uXO?7&1&5+ONWMl)Iz}*6KG?q%+{mDdsCLY(QSJ2K)WKSMnAhq2gWkTA7jSK;S z^h0w9-C27so~AP$N5YXV`2EJq^?Q%w_(LW>fP1LJM8+l|yg-S1Eb~;T*Xf>NmV0jAjN%5u)1jYON%h^v-mKhMB=h_d-u>VTS{>lDJ_aVos8=jgpF!H*;On2C?$3HCKcr!zdE=F+icjKG2A(8UnEu4XQ5;iAPx279lO!k&(`NU$cEzBeRHRWj<}0oz&`GoWtJ&rqK>C_r;_1lB%HSUoOBV?dwrObqIjrOnqnx> zuZYC0aEgT>Ri^l*+UbAlTqBi-y)~tZA)Rj*LA94m=`)es+>l>pON}9OxW6fi3MD0& zGFPtPMupBT5CyWGQYw{T7=EdfdPC;1DvRntM*dygqWSWy)%~nd50I5iMPoBV>fK#*~oooXXe}PWNl_M_#m( zpk?VZV^v^+n=akQg_mTTIl@|=$*4N^>Z)lO1*<0Fp>9

wv>x z_kVPj(SxpVoPi?uub5CxEXSkunDaNJN*7}ekJme}4#w8rFRQe`Mmvox(;8lt&C($*{?Pwja;qM#VcLIssj#MDeW%RBM+MRpxRNLl|!a{Kw#`{;*4IrZ_;41k=Wjp%0@qP&6PooXzee!0RjVs1qLl#_w!VV4*4NN} z`zr{Z#PZg*lUQ*ID_h&9u%-+Jfeq9goL)}xHE5$gOK}YkaFy@|z1Tu*KnL$ARBNwj z{YG^1Sr^A@dDqSBO*?TbHe2Yy7Hw04W6G+Awk&SzTlxmJ9);QZGL|pRVrYk2zf2oc z%awr}sKp8zbtCHebxf_j$eEpAy8%1!KCV?k|J{zAlzs=_@Ac`BBkDMlBPu9;d|UZCpeECZ$Z3q0ox+||i1R9o z)ble0Zua;rkk>mvZTC~8sPj=*^j6xYd{d)EH&SR8lRFv<0-Y!iF?EJL&Zx-?t#O5_ zM7kIEQBP6T>59LNE>+@Zx3;xX@%tO2Sv*(}?wG&JBY1XR@a(+c*?GY{NGT@xt_uj> zd&z9O@;9^it+`81;diq5 z{n|gy;!kV8TX^dfzMsY4)&5Jp>0bRnE&T6l?1zEsEdGaAr|`e0M0Pxj`6@B8qVje{ zR(x4814dSAPn^)YpTQFTm8z;dKZ2OVYTU!G%J&it?n6KBXFWcE2p&Wnhxtk3A^tp!uj3JX3ys9LT z>bhWizpQz0^t%;nYW6Kgs`GavQJj z#KY1{tE#E<0qLV1Cbd{8{k-za0M}P(=*S(UT!lb~VVuL2Fbs$xb%ty;aKzxLxj~I_ zj*#h_@x;J!J~PN=`1lE!#U7U%GGt&YZTm4Aenf~qN2@Qq4BPW|8FA`?2<+)IMn_we583P9<54+1PcT)Xj_7~QV zE}FAwY%3`7ekzemt+MCK6&`szz!!=9&#?DAi)DDuqsQ`Gtg&3~WaN|{%XKuJ4p0Um zdZ_)otI*3-sFE*jVxxI(b$LU1)e}!4#G7w6lv^+2THdu6wA!Uz!>6he>m=MZB@w}N zH#urLjq*#B{Q~>L30#ernCd6Bsw{0#s z$WeTmDH88@1KB<$cN6%CrDyO3XY9?a*iYff)&N29{#6zA6~|D1f_H_dSvjz(vcB>& zsLPK{9z|u@s>(Kk(me&ge^B}TLhxAWz!5`11)NaS$pd+5wu@FjR62Mtvp^^mjQ~F{ z%)wWfQm0AD-XK4Elm9j5t0XO7BSAUC!ad6m!90y87=4>R3R)B>&@cHIzJ(ofm~ohc zH|0Z`aLniFp-RCr%6mowML8vYSRNugR8Xd^A)`{mLOaUNaj8mO-Qy%EEO@7y-^LO- dN2n>wKjN}w@-TnTl1JoG{)G-9Q$rpDegdzzrQZMm literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/tracker/EventTracker.class b/bin/notifyz/hardcorefactions/games/utilities/tracker/EventTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..6c0540e0bbaceb94082744264642c0e470b460d3 GIT binary patch literal 831 zcmcJNu};G<5QfjCw6wHP;3d)pFKiK0MW;$2Q89EuZny?Fi5=OOO6iO6E(|;X4~1}I zhN@DdE-b#Y<-5=K`~Uv=`~rYGxamTR!M)NXSLK$!3-cCfgDVk{)XMT$WN3LoGLsAfb6m+E#AP9aHpwVq zkO#;2@NAi(2@e+$ii}f5v!x}>Jap>k563SIdRk4iBD8L#CVX?J!!OvEc<0#_e(3Q= zr*n}w8DE2$HZfloNg|26UyxMtr&N@UW9~yDkyBxCs}=Hz&lfHa$BSL!Ok2y~<6nt~ zg=rSF(xz`o=X04!6*D*q>Z4~}m8uaXajrdu4pi>#!dV@A Y(68e;4C*+9i#lGy$W^$8Zf(K!FJv?q8UO$Q literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/tracker/FuryTracker.class b/bin/notifyz/hardcorefactions/games/utilities/tracker/FuryTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..02cfe04cd998acf4639f12c375b29cbe9bc339d5 GIT binary patch literal 14208 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/tracker/KothTracker.class b/bin/notifyz/hardcorefactions/games/utilities/tracker/KothTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..ed7ed304d67a90b649d1cbcc811d0768f32b25e7 GIT binary patch literal 7668 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 A&Hw-a literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/utilities/tracker/PalaceTracker.class b/bin/notifyz/hardcorefactions/games/utilities/tracker/PalaceTracker.class new file mode 100644 index 0000000000000000000000000000000000000000..d902d31c9cf4aabaf3b0043352deea224855b6ff GIT binary patch literal 6408 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/FlatFileKitManager.class b/bin/notifyz/hardcorefactions/kit/FlatFileKitManager.class new file mode 100644 index 0000000000000000000000000000000000000000..31c8048ddfa86e019264bf97c0c84ac1222d853f GIT binary patch literal 8183 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 KXd{1`U+_PTy^CQ0 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/KitExecutor.class b/bin/notifyz/hardcorefactions/kit/KitExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..15005faec337915ccb24e37ce4ed4341e397898f GIT binary patch literal 6328 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 V(Ur^_$EEB;;GYA<1Rxib{vX)QZK41G literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/KitListener.class b/bin/notifyz/hardcorefactions/kit/KitListener.class new file mode 100644 index 0000000000000000000000000000000000000000..0aeeb4aa3807b93ac19f6b9cb176c1828970397b GIT binary patch literal 10276 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitApplyArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitApplyArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..48606ec713db53c1d71dbdc12d0ea90578074383 GIT binary patch literal 4260 zcmc&%{d-eq8NT0;wuPtYmOkNGi`;YjIF+;na_FR#l#!T-Z4-tWl?N!t|IPyUkgzUMrj_j5nb z`{wQczIp|~9{gRxC$QJbJ7#9#bYf1o)2X~|Wb~9{=B;Alr0FDdJ6oDJEGKcubOsBB z+`^#uLc%X_a82EkW9Cf9G>QqmU?$Yg-K6sK^SYHzj1E^8RcivlLavlGErH!*YZ^W1 zML6O`c+^!%Qn}x>OlLq~PyAhLcTNfThx2J8gcgB-u96I)RbZ3Kml;I$D3ORd`Dh`h zFBo<+*5OtS5^Vyp_}B^kl%B}xRyHx=*rt_Du71-w)dYdCh5&*Rx6$-UrJ<6UOB;3w z?E-CcsZ5UtR1ZD(G-Crgl*5R?#s&^MrVoO~s1mEk=aVu%Yg7YuveEEdTkroGAz3wG<6 zX&K|C`B}rB)Ms-HHawP3>A5N0Hr3vH>38PLqQJhji+Wv-(ou+LJX+MV^l;BjCCTjW zMX$te7GhIG@Yg8V=wgN*;UYfIxe_|7#*HYaUjp99+S-BeN%rl#^Ty zWDTZA2)bLvzNn)5n1)^GX~8&-N*oc0*2UBi5)JQD&C^mOK!=T@;zKhg@TkP3K;m7_ z8x2!9F3?J59WtH6xO-rg+HQ{6nrtz4>37-7NAiO>lLjBxVKH*Fieul1)Pz?4l+{aMYcH0zD0bsMF-Z zVLA(mihNQcE6}ml=N4pOYB+(DOf#ih69&EAzKrh6&2`R%FwYLJSdYdONAnsAii!S* zj}1zQ$NPLeabk8pL<)Cfr3o5l1 zJdYnr{DAzbedYYlas2YA)^H9#A_t1*X(rC8KiZ75_^~<#e!|!B(atGl;b$6N#LwAx zreoN;lP3w=mjyBEy=TO~#7h#tVw5$1)vp?Ujo;9$WjslqEWfIFCxU99EiHH%zmvGY z4yqYZ*=TqL7a6CX<^^WiwWxZa%%}hsHC)0HA)C{SO?$B@l340-7FNUH=MpY*_yfj8#mbi zU2d;aR*o9-M&d2@VcpbS(Iyhl@y0fhFWD($gj0u*@T5|6?Al$wM`47!c=E2}9|x9G zU1YiPb1f0#ZxeS0_dY&%bcLJ4+9Gc0>b{8eU6-+8I=pcao4U%_T*e(`Y`cgZFH_Km zPX30e25h344zwb|YvpEi@lAWh7`m~OJDPQ!3OeK2@41|2K(0&Wq%Cm?3Hs@#leTCX z_j?Y*`zl_~(@4c-km|r4Yq;q{oZkhK=&!gD|6z!di4R5mSAs7f-mTm%;(-fzu#A!L zDD8LcD&tVa&k_#%;D4#>6|67gSj6w|UBdf)=nF&wZ(-*O-N&h;MEGdyVa!Cw(~tNA zy_fJrUoaAU6CK^JBXb5L-LD}N2`*vI$JX4p!d8w(F2G_)O4r@E@qL)fI=g{L(C;s! zcn1A714=8rK*30$jF0je{)F1l)h7ki_EY?+8L26{9zLUFtBRjnrnn+2;=ax;`w-f= zzMHsiXB~F1$T18M`C)!N!8bX+DY4XFVX^;&1m3`I{1d%G;y%%Y`^AIU>(=jJr7~5T zh#@?K&$Di<7M{fy6g{|7H6?es`XZiVH3x(rU&5D3sS^G{A73S(zs7hrAh7ct?3Zxf z!8VD^o`3UZEAVxEgND9I0Uy4l$Sx*nPLV!MN(9bf!mIWYzAaek%Q!n72`u6J0*iQo zCFJ_2{1AE(TO*+*{6gS0IDIk_jL0&6yM*&T99JL80%x!OD-t}fn05{UasCosRmAnX zpmm{{>m*a|$3{Fr*arB!ACK@k$?MN?!uL2MegY#dILFvkjIjz1R~|TAdEjv6fx}e= zoQ)X59~oeP_IvR<;SbVFs|%RKpJ`F`W<~0aYf^vlAnb$xDr?mw!CH+=yeV<7#9t+z ammKAiBN-i6!T-W51mF&mztOr6Z~qUI@Qj53 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitCreateArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitCreateArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..b261831af66bb436372ce4fe40f2daebcf2abf5c GIT binary patch literal 3688 zcmb7H>vt689e&=;Zr&vsFf0&Ql{$iuO(GeIh?)g71P~-ZN+6n`wv*jSGO(H1&df$* z>BUPgc-K~2ZMABv_JZfAM>a$b9{u8n{v-YFXHM<&&TNuRvK#41&h9(!{I1XMy8r&~ z7heL{g^wj-0(U!ZV2@2dX-t@2KIeMYn3)S~*YS;Wc3_y^cxlpd0^_J1^m&#USiO}S ziMYVwy3D1(F4%!>`G#4v4fPa0}G=auqp)_tg0z3Qb3O!sg@leIY zfsiFj<~_D!2m1teW&UsO_920IpPRRmXr`oG=w%YC1y)BM`?{$UizYPS1`QG|0&SW8 zv*wg(6ijE_7z{ky8P6`iX&+hzfs}>>8YR{XY+TB;zhoEkmX}1UK+8mKtgC`g7xi^D zVI4Lpg=v8eH59fFHBtOc8g9mB0Xc33$IVGgV11^2xh+cAEgE#(N*~Q)(Q@(vJ8DT? z##=Emt3+(oaGTPW4BW_V<>7V>ZO8~T6)kVl_I+j#-Cib#ak`=3cC6#2$x+KYWsVkT zY^vYQnS~+Kv(M} zA)Yb|CF{hP3P)cZjCU)H?-sbZ7R4NrN!-i8>3isf3fVsW3{M9vKj+y+ReO&LBnsxJ zRS;O^I+aop7|Zm#-ncPZI;Y&9E2YZoK}OW_vMW&3$j~#(gVa7E!9vZD-=X9U*R zes7^TVLEKEo}H^x<0A^+M>RaAP>ertvUfO%9}8?fY6rT*+=(1^6#}D{ZdM7Tk)y~< zP_j|i$l4uMg9T>!YSs|-95Wpv;R$rIvDB5MQgVSf+l&dEm9W_>uaiZ?IWXZHBc%en zYnJWz3CkwI=Ck?KgymVf&DLFDKhIA`Ej&aluS*n}4c{lJ8GFI>^$`eYH0p>m#X@ks zX@LxZs7fY#?oFjc<|&E7UQB6t98WO$DWjL8b;=sx#C4s6V`EHiwz*An{aWRT!Kx|n zo&>B57f-5E`>8;#1{%wY_xh}g_?BvGACmYP$M1@`SPFxMW#FKCY{Gf`LYetXfo&_y z-%5sL)!cd-&q_Qau(k@u{b66z@GJb9J(y@k<9$B;wk}3J+7}49S{o`v1pK#nPU3>V zEme|hk!pAzFR;II`V>Mp*pV0Y*T~iIRcP{gyrkh}yut=y`+cU9vlu82Q8vL5mF=%- z_??1aRn&c03rV~_zeMC!H`3cwNdKVWk7|alp^FD>Uo|c@1(JA6AlBB!5>O3D72KBU zc-CxLoOH7Cf-`3YauUY5%rV{8)oA+kg61iOD@LC_Q4TjXH3$T5tk$<^NRTQK;wNzD z$|56_DLC4-BDjg#U|{CX9W#sJMj-JIYO4z95-cR%<@Pb?mb{#G$X07b>%7Fd4YNxP zb=(TN%I%knhuX?`YT#KS$77)cFbEyc)xT z6`|$7S5_p-c!S@mH~Fz(1~G34Lq5Xbg83w|g@0Qa@@)+Bc5WMO7$C(6BU9qd;|%o$ z2Kyx#xWpB62Hm*Ieeys21@Skl;KImnfc7qU+^xI@B($bhxeIgSMe17ioY@H-=ZHM;6qya5#>Gxd0Xf9Yq(Fs y{SG%lN(hPL5`UMtL*k#jmYiA*NnGVW@4h2b9isR=5$UdBr{p9M_!k*sxcEQ)h6(@x literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitDeleteArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitDeleteArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..405359bb2f2e1e3b48f8d5ccfd3c91be76e1bf7e GIT binary patch literal 4138 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 G-~R(}M89bO literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitPreviewArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitPreviewArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..eb8a88b5414650307a465cfd4e9c6fb24499b568 GIT binary patch literal 4194 zcmc&%Yj+dZ72VgCG_pMqMV%(-3%h&SY(Tp-0 z0U~{*ucYbw{eY%P(>CdYwuBlRhlY}V>0132{UKdV_Z^L7*_LDSsY`1~ckZ0$KKq<| z^{@ZFbsNAT{6j;7z@v`qTeGE0={eJz$+(`JH8Z~DI)(JS<)=+ATg*wvPoJ>-F;AYi zOovVH4!IwqPRkkAoDOv8Nw zt!tIyXk%Qq>(0lqLm--&lNl~|3N#j^RNA|Ad;kwJWYf0Hf-DGZn_BNlgCVeet@R^C z%bt;59DC?`E;HK`7N&>U^fY5P+EqGx1@5ntPRB$u-S5+pLI>RwiBU5r1@23AtoN^s zb?MlTZkEZ+=cO|v&|S~!I^8hHK4l`U<3q|@+;_{MDg+Md_%IF$H0Pz4vkC?BmY}Y) zLxS8hVmWfOn46Z~8FSiZu!#{jW7-p@XQ}6KGvd!##Ibi{5^d5IbQLEaPZrE9eLQ?u zX;LS7y6E^;PEJ?_i_r`?YymT9LxJ5Ru9rqu? zYjNJRi}KX0s@vcO#WLO*cGRLku>4Yb%r;BXQ|uT~Y(2@=NU6p;g->c2BOhy2 z2IowF(6wDp$7zgH^7OHz0&TU?RYd~AJ*i;gXjnznQ`6^U#_wB?>HZNV_UqT{Rh z8msPdI@dTlzAEKX1TPF6Z!tw##iKp7K-DEVrM2({N7Q?WQ!v8o38!@<38+kO zhAcH&eb3Cy%bA)ajanb|awIO}KDADo`S6t3;yPRny1Be9eUAC!DxB)4RqJJq#9fZT zwN>XR9=EcN=@&i5@Y4SyhW_ncylGr{z8BHX|Z{UH>Ti89BcxVY9>|Dgdi{N+94IFrr`VII9zuRaHNYeUF zY{3I)$1e2oF8xUGF7Sho;!!@)V-SyE96VR4-^aZepZfW$BAaB~N@K5b+M2$J$LP0< zPFsyd41@tBj+UdiM!|9j$^@{d#^v6s%e^?xzh}zj$1%ijx)IM15RDoOUGHG{GK?J)wFJrO+k*mqb?dWSrt&w?#GM(Lv`0Og#&IR1Ni0Nb`a&Q@Q4d{&~ zqyNPIHM$OUln8%Xdzcpyt@w&|-NEo8^1ZR^IG>Cy<8uvoO6{rjm${ByW!#Mc@V(f| z^*&~jV(uLTzKfsz7)3Y6kj6Cc_*oplcW@BjBL-Kf^*S-SPHa?hhRPUJky^kDcrie7 z0bj>UK_M0b^c0yE@C`gj+@^Ws`zF4{LSA9fzfJ2ge3$R}udTi7KX_bYHwyauKJ|aV z{RaFnz`UDLs}fHsJYRu!6F<5Z!nKUc{Fe~Dg_kFj(Pg|Mu!P_C#?<p@B9xAF`Ezo literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitRenameArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitRenameArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..c2077e19ce76c9f11ca286e034be8c9fdda55f43 GIT binary patch literal 4428 zcmc&%X?q*h6@ITQ>B{z)I0`W+OCv%S*^aGj5MmjFW0Kg!aYCFJ5_cO*V|!v*5~ERq z(}gayKsO34ErGVQbb*%821?|Zv?+9f7P>xt`n_NJFL+AdJ2SFmOLpK>zesmE_bl&u z&$)Nr{_ks70qn*Eu(l)c1e0<8ZdKs zmG*ls9`IZ|>KsY%aJQK;?H+;Mu@8K@bwt45mrWTVG*Xl0L>WSpK$9DBKB`BFMFZ-v zLW4xJz}DE{Y5j~IPwSb9_^@r6nTbU8O6y2H1i~5u2ufTpaKqw5`wC_{WmqA!2sBS7 z$2&cII%%)70jqGMG8hq9UBh7ONCVZc)vylh1>}Tb4>3Oi*T-6`eNoCbXo%t_#;E6V zMkXcDQA=ypSBCk)-#FqCJCBxf}of12k ziN$HsunW5h@fkf`Fpi9?bo4EO@vREuJp$`$NtBQbVK2!L?Pe4zWj)dEjB)mmHxUS= z^)VwYP@m0sWg;*h8_Zf0@v*{`3cXZD-u5uFX;_J6Bx`sEa8A z_o7c?A6ZplzHd^u`?Be*rQt5@r{uBycL}sq+MgG3Xme1Z(!YpsN5)PYNjp&uWErNr z3A&TTuBhVrpoR`~Hev`zC5{M0D}1U6iH3Vr^)%)Q&|xF5_|Sl1oRBy!5dVOEM#Bj1 zWmh1xn5)BjhT1HFc9z?cnpCpN!ih$l#Hhq6c98dZM8k*i5tgiLRN&T{WWJWNL|ug6m!-^GUs#Nv#lf z@225H#Yv%j(OwvfF z4PwrcWQiL1goaP5HrznZkEBzoiKyjIYk07GEoahbVs{)#PbEX_c zAw0&tsGW_{1yzZvYBpBFTeEiA#HF{vcDjr>1^s-dFs@ZKdKy7vG|J$zgk+IYPrylp zz^>(m-E{GY8>X8#c7|bFPfi`ybKW)9l+AF&9-T`YHZP*Wf}Gb5dbv2O>0KjUubrwF zSA5XStElRS&54X|7cBbl=>Nlq?rP6_crSb(&q@4%bad`p$79|qXk_{axUPI&L80LdRnT>MDy3}vPQ&k2vyhW| ze#lYhC+ArZEiUkjpjDM+8Tmq5i8NP;czoeSUil`Q$(7z^T@|ur*t(Z57FAh2G`Xqb zurgGW6cT?CSX0qX7gdSGlk9rK*@Bfc4w&iz*)m^-rEiH&g%xh%d!dfsImBMQzd7=A zED_>wJ!b~zKK^fR3pa$dSzOoFehDkvu3**4@akFI&{o8nB0f~a#!J}zG6j8TbcNGb(>|IX_3S74ls&?uEFCuT9x6}*hok>DJ1K16~=oH>tx|AHEwQ$L?7;xp%~ zJbXwQaCaAbNbT;%7t2mPsu1~#cjg@b!(Urk0kcr&kYEI>Io?E+H!~|+nDQ8UxYNhk z6e%#xq(8{CKZH2@#df@eoh;a0c!yuz|HLi$7xv&kxJ@+iJ75J8B7$x)gxj4A_q(|( z5lI}y*YUVw07p;Y8;U?2sjQRT9DNf{l9D|ljBnxFB;6Z$3{T-aIq)=nT#3N8cX6kL ze#g7mDq-xUs%P*Ws`)OrefXX#2GK!fswhTDnZUD-g@uFlimTa~xeu2MH Ij}L$UAOGRZ;{X5v literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitSetDelayArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitSetDelayArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..a237bb66878ffdf653566da43e77bc0996e61145 GIT binary patch literal 4137 zcmc&%X?GLX8Gf!UX=Hm$j35RPnoOtx$;K8qG%1#AYU~hfY)BE9*zPu##`b_Tqcbxi zF>TXy%hDxj({u?*N}Dd}lC~rbUP43DHRtpn^!Q7ENKWZxM@ z-uJ!w=YQV34&Wf(QBWsv$g(|idhTLsR(En)+cBo~tY_Mmn>ufLDczYV6%5Nu9XGv< z;SCyjeXc)vrywM7Y(w>uXXZ`MG~AS4G*j})f5_T}f^OwfLj&bS#hO5*m@mzkmcW6L z4UHZPf;<`o`Jk_orgE=onO>j3!NdpFPL2tL2JD;>MUz0(HN2e6Gm2(`oy^+Ryjer@ z-)Wv%Ff@Bw(>21=h()#v<2j}^lV1NOIo1Gyn2InW3bqQg ztW}DlRUjM$uw9^u;bd()pR*sfqS(RsDo@hVP8A=*odSxUH+9!=1-4AC_o_e>*tXWw zk&>Cu8BP?t7{+XNx+^%EE@sx%h`Z1xQ`;?YdyUkRV~upbS49Fzx}Pz;6MDfA*qTVL z_b-igsMv>29+X}z8dgrAvzFC$xX(FX!zw{RM>@vU-fo>J|;GjTb(Qpc;>yo+z zc%2o+dnm2?gT<+NzjpLZV_)776Rr%8eSXJoH9<3ZGH%X@S%S>|`oF z3tga@^f_*Nqq;?Fjz9;iYC}u%u&To8CS+kKV1?~{pDHS*F~iC%I~BOMCSz}9EFFa@ z5I;R@IEH4r8s*DfQnN_C9Kk)0f&y}`dqY#znITthYM34Mj9jU(V3V~)-Emn{H9OL9 z_(t%Ff(5*P$YL3pIW1RmbUD%XX(iY2TRF#^Lt1Flwo}l(9__&Xf_A`dLQMkq0y9E;*}0-HHEf|0>#K{e)I!rmwzrIhB`e0&UF zR`4YTDjB91_3W(S7oD8F{uGh3CN&sDf7FjP0OKq8Dm#5S{EEO?+sQG6ZHeKDiS>M! zBT_O{vT4`qBC5%0N-MzzJIs5CQ!vCk0{zxAM``+2&`~2=IS~OdOtNP@J$rssF9r>` z*|xZ1+bQM^kB43QpR}d&#E`U0jhL>-FdH)FjHP=ehcP_$|A?V?{S@nCt9uULSMWU+ zfj`jwh}kIfB(%J?srUhY$l#4a(VLT*Z~##LbI0f2vfWHx)F5yCcKU}6#Rh&TGf|O zsJM!GhN$P*9dGI(l{qmXeJ`q5!kYwUR(DVMZkW^reUjp2dh05xR8f#6;}~u!FGX5b zi3DuoR)qaYy?#+%+D%djTJApU0kg@Vo0O4!lPFI(&rRt+WPg zqxJ1*MjUO}fi&*Gz5br>2lwHle4Hu={8?byRhR|0)VVt`NQ(1AQUIqACaC{lQy7xov>%?5D~{zcd%pvS05 zs8#@7#@Fz;5BM^kz?1%YE&Cu#o-N}k+)0l0;U#<>-{2XScw6}u|zD=8^D8Mvh8Bu^)N8OkEQdnEvW3C{}xe+@5=$HPnbk-!3e z))SHISGW;<1v}%>CHzL zk&|)W=#z}TABTC5?c=qw-$&t;FE_b@!sH4HlPf4puAnd(pb*CqT*DuULXxPyh3iD2 zpBPAF6#R)%v@-3o)Y~gke-5x}Lw(Z?YBnek3LaAM7X@1s{7u1Sg)LKI>tme>{M`rd GAO8i}se!Hl literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitSetDescriptionArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitSetDescriptionArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..b39374b611332b40978402ab1ef91c535b60e8a0 GIT binary patch literal 4218 zcmc&%X?qjb6@ITR`O5MDjz~-dgeri8EMqG;Y1-P3sUt#gF($>}#JJm79?Jvc8D(bV z2AVcq(k1D>H#9A6x};0m5(=^%8oH!S`t*7FANoW3l)hIQp}~>^`O@lxbZ73l=bZbV z_bmFye_p)`;C}pFqD5f8?fB;WnX}mi-JQ!jt}(CYebceM>}k`_>TaR5XxM)Cu<1`4 z{sF_wyJk`Cj|Mvu5rISNDk=Gzp41cbE+ZZ+o+(iVu zl)qr4LOUsEKBcFKRUEC@q(P!nU{8Adl)j{AE!{3;CwdZyYTkkAlCo5bw` zoof%p&?O)PSCsIb8j{$`ce-Wjp5X~>o@rDpv0Y%xT4fKFOl!_?W7t7U3;Fr}APD_* zzCVs_NGb2{7PzB{_dQc_n%|{iH@a!QVE7aIq9Jg5x~I{;Qnp7!8a)h&UMw2+oIqbQ ztqo@bCx?`ZUJZMdwV3ZzF;ocjYslhWfq2ny7fsJ26^UVk9+F|xxM>>`rNvppJ+9AM zbT%>WdLho4Yns4MZ+C>3yCHaZ$i$VlPb0c6xSXWXicjucm!h-hsdUo`P_o; z=N!v%HM|dpDS7PS0|H%P``1M(bUC81nOH-#qqC=syg$?kXC16Z34JAMgDJ)FV;bIx z2Rd*ZQxYcxQX!w3LZaa@l{Fn60XkxMD*kayV@BenK=y4GF%2KU2L(2eNrz4Uh;CDx zE6~d{TUV0`R$X|g10RMi@e!7xTRfs+7I~&>)u_M&P04#RWkWHL_{rl7hHIouFGcxk zWlY&*;an<)0xPVdqGG+N;S^4@5*bgFbjuqn*z7$y*0go%&&e1T)$x*L#o^!yi6Ucj zGoLiLDmJQ`hk92GzQDF)#-g)Cze0JTiaF6F4;(CM_^7Hr8;QyR(<@r~8I?_OoWaK= z&axOPV(3LZzhG2yMfJ>3!9T%X=V^EfAE(==9M#e?>2N*-)Xa^IHL{b0egscz_#{5X zWcOX&_AK2uMlIiPZ7wQ_p_&yd*Pe8)vHUer8N+AT71+a?-8hEN(#@3bq{susWW~Cj z;bd#deHJ|#Y|ziQ5T{^-!vx)JCBRDc%|gc$9ih-LCnkM8fBJ}C3<~!K$L5OFsc0EK zX;b>2RIe)3YLLl}o1RZE+b7KeV^VVI!?XVnABG#lKSBb13*V9WHq)sx2vj^KZ7h~U zHQs6XF1|aO|in9d%v3qM-xl@neY} zv5wbw>n1h4h@X%Ko_Ur?vG9+@@dAFP8o|%`Iz84ir8N9P!!PkGHdB*a*L{aP?7G3R zvEV%m-OKo`#Bb<%-Ck{1!|!l`YHj05UhT#)CCEIL<-0oYdt8>d#6+(vQFv%5W0`*H za~xi77>Q~<<)m_8Rl}>eLUa~%Z=zz0H)G+Ckmh82SBNilD99S=8eYj#BAp?TfKu#o z;X&n0u{Nv>hGgsNhHsusBQ&`?bXXZ`${UHl3T$1!=Sekw#wVSUn>P-cYO2~nQn0Fo z>T7M9?^lT8ZZ_3c{^MYn)TGN*glmZyzuWn=#J4T{9mpi&32hl0GrgB_TPE@vHcz)E z?wGucEtxCWHl4U@8SluHv9pYO%E(+s-zz-Tf_?n%q7L;P!xn77o!H7Tc^|(ADsL;= zaUcKlsLw#f3qkAb^MMc3^iWB4D?^>x6}*eKdTFRLRmMhvu!*M>3zF>FlS^L?}3)j6??#^JOfY!=}pG;`({q zmyC)s>@{jUr6yWNsZmcS^>?PCbbSR+uHX}cZOLe|tx?6NLn;!_s0RwIb&9aHRw6fo zOpsz8aD#C}Vpw^%l z0-wX@RcN^S0-jZo?LeZ##Zrbfj_|+l*zWFEaR0`Tx`K(YGXy<+_irt+Z4qj6?}G*)8HQji9vccOkO`o zWJXA;{g~kI<6J2Wj#cDlY8YUqh5=Ur23!Rga8<=1NoxK9uMvYDYPpI(5`$4@kitdM zN0n18w5g>2d|m1<0aCls+Hs91+a-j=af#O@HcR|X;=E*8l`N0UML~QOcyIm}`ZABc literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitSetImageArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitSetImageArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..346dc4a039ce5038723e0e4cf2fa53772d014504 GIT binary patch literal 4680 zcmc&%`(qSW75;9ryLXdJXb2QoTIi4l$b)1pVx`##hNOg)Bv2C422`AECdt5NW}Tfy zg0K2$YpvD#R(znfwmzy-EDLEZQXj3h*7y5a{X4AnyR)7JucnW=Hz^33UKRN@*95_JNboBEF$$BlT(uqWd~o@?2YiG^>P zN2(xDuOW`G=xdB_NeUG!Vra#>t1Ym5gGoKy`lYWnEJ#x?aONtf#z@vW$$G z5m<3}p-~B4VD)@MyRuel+;pR8pchlgiS{5(?F_cP8aJR(MYd7k+A@(fk5tqAW(`ef zruj+J8#Ja(ft5|o3+*dqts1tVjlme{v}unEw3XAk;B4SzLaB&rc#X0a^_)Du3W2Q} zUW;u6CT+UYRwhFl6W;}TNSAB+E!!N-PLG-HurZdRv-SN>(nyUMuBD!XmmzP;B94j0 zDYaCQ&{mXy9L$hV0-LTXP6oIFof_T%@>w1?Qdx7~go3_%5j@|h@a!T3%1IPZi=vyz z=$-UfrH87+DPzn`2~;_DP>cc-P5q8L86V3YQ;`*lHP{|vvP?H|1&J~&FT=s+LlS!g z)|6OckFmU&`2LhJW4bEAw<*Hy6{u`dWio($5`&~v$&v0U!|QfZj;momZl~mdTYCgn zm3nts#OKVAf@ydj+xCqeHIrUqA+kl>*dDeFlL&gD8|qv;c4|g9PngN9rwF5u&FE?0 z`AmBa?gS$o70^rEEsLdw!>X!kGDLR3%qW&b@n&Y-CrpQ~3hRi5ThLL1UKkq2kQAsT zqx#qp`s_Vyr2-8sv=U2}eVlMQ?o3<>4S7cL7~?lFDM1>ozp|u;DOmX`9-c{)v#aMS zA22+VHIhnH;TWbR$e$G@8VlPRY>GSKk3Lx753WL?Vi}39K7+vc%QY+4A)%CpFGi zsT=kT3(uY;lD#-o4G+g9vI6l}ITtj%9VhZ|?X|oC!zR40Kr16!RFk58Q8-b9lX$1Z zJJ{c@@`#3a;oaW@s5)iCf=vv{fZ9Z zWXiG4YTS)`CGH{XmQt?agSan0>HLWZOoUAG_XisB;z%Q+zD z&PL_PgBm`j+Ve7^&|_s(WvHeT#V2@HjZKx*PigoxKEwVK(79(!pz}((DPAdx9;(Uc z^Soylll3`#UgDI%_C+CBLWde+U+`}cC8RD|D;CtkhM{gDs*V-K8cG>ow(==0gAF$B zD~MAt#Kyxh#0!$@jsj~-#piTR3WqbQ;K_ngp>h$hI!Sir>!M%<#XzmKej6Du(!pe` zb!@IU7t$%yW0%OzAyD~QoTc;TblRIyk?{UO;umH8=v41{Lc=*Fs%}+m zCmD(JY`8_iF4r}D4KQxZ>dMizIACN+E?Pm@U*>m-rlQ0=Qm4nI&s_7Yz=^)-(u z4L{WIBm9`Hfo0_yoFN>ja~xv<`0rV3&*G;N&(ZUuy~3`BpW%6`wapU@ZSFlV7`UoS zY_7qJ_@%@z*eHrhRO}jlg88${_%kV7!wd`F3FQC;WK<+Fn(8%qu=LuGj*@efva zN#~hYCQ{w+tB0Jdn>2S@>e{-7q+kd3+j!wqs$F4;4ZJ#3@%&@@lxO_XVA%i%3^WLqzx zw<8=2&*H5D9g$e%SuBf1au`30qmN)iEIijxx^UQ4hFYG$@*Fa;P-yEcW-8DjWAZs{ znP>PtJflSTSJzHZn1X_%Qki;h4j(8U`H+g|0m|k>i^&{5>Oc7#AHTejxBbajWEP*T zU`wF9l9*?KAXoZ%zKv`Gv&)Y`G++}~O=v|k2GPP>_!f+y4M)%p2XWlbPqYWH6{q=C z_ApcN0yVtI^!yRqMH_Rkl6D}UjzZEz9ACtjm@KA<=f12s!IerRxy;p9u%0O#!JqLE zzDgb)VWW5$Un9Ry<3T)vN9ozusdpv9jjb~2w^ur9CjCB;kQAd zWDXZ#;ky79t^!!N%EO|x{ekd?sdFp-M35rXTpPgh7g}D$u=7%Xy)5-NN-4-1QCaf} hPgY3?i903!F0n%5pAxf@d6Vq7EN+39C|iMl{SOS-EGqy2 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitSetIndexArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitSetIndexArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..8e697b56a38a4ac2a55c3b379484b41916cf5660 GIT binary patch literal 4871 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 aZwjU<_=ke?Oduh@0FE$$mnd6-m;Vdz4oWxx literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitSetItemsArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitSetItemsArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..fc6a3f0c4585403c39ff712fcbed92853bc11106 GIT binary patch literal 4373 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/argument/KitSetminplaytimeArgument.class b/bin/notifyz/hardcorefactions/kit/argument/KitSetminplaytimeArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..27e3c8a2eefe43c4c2006299c08fa77e3c75fdd8 GIT binary patch literal 4108 zcmc&%TYD4N6;y@plDH0tfAaXU@)FO3&#|HdAnnSv}*K1=~%ZH@&p(6%8kEx-RKU+}7wJ zLGBqfZDYKYpD~)qkdP1PNGdbCU z4`W!tQ8K8`{Lq~44Hc|{qhbWdD0%XU!=!(`{bdoKB4ZMd@m1tHK6B2QZ3tO0a_ zaQm6+(COc`aL!?6(7aN z1U8U8$4qZbx2eq$=wfNDt4SuSCfwhOPe51jNp_*TJfdO-8J1_osK7%F3414H{ZWwY ziBofiV`!$UQNGd`HJi-K65Je21#<$u>#C}a4Y_jDBW$9lb+JXIf?SLD@1-J?bxAcAe z;Yh4icqoyt?9pSUeIl5RW2R-v{t@aNNlr%bDJtUVSa)hLZv^E6=2cvhy=^1$KWw_P z+sj&w;xkmG=@p@;ReVkgZKhD2$uk8fON$XnK1r0F_4Uz^uIx=pu)*H(F5(mn@g6|! z&Gb~Nz7s04?Nz}R5F_OAgr{fDkLksr!EPwnT(P4REyH6TOaGIOQ<(^oQRz|B_2_2H zgqgE-ujJ5&=l>r*46L0}gY078!gmyWoBZ|%w(l`}phd3AtC@=L;(K)7$QQkN841T& zb>`NhllA|76+e)oayXN&Wc3e8otn}^j-&e;T5%aaQgDS_uI<)Ls`xQ}LLRv0B_hRU zJsiV}_^E8(Ka)HkPEJYJ%hDYAQ9VFI5r%7XLEW5zftgOdS0_v-Bs~h z{EljE<0*!=@;VVTa#=6CTJZ;5Q}9QYOihWzL&a-&oqp#{tWg}pEm=~etxhDM6em;tg<`%~y;Sto$=1{j+_{xbnVQHu#ZxsB6*S+=Ulp-&Tv57*-$rwjWdHdNxQm{2OxYzecMDYLzVKe_*5NMK@ zNUlO$D~R&9g>M)6wTaK(R6G_}7qBrEdJCJTn&X=%u48Me>pBvto49`}{=NmgKUK!g zGWL{_x{mJGc&Z5p_}fk$@;Ay0?N;1}ZAkF@HuU;meeL)F|6h@Ry}lRhDRMRkK1|U= zDb*njwWV+1VcP1Vp*F3I{=jH_uwwZd1uJGFJPz!rGt;qbrUM_se(v)Mh{r2t#B&Ti z$`eb8(5>)QbaqK|3mAGGN6HwDAE*9QcNrh4*jdCx6GE@1-aw*^CljGi?;<|lguZYh z{15C~bvDa0QiPAT9{Nm#g7b+`xc3HTAC9y~w!nJfGPG4k?G@${;r2)w#Z@vFrTTCg zPw^T5bnx<7K35rIaLs;3`mmAfUCi@tq|m_|_g)P0QZ+>GxH9jViv*ttNa!(ol5MaY@H%nVXlP+`u=l1<)_z1wq(v z;>D>%co8oNEa2t7h+JRgM)VbIPed2-D}lFhp-)Lf5=t4bF5>r1I3qXyByjomzY`Hj zoRE*sPM-#kFvdsGihi$5-&*vS> z4ut1+&0`Um{G7Xi`AP)OPfwlR3+bhyF)Vuip?Pq2JiwefR*(DU8)YJ3iec^saMyBe z?l{(g!x=`8EVu1&zsoS+ya9a~9yUcc*kVXfF@}ZaorH-hL6aTNw<$f_XUN!LLEffv z+qNTI5$sU5TD`@f?RssVMm~<{Q1vV(Fr}k_97AebWypZxfsQmr8FEeG^4Di42i$)b z-YehqY|Cj`zL0*j`KUrP}S#dP}lM zAS+jkI>w;Wy@Mk`ns3}qD5m=)ZYpdw!_4gr7{(8IFr*+uxmLe|SCch_keMll8pu#3 z?0>X5ExLPQqp6$J>M_xcrb{+k@A6>C)oP?5VFtWNfb3iEj3#AI$YIP=?ZKQkK3L}# zDkNHh{z+(?GCok1hmb4^0B6TJ^O22XB2z{SCllJ8^_7fBDFEIHH#V_QJ;32)U z>TsRx2By_6D6Bvw!r&7+*J!_BtXyE$Nc1spEca11N_{L0(iDl8^8B`Y88D~g}VhJ;gUcY27df#oQ|Br9W* z#&?vjhm=%^9s(jV3@ccT310YgtzIQIxDgvXe?539HrT{kRC$N4CR>y;W=Y(Hi7Q3F1Us9pa%~DzKrh`t&c!W*C0} literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/event/KitCreateEvent.class b/bin/notifyz/hardcorefactions/kit/event/KitCreateEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..be063a853b7a2e79ae5d9063370d1e740c8c95f2 GIT binary patch literal 1183 zcma)4U2oD*7=8|PWt0jGHdNSfvM(rRjnO-o-4Kn5L@zWX?yi)xaa`9X<*-D5lNWw1 zOEmEZ_@j*PX&Y!Zve|_5a^BD9dCvRi@6X==p5jps8HUGxAjR>=PxjaeM{W@EW5<;u z@F(`EkTyT(zO-Kn*$cTN`Ezy6L1U-|;fXz*p3ak!n9i_%E!J~j_`TL+aA*3>dUtFyc9^ zECQICYM_j&iB%LC^n<8F9z@tg4$BOszVP|$>DiEn?_xfce&9OZzzK!AC(fPr?U*|Q z16fp6_jMBmnCf5CL>>mAm198)J-NBfqW2*!iYHvAC^2ldJGV)#Qw=G}uuZxDp?5({ zl4n(llfq>Q6 z*NRewY)0usR(bEBNLeMi+2mJW;TOv9FH!l9wXbx|;4Ym;6tu{8aWC?M%2shdDSkt7 zRbH|#QMa-eXjt6~Y|I-}pi#I?=L(^y(9~+ws1}#u0X8X44I+%RiNv6lG~XtxKJ6RU zzL1R}>5;dVg0lsc8FQiirOYMk2R5#j)T0tJPDlnb>|l36apUuqdCi5zduS)chlvon s)gTe({9^%I^d4I&-ujHU9=(Y|-I?*;r<-E2i1%&^hc+W&MQFSK0FbTbT>t<8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/event/KitRemoveEvent.class b/bin/notifyz/hardcorefactions/kit/event/KitRemoveEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..75c289ed47b02ad01296b239cbba6b4d2e92cb2f GIT binary patch literal 1183 zcma)4U2D@&7=BKhrE417F5RlOTb~!o~_4a38ZO3f0Gw} zje&wcz#k>PCkbuX%4VSF?Rh_+=Q;16zdwHic!GxosMljj_-2Ma|Rw~SROh4 z(Bt8lq1C&R`XUMT#5j7&kf;6(?cTK@2_B^u-DC(KGO!~Wv+sJs7tsNAF*|(*`N8n(V%=qXb?4Yw0LLBec;-kV22IZ?ouqNQ?3bk1~`PHqFjWQma%$N-}Iy?tkcA z665q)rQ#$pX|9iXlyNHNkrci(M?;LXx4|TI`Ewz6p+*xktF`yRnL4;nGUVyEL}x>) zPU~t&RmkR~PGqI`7Rr=Wp_@&9`IUa5`u+mOcdUJ-YYw;R)Z(B;wu?Kl7gV;2yJ_)j zip%nfb%BPJKS$H*o?~O)z<@&GDxE8Y!l0?OxKTYR!#!+LoEpR!X%mS-J8iyAR({Gi ztbHMyKvH9GJp*S8GBe>q`%9Ti)(>o4E@{LidXkV1X4t{*g5u`qOY>R_iyy#Diw{yE tRI5oM%=sq*w&^{#GQ8CpZ#8}siMli6y+=36ViE7%3=U;R!iv#${{euV=Boez literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/kit/event/KitRenameEvent.class b/bin/notifyz/hardcorefactions/kit/event/KitRenameEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..f590e085948987fc57e88b8c0c24bf0532ecf5e5 GIT binary patch literal 1618 zcma)6ZBNr+6g>|c9UB#7gYoKwIdLnn3Md*Od?6Z*3npSnWA%3V*4`OshHe>lQ{VGk({9pr zx*lkd4FPdLa9h3);6qz=%d|~zn;uuL>AndH&(@r}VeK2P$@}o|Mfv*T`s?XGsqANvK%N!cR&fI(yjoC^ zMut~+R18Dq)m;^%P^n7q*dzo08lqan$nB3LSVjJxz0<4IAoPTiLn1+Xom2w zE<7D4PK>LJ*}X6_(~4{+%KdmYci3!&)5w!RhSMylM2s9J%LhKPTO;);v*)zkx_oBx z2ZVg#145<@Qbl8dqAYAm_bOJ0m6>$o32 zd7Db(CMewENMi$!G#Y>?)xE literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/CoreListener$1.class b/bin/notifyz/hardcorefactions/listeners/CoreListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..5378ce5dbf200f47d0439730e6e92f4e08df6360 GIT binary patch literal 3318 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 N$KRy)Ygb-U^M85$-Aah#?+F7-=0{xW*99 zD$_(sIQ(UOr_8-IvuqO_DV31HOW@`&WVWO#Z(-KtN7ANP%h z@arbEo*U}{_uO`^S~0f~M?dapxXm!#vSDq!=(vjkhOR1?fBVAFm(86EX&ghyXc%Tl zpVLnrBe=&9BUeF!ZvtqS)S;}7+$r4#g*>h*FlCr+4QQJR2+U5xBe+rw-K)~HYRl$s zvtK>g(!Zk+0LL();|6Xr#8=(AXYm(8^}P4YK#i;8RMo1eI;O09WMrRpc`Ru$Sr?2` zyV~Z}I4wGsO{3&gm$}?>D;k~>K``pI>4Op1|4uq0PHE}>PrRI$uw=n%(&`H}(+zdj2 zB#|#1;!1w(5Xt;kq&|}>gdSR>WC*-RFRkhjkU$@<6J@GzO*ikFZbk}6xV1cXgu(n5 zB#G=JO}o+K-RM3#A_w6EIvft1rw}3j1LgS1dcPOx7X)-aTOMyZT9Q^}DwMA}%s@B{rvFjTmcwb1PfB%t7v0rvn813HCAL?d{N OX%vZzlS@@GeSZKqOsxI@ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener$2.class b/bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener$2.class new file mode 100644 index 0000000000000000000000000000000000000000..de5ee0f8ac42a67476be53a74afed0cceaa1c62b GIT binary patch literal 1672 zcmbtV>rN9v6#j-*3T1&>5f!{swUo;OUJ!~T*p$#@L4*bp|Bzujv?I$b*-I1r>l0}N ziKq|YLmAJM5-wUypvlgh-E-zUmpSL_uixK(0(gdO3{4DE$_?bk&Ihx?y^`&EVuRa( zbd_&9(hr0Zo^RR?ms@5|ud7^@thypK7DJSw&-KdYdbqhM1Jk!Fq7*v9Ghf#}EQLz( zbw@BX2Nmh3M#!OcagSMsc$GV;ZHMm&kDjv7;%@9fJL!FjXVjqZm>QX2Uf8ebm5X zJfSNoi(p0iA*X>5bJYLT-V8J8b3)NQCIcyavwC#UJPVO+MLz~&$S{mI46HFwac5f? z7{m}mcWx;^Q_QdBteL|6+H&5?=Zb|l3k(yDi*-IQ70twG3^cBsmk*rsJJBqFEK$x;;KWEDJUJK9WacX&Zu$s!x(VZlQ;EhF)~nvEGtLt?SKvLB~FB@8Kay33`&Bk&fkfw8OJ0^adMG$;j literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener.class b/bin/notifyz/hardcorefactions/listeners/claim/ClaimWandListener.class new file mode 100644 index 0000000000000000000000000000000000000000..13ac6596d36d0b4e472ffb2902669716e7e06abc GIT binary patch literal 11988 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 On8XZGaWbhQrtc>a@w9RP literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/claim/SubclaimWandListener$2.class b/bin/notifyz/hardcorefactions/listeners/claim/SubclaimWandListener$2.class new file mode 100644 index 0000000000000000000000000000000000000000..0a3ed40acc7a4ff403c3885453f05a8beec5da6e GIT binary patch literal 1693 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 L_~ajRs`>YS=nVwj literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/AutoMuteListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/AutoMuteListener.class new file mode 100644 index 0000000000000000000000000000000000000000..87f51b719c6e42d6e4409c4cf570996e7c76ce7b GIT binary patch literal 2607 zcmbtW-FFj36#q?|bVIrY8Ynb;$YM35w9Sf?f(;@ifK>Y>!D2zwNit2AZg%7DrczMx z`;!+R<;gdnIcjO-9Oc>nN%78XdfHIy!Q(@AXXnoR?w#NL-8=c?uU~%yFpN7I+89nb zZeYzX-83uQD-~T&%=2PkxsGqzmLCX5c)lroUpRrqZQmTL2kvA&5ED(Kh6uy<>wJ-$ zHh0SAbm6)v1{yjTlCD=a3-yHsD=@_(0hp_s7&=Z`juo6@XixXgGDLE2NyO2PP8}Lz z4BI9wM@-eL1>s%d1zRvACfp*oXSrv|@8)DAs8~M3>52b$h%AHVI_G4J3`f!v8v?J{ zd`Wobn7`x{XVf@X;epzamGLJp)`_30n6-S1q8oE49xvf+aJwW;?ML`!(!i=w0t-{Tdxl;Q&!VkW;)$ zobM#SwbbSV&vMGy7!ES*s1)ZjoU~9SEo2HyHSYV;L!XXk@GL`Dh5IwYt6IKKT4Lx) zZv^VU62~F*Ye+Mgn;sGykU*udT;FjZS7-TrMDOf$Q zY%8#YZ_1Hx=3L6#MNxGZg%`&FI_1OE@f?mYbe06AI<#(bf?0WjqdFB6t&j6kX_88X zmr2TpFrwo)PLPy|&gQgow+YmE9HTg?fwb7YE!j*+kND!t1_S~i^_ z*>(Djp}h1mqvJIx)mY$$s_aA_uWPu}N?u5cj#*r$Jd`ZI#)D#|c}#}mEtS4Th9afO z!iGq*{a0d`V@Rh)=G?kb;fum32;msA8Vt!u$(VONBUO~~r$#byT*WmFZxR(xpvxll z70QS0dOF_1+m!RbzL|m#;=Q;{X#MHUhR5^;04uSbl9Mg_XT{i3w)J1z& zt6kQHjKQW(PSs0z6)CnyoVdK+w!Mt>QbR3-K0QLC$6T3rF;x2 zpVWzKMrt@^$M8NwpOG4&F141twcL?Tl=3n%;tzG)me?9Co>IX@)osR*Y3a7=hO7O{ zML|Uoni=-A>|Ec2sr)03YQBk$(qmwBx~_b{iwl#yrY=DZUlS>hmnn6lyj%B*;=Cm< z&mKvEWMK6M&d3co2;z!A8izOnNhVM-Sge{GKxF^z2ZRUFf2*9xlLE zY@;uV0o??WXs+5pZvtY=1l~d8hXc#lIXT$C9)_vGgwep$ZTKFMdqXQo-Nn`i7?`_{ zp`m4DXy$qP9gF>dJ1cl$1us27ZZ2`|K3*pCcw&+s%b0H9VmmGmCf-=Vl?L8v!wQNG zlo>{&KVm!?ZJ^5V5PL@>$w@as*yN7b!AJO*IE>-}KEbENqmG~P89pbUx2UCmL30s&N#5tt@h5sU?A7p9_amG| nhX$shC!C=SI=~}JY|FGVDnnnZVRii$L|R~EKEEMvZTR+Y812N- literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/BreedListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/BreedListener.class new file mode 100644 index 0000000000000000000000000000000000000000..2913f7418c4f4bddad284e9bd96a95c234dac034 GIT binary patch literal 1227 zcmbtT-%k@k5dQWG9G2rZ6cH2z(Uu~Ig1%HukVrHsO2qWRw{5$WrN@up;Gm7`@}|)qME^>qAc-tI*v}MB?|1orsU0nVL$5{^aWx zEeEQiBTaJaKIzD$g90-b6DEPrrC;|{Sju7?6E<=J%m0S#;3_5s1{x~f)L|5F%aD8o z=JJIO$b>6ff293JN}QMiQx2waoj1`stjm}Up6@LElCVO>kezWbYk&s{yrXJ?Uq3_c zPHtIXr2{{?`M>wj#w~&I^W~@L8^JppxBr-=^k}`I%pCM#0eJ@nEV7bF#WZu8@-GS% zbF$>%E|vwd=?N#OX-?moJ9E5q9TAxA;CxB(oD!L0vUis_w+V5Y`gdYkYi`NI_K;?G zf>u~ln>rcej@Pqn9u98uIx_sb`6i9z3*dT%noB7tyBAN8{m6|4higw_%%Y!rCw0I8 z2C4BaVwhedZLd*ElW2=Ji*k6e_z7btxMt)H%HK%`hz+LcWuhT|CV4ImYA0tnxy}*9 zGP6TzQb*KGtZ|I`IM*DeILQWW fHqG-3ZJPD35XB**d$>=W)g+IYqH&E|3lDw*d2KSg literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/ChatListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/ChatListener.class new file mode 100644 index 0000000000000000000000000000000000000000..bc72924f537e2d91bd6cf80677c05d7515802cd1 GIT binary patch literal 14075 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/FreezeAllListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/FreezeAllListener.class new file mode 100644 index 0000000000000000000000000000000000000000..b5562939146814fbce1ad729bffa48eb8f632ad9 GIT binary patch literal 4231 zcmb7H`%@d&75=UeS`Z7ias0qev1}(cNEkUb4xzH002YN5hyvJka1wVB3tF?y|Vi!b+XJGg4z2~0uo%5Y@ z?$y8k_t(Dz7{H$uLb=TFcvZ0x7 zdd$)FyZW$cPF7bHLDL`LcqTK$q<-rxz+KD@Hl3uTn$0wn-pX zGAql5CGgPXt^mfXh{mdja^9AVfa>bbs_yt$1jIb`T{bMEd{tne=bjbz-Vlh6+KYM| zP1vWR4f_R}dU|iPLZDNHf)+WtPem)@aU8}`1xEzZ_Xu1?7mf+EF6-r455K^np5Dno zko@UP8}3K9f)5EC*s-YM1QHB5mH6S9(kyLRcLYv{b@}m4hlHs46dq7;THr)Lb0bj| z58{kKhodh`qMfYd&lPy2CkQyqY9_c8Qksz=-ZyDj`gEnZpgVKgf~hmMlXhM+Z)lDo zzpInca>1aX;oWKcV2Q~*=`dVBq+^bKS7)-3ROZS)x5hv%gQ7k25@Bq~%Wfu^Kd904 zV94pbT`X$WVtUkn&+68q?sy)?SSB0`oC-#wu{_aLtgx9lNxh~OeL5cw*_7p1UQ1`a zS0f>3v;^cKkKIWShI2MdV6-(Clf(A~YmKQz49^e#3ALCf~5dYSz5Q$KnV<@iciG$4R@% zAjdI*k1BXv;A}9K?_*NMB&GxuMwGc&6gUzNrz`|%+*AF8iky^gru3XGjm@Z-#hl+e zd}l~wSVM^CObeLKhYI053Nzv1auWkSf+a{ z!#SJT8X~TymLw@K7^v-lMkg>TN`y0$y(Vxt zNNQb#0WW}pF3QYWtyE$K3!Dqa!9UShbh{v7uvY~x%oX&6>-F`7;U@AG#~~%=T4KrT zJ^hKCscWvDSkMzCQq8rK()6dK>9uVZYmwj8qTKmu6`#Rp1zO6sFV7$_CANcP&mY9| zDn5tL3$)1wHO1qcJ!TiSnK#W|TNenonfJ+Vc_h=#VvReh4hFk6O|f{{u6^+ks}=B^ zZt5l5Ap_?_x!@l!p(3t{)(Sa}7w}C5-(Z6ZWWZhtklWfR|MK z2>srTiJn?{-8A(@xiG_&3v#rVZgSUFqiftCQ`^obFJ9Fil=b?%f0B)?`CnUny@FR2 z{EQdB9g*5=yNXMAZMVkfo1xPJzmS3t$MFh&rQ+9ei@bCB0&?~xfr~qR-^)59pe)u- z=SIhx-0a?=>U*e9Y_pm`YsKh$3r`GMH}ck zLtSTg(RBeAJzWD0bjjdt$Cae6)E>H+d{tcQd^gd@q0~PxxQ>?8dl-C^IaR#aHOmRp#|D0gRxNz!HRZ6617h0+;bP=6QXRNtyJa)g8QrFW`#=-;QZ~316l= zo!s#ij+#7II}mO8ul%|8H2)5rqU2ZcwFXWA}n40G?!R&5)V7K&o7-!@fk=GBqR{EbRdfU&c=w;Cio0#&sW8E=eRm-N4VM z$mtF!FM5p-*e=Lz8T^_+#JClXeNR;@JGI7-M+}v=TDDy{U1h*Vub(z literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/FreezeListener$AlertTask.class b/bin/notifyz/hardcorefactions/listeners/essentials/FreezeListener$AlertTask.class new file mode 100644 index 0000000000000000000000000000000000000000..e39ba15bdf8f37f093fee4880b2a1f5eb525ce40 GIT binary patch literal 2595 zcmbtW%Xbr182{ZQFf_f;5TGK@DlMcB806tA2rX$tBWbBkS{15zJGn`xoz9e*Nu~9H zZ?|l9?_nz*sKkZGwf})@H|oOo+WOs@l%_|Dhtr&snLFR>e&6qYkNf>U-+T+;6h74u zVaVE!ZC*G0?VG~#^sFo8qRiJ>?R}PX{i5(@ zG{hJVIc`Ottj^4szU~=QvQ#Cuem)?KR&85MT9RS&oFx{d%djWkAg?y?7xa;UmnJEH z%JkZgGn~zD#6xB2jA@(xS%xdAjhR~C-Oh1_SjH*ICNON}(6A+rC|Wq0kYI?WI>!|! z$*~EW8CvqDEr+YKlhQ4Qm?ZO#A*^xXn(Dhwj422h1~=sO>JbqXQMYQx@i_Ks*u!vU zBfxU(!+wS>rk8b{MQJnaPdx;n%gs25Cp5G%>|XEGIiAEJ240c=khnf5h2>8L;Porz z4vxb(!qDVNe}xxI^>>adW+z7%x=ELqS<{t8)0iRXVyRrnKgx0JKHqUlc{wkwSZ^<& zw4dTQfs=G{q+Jkx)fK7&lzKK)Kh5zpo?&Pu*ZQbD=H&=gjbjg#%hK>^qur^_{Ir-C zdet{AJ>ysw(McfPjOUQn@I1rL2k|-1;01-EFKJVUilTLmrCgm(cFv(sLoX%Ks+|=s z$9ZJPU0YuFX`>Yjmar@OrO9b>gNj*!CP`XY|Z^3H}dyU!B(OGJ+q9VOx<)FK+e8+JWLc<#r?<3mg zn1n(3Odb||*R(6DVKcO+!Xyn6BV?o-^HxdGK}waeWrl65nWi`zs2URit-(MX)37wm zP~J5-nVAxVjpeu;v!F`a=exr8EaA&Oi&EOAMZi`)lgj5vDzmO<4SNw}bJWi}ENY(} zO>jXzk@m@TPf=B)>6_Bi4RWYHiN=WNaa1wSu&YoU?aN&lEMCp$h6k?p4`lns@|0l7 z|GE=L1=l$iut<67N*ZD+iTWEMrKsJ4yjGQzU+D%5Yv^^r8^cny^ESsjc$adNMr~;* zObGI?(frDZ(XioR{e=C8q3wSvlv;npBc!$#d|}KCiMjfOi5HxzYeg=* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/FreezeListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/FreezeListener.class new file mode 100644 index 0000000000000000000000000000000000000000..adb0dd64447fc044064d89d7926c03b3695c5a74 GIT binary patch literal 9937 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/MobstackListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/MobstackListener.class new file mode 100644 index 0000000000000000000000000000000000000000..4f46e976200bc5ee035bfbb6afed10e9b4a2f6c7 GIT binary patch literal 16634 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/PlayTimeListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/PlayTimeListener.class new file mode 100644 index 0000000000000000000000000000000000000000..10d016b5f0859de5052e9e8403b9393a2c9e039d GIT binary patch literal 5241 zcmbtXiGLJl8GdH7$t0VBgas19QNmHk$x@3w2&F&(N!T2akOHmR$!3xa*`3+W%tq3R z#rvwZYCXXF#G}<#%R)daRjakuTkBEp`}i09iO=`VY<3bzLVy19%j`GvecyXL@B6&( z_dWaH3r_;rf`6-sDA;bw;hEld;4C^V+v@JK0HeJuK4986vu4`DHsi)mU zZ(5(|H#0^um{bu}P<>1v*Ar>o8cFmF9y3y&iZTUtwlk6#%#DqiUcwlsfJ9*vcX+m^ zr-d+&!n*XVf*X>S;UzMrWuzQ^*h}O*Go2W*atY6|$Bjfr&nEhP=}Frf;g&W96@BK2 zrF%KYP|*Hj_isx|v!$LxhdOq*ZKuRVE}frBiv=Y*SPNLT<-`g4o6hzzYAtQzo#5F9$Vg)4) zjRPu{D!64{ghq9DGz`-|z7wh#mLOgM1NvU8Y)q)Vx@w_tSNAHugY@Tp zYZcLRV_1QDVe1;2cr9M~z{`B;^BmI}q2I!$bs97*h;ekih7H2?xMQSkeW;KqyLC@j zP?cnobmuaIhSRSPrWyNq(oX5=0o^ghd+;&pjhc+!j^wQFT~mgO82Ztof!7d11)6OM zgAJ$CHZ27$(;)GgAiy&m$tHi<9zhTp{zKAcO5M3U(6AL0P%&b7J_HI@HZ)GtNawtX!1K0B+=km#kRHpz8p3Nd?7&V1l@xi% zGVjS59YYK_h0b7a4DHyXV)wLi)HlHzmeH^mFC({8ImaQ)g4a0Wu_N(X= zOn7l6NJA1`6q3z(3ThfcdF@xKw$4UMEtQBVn2v+2h_mEDD2EQ@Ov;`&hr}|O3e2Gx z`b60J=MCG`CPBFY4R_!$(Ie3Ph3YJzQm{DitXL`=C1^)A+=;u$568%`Mk`o)6$k_Z z^LajH2y-Wz%bARD_00H|gVbLj0As-@7M_%bAy9P*&6Y)0rp2_{a%EUlu$pfOWt?B( zbB-ihqKoc06MbxC>;y3k!_;sLV^CNuH}Qs};SB6EJmzu+whA(SK`}Ksp&^TV zNI}yxDBpHOriAx)1m7vZMNS3Xh!+JEW;KlCRYb=!j&s41f`m}hZBs#dhkCJJTVuEn zCse#z!NQ_c(eE_82KTd&4?A|oU#ehzIDm!PJTnq1UaO#XCeFKZW_rkQ%JF(?nii%_ zF`UF3MT2!kK&88%s6hOavoWFf5ZRVjT`4a=4Bl_Weo8^7(NB{7CsW<4m_seaeSF2 zcG!0I=&8{?mgkT-J80Tm)qftzA{$oV2@Pk(xg{##AeMf8XTXSPpMSCxc_7NFFlAB{ zue-$PqK2=E9#zGK-L^DoKu_l=gJG2?QkG%P^*YA5Y3JO66m}PROcfRUDGldvSd6}@ z;Ym@;%hP&ha7bUjSyYUfH0~58--ibTah?&}`|b?N71$X{HvdzRa^J)ERXkTHEs~Xj zOB#NFAJX)3;X==_=pdb8=882W>Sn_Lz}KO0>98 z7ndNm01dyvZ+Z5}6hA3=E^KA6(--a^!`$^r+aAkh+d`&a>CCi^{S#Ruy!_fHeU)?X z4I>{&Zr9W4J~pJbsxtg?M&%1&W_ncP_adAAq~Tk5x=O_#tMN2>(_!&e*q+vTD|A)- zou~CHkh~fmD*mb9y1AEpUY9k=Q2c5 zN0H0W98;5{O`J>cTbys3Ilkd2UVj;`Mvz{C zSJE1uv9Op=Mnk!ia0)J|pJUc&M7xL54Eh?7U+uRDh~wC3^VJlWtOw-Zc}Gx#hK z{v2i8jMB@5w^W6qqD1AvQ{~wMn=do7BmPI=GT{tXME&_yRP*@)(0D8e^ML{gU1zY7 zK_#4oASn=SmH;&QKU2Zy8VSVnVoB2ld;yrmmm;`BAfLxqium}{*h=5ph{{&n%3E9q zcA^)%LRoqsz@mm(lc$f0^l=d)mwC&lckB(Y9WZtFy(XyEw>cGipW zBrYg;_!KG`-+JQ=q7{#FnIA8oC3_gPy`jupHyM=pTQ> JKkzTq{SVM=d}9Cr literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/RestoreInventoryListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/RestoreInventoryListener.class new file mode 100644 index 0000000000000000000000000000000000000000..c48e02efb55d6e51af5266f9ddb599d329c0d765 GIT binary patch literal 9850 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/SkullListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/SkullListener.class new file mode 100644 index 0000000000000000000000000000000000000000..929722c33c2c201de7ee9ba65518a705e8a7dcdd GIT binary patch literal 3992 zcmb7H`*#~x5&o_$Wo>zzq;8tlX_Gij-&GM1x;o`)T8h5wZ;@6B?U4ZKhleTLjv3g-mF!w6I{gA@dBiLscb#og=Y$ ze0DH893415J06`##FEL_*r-5TeBD;kEm%$_EO0}F&bWr-P8oK|Y(}fVwrpy?f5Ect z{y8&i8fk$odApRc9DzgehVcxq1vs=8;J8xZ4OaHQ)sYj;lx_#?Tr8AKD> zbZo^<0!>}rQ!Nmlu@wc``Smpo3)Ap4>oq< z`YDls<(zTbSTYO8O~cI!^mWBIB}1muT?%>RqB2Qg8BY5|iKmO^lvT9o+<-$w4OJ2X zdpDa>io=GJw#@=>-)3bTR#C)oQl@R2=_b~i5NOU9tXzS23UoBEF}@}tGZG)0jwUCA zxD%Zk4hV!^V^($Cg)Y`+#&lUe^H!!*P$9@1cQ?kjTE~CXBqQj#EM0je9g466pGWbED%hjtI0cq^QcC!0n91tL{x|xE1%| zehse^xV4dtj@MUBjIJG)P5c!R(m&jpqv z3n^Dv3dLM=G3gqqg%%7TqG3?rCXZmka7~uKt>ZYN0>R|SNwPw0GMeCB-mt2I;TD`g zOvA9i4v!thNRvx>Q^y-I!rB>+56na-NHbm|H7Vxu1QI$%F(#l9%;Sb@sH6-AaSU&g zEllNIbxl)qA(rf(l46rOPJ+GCN&_;^gei@5*5_j#ibWnPJfvJ$!r06L>u6ue{U3eSr zuZo4cRh<&pd1Po-f>p@nNl|T87i7^ZW@ousSkQ1)t)Iz8t!VY^sKB(aX0=qX|< zgVH(KjCDL$v8T>hcAvs$G<=%v?(x_oq2sf7qEfuflFRsb$k_H zqpXq7n+}_YgM9twYV&wLRaT}oXTr_+2E(4@O3}eT(%?mD@R<#E*7mH;lv1@L1Nyd( z??|@;)59d_R-DK8bbKE_5YU+{g^Xlij+%OGYbVUpdHhJnvuYM{vM7F%AAhXlImvI5 zUDilz8D$-p)JHd0@vj-H0zQLboWKEgBOZYkKD`n&@*RZX#<`4;i8%d`Z*oJ@*(O)tf9Yska63>?G1%@d|#YIM_)ixJ?@wVpYe5)mu4J`n;@jy*4NN1d5fq-tE=%bU>x5nVZe$ zDnBgvzX;rR?ei*xr7^g4nB_^&no$y{M|}f;5PViJFV=-EqvQq zk;biP=Nt8uRY7aJDCwglcoX@I&wEZ`FFH(mb%(m^U-WAW&$B(xVMiJJ%jkX*j~px` zl;~Z>y#k|sFC)>{7F@+qA1+|<3XaXJ;35AChRTRv!uU~tyT6R&RZJfZvYC)+!{|l^ zy(-FM6+dfHX5k>msM@%NG1@AKDvreN?=~X`3rce?<&q8_4i)E^2{ZCVFee; z_)6Q?%lPIBzQsow_;&>e*G2Tmmmdnk*ijR&%B%=br;O*H!QtAWvh~77TV-5+0YBx} zwqI0Klz^1o-e1PAXk!(>@sVe$Q14;cf!lTvhgf9y5U9iG;QxL*aW7MKzk>HjCE6Oi zmkIChiPSc-UKQS_@dx~o@OI(}!uuy8Btd-$O|SAbph0Ljr{O*gf7ZxqKJ~c#Dngsj Unkr`+{`zm+%v=6WJ3jp5fBhkJmjD0& literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/StaffChatListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/StaffChatListener.class new file mode 100644 index 0000000000000000000000000000000000000000..19c06fb221c00c3d8d4db6ef1fdb2989e168f925 GIT binary patch literal 4319 zcmbtY>t7Vt8Ga5d4lJXIs3^I)X$%4aYa{`6tr1a+1dsxfhNf+X*#nHu&d`}z64G0G zOVXxSn_jeSde^owZDS%r(xz$Crfqut(!Zb|`Z*ta`NckGW`JE~L4WqiAkY=D^jX<62O{B;2Cr?^IT22!oy|783 z%2z-pfduaAEyBq|_!1lH`c94pu_P~OluB9Q2E zvoeWt+@PZxdJ^lgK|_r|`a13D*oaN!JRyUKfIwSA<8`yHg1}}S8Y%^D=(QZ#pU;g+ zZ`c^Kr9e%uYZ~^5;aTc;JeUY3)!{lz+qyQD=&|*_4EnBcTB4z+aU_YYxLrf4NXDTV zil5W*Hr&CjX5RCt->{XF3;w2yd(?sM)KP_`K*h9S=Xs23%MWFtrEDm~Xp*a%bnH+_ zHFRNwAWhfF_R4YUzm`E|p6oNG;zR4MGhiDt(o;YTkA~i>0%4-1QtjBI0d$3nvBi#~aRv#mFDM|LN6l6=nPnzRVUKZ{q{yyy2@OFXS zCBuCc3?2940Ohy*kergElf_}0GT&M(O3}$0M=Nnqpw?eV@zzML)^MO2hj2v0VSz2B ze52zX=w@6@8vcOva+dG2APH=0=v}HaLxE>G6PZSa*DmzvxDUMoI%B-ca7=02D*6%) zqbj`nF`(fX&rx9SU|5!Pyc2_wW<%1OR+?=p)+`#%RAU$;8jcr(M3Xx1$Gez3)bN;N zGp!?mnYLSq6*A5TmYwc$$ttX^gd4?!8s1Iimz&q|9=une(h8(!1TId2pe6+ZphT*E?k_Iy}r^DJ(jRi^xmjGs@SWy~4#M?Jl@jrP$|nd_g%jsVX=d0%Jld zoloibl8S_Cb_m(U@rUqb9bZ8MkIEeGX8@`M`kIc@I1^<`7ds5smP6d7vTjFl)|qZD z$7)O^!c|?-&uB4&{u?-@;hO^63!Jgi7Ig!COUHIJsG|EF9pA0Smy^j4a8AQnfyQgzq~nM9QRIWDPQ(-h?pvv(uEHvqnUe9vq6kv! zXYrhd^D9Mtc$_OX>i7wM8WqGoshSgkf&YWnQeuT}3lYifdAy+Eg21koy|&zL9WUY{ z+dpa-M)suPIMNo_v#M}@;N{IA%5cSo+tt=g6)s_3!<@i9E7K_fpyMUH%<468{9y0V zE`g3!q$&Z!I`#{J_Ih)8Ql=(scg(O;CKEhm`Kh@5vS(6R%U9iDHZ|^gDT90`rI)I2 zPvV#Om4;UZcB+&xrVMjZrd3LWjlAm1RX3DAl;?fIyYz_b<&5As%bu^}*LY1}0|7a- zu;6~z%d#YIZs-{uU8WvY;djUbov^bPXe}%{QMVu6`pY+IbXYVka8uFFqE3SF zVb8!`AX>ecEa_Fed_`Qd|E*Tuj74V|8*=lWDUVpH^{x$XILdqvzDV;v;6TAw7&ZCj0t*tUd}q#a;0Icy10YQx{j7=?RK&p*BmsbUx7 z9iUysZEe#m8mpdu1{I0(<>xt2P7q*CIC*mcskJd&bGSxSa{-(87_BWvt7>`?+elD8 z$5mwoNLve#suqvef>y3d$M$yeNw<}C(|QF@KeS^Ocl8mmb`~AYv&fvr3(Ym1^XMw$ zmGSV7#4L`^p>G~T0`qu4U~l3aM(Pstc%Q(lIMm;=xcETJ%a9MKznY0lu$t$=>M)C` znt&g(n4ZJT96rLC3;5(Lo}%H;MHBP*Vi^?V(*kEMpAF4@RiFgY(mn#tRzD)|>FGGLJ>*#9X*?v5WpY2W5B`#q0EFKJx)*Kr7IY}vr5{Wsyq8R^X zk#WfF99pkqwThWY;PFt9ZFKaV*ueO>jj?eDqvHS?*)=!eNq#>?dCpLt*Lc(a9c}mr z|3C0gzRDZ?EHb zjGPM5kKf}D41oja#vA-rP8%-%h(Gb$o3!|6dO86Wa&1_1nWif=2o1Y5HW?b*T>J-v bml^lvOT*atUzi%6{WlLG@E2|^!(aag_21gM literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/essentials/WhitelistMessageListener.class b/bin/notifyz/hardcorefactions/listeners/essentials/WhitelistMessageListener.class new file mode 100644 index 0000000000000000000000000000000000000000..6abb3987c3e2f9266854e1a8b77bf45a59f095ed GIT binary patch literal 1516 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 Un4E$_arSwIyb3rf&N;8}zjd%i*#H0l literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/BottledExpListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/BottledExpListener.class new file mode 100644 index 0000000000000000000000000000000000000000..4be875fee20eee60fb64c2e647b15d7c6ec8a5b5 GIT binary patch literal 7187 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 kWc|r^r$ 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 B@udI& literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/DeathMessageListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/DeathMessageListener.class new file mode 100644 index 0000000000000000000000000000000000000000..e853f83d79271b5eb7be73f47c86fd702ef06a6c GIT binary patch literal 10727 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/DeathSignListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/DeathSignListener.class new file mode 100644 index 0000000000000000000000000000000000000000..eb3f15622b6366e511b66491d2c825697f4380fb GIT binary patch literal 6978 zcmb7J33yyp75-0VCT}u%U6OR0LTRC;&DvopP?FM`Hc68)cRB%?d6NZL-sQ=yohN=M_-WGXZq*%@kz zTIu0#dnn$XT{hqq%-v;OWQAf@d??hpV^=hiHc%`GCXz#;9b>z9+v!mBqG&uFn)*mE zuc^7Qr*)vaZF9#!TTgR%prbL|EGTc!YwAuX?f6iGpm;PkHe|;IC$`UMWoy>#maN&^ z^e6n-zb+E9<92$zz*AY(EAVbg3`Pyi5iC4>uZ?4NY%rP(U^dE3l*8oS>-5JZn1=-h z=F@POQ=5jZ^rl2CkuP{YXM2-iLHl$v4NC1|6G!1_s%&&u8dAEJ7wU3o6e~ps(mb80iB_};W+$UViu=iCMQM7ow$g2I zA<-M$uL_hlXfCFQZEC2W8I#wjJ|y_8?z9!z9kxcZsb?~nxnK)g+yu+g;s}0`axUlX zxbiHK91pdnqa#{=V_sdT1YPJc&@HHN35G4k%C=%A&VnjGs^k%7_l8p<%(PCN zttwAHt7k!2b0TeuC!ILQ#JM<6P)cu=mEmaG609r)JnzT|Uu$oa95EjN%l-v|<6MT$ zAZ=m?B7{A~u-d87m^I#Ejga^ArwMFTuK~VtwF4*Os(cQa7*<8n-_+Q(b)c)cNiFU& zv0E(`_cynWyhE87*_%b6QfGNx4EmixuXP0u(znBdmT(vd`^X$82=u7 zB-)Zlj#%lGi7{M6gu)#?15J(n1Fc;H;kJ%}#_+aQ79Nd?HEKnMqoGJ*WJEVW)z;F~ z5NfefX{F9lMYJx#r3S_e9Udn)MohdJZy{MDW630QN$nrDV@zgE{w)Dqj<*`PLQtas zc%2)XxDsz;tafTo6arhOsn!8pg=-94O+wRy&`=^V6q|B}KE+~e&$ah z;>Kjs8du#}P+fVBiywt8Nkuf2lht{2gNb+GMuEZnVDyN7MK&?Cu+mAYtCYRT#Jg}a zQ7AL)CWnJ(YXWq?3Jt-3;f{FTRv20fJ?2Qsq_USxovVCJ0tcFIh+v zh9(hLZI*pLK19!I3T$;M-HuoyvOAQQ(p6Cxw_w*;T%}E~owC^(8{JEz6|FkD;|l`(?Ji1H6b}hlXfC$rO?(*lax0dWjmkU0;=;P(e5K!!1cLiad=wuevaU8KII198?r*Bt z{qDy7CLX{i7-Z%{&Q01}xm~pepEgiXpyXAIrnf{(+q5wmwP^IrXyv7vRi)SYxlhID z;hAG}*f*t^!~p~QIqkWE>T=RV29G*HWCuwzdzQ`^L@mG;^J#MW2yH60N^ua6oA?Z# za5SnRj9J84!OhidcMIUN_`HG7O_ilQY03C6;3+kIrW~#x|5{wv^bKGizGULdc-k3N zwrL&;jxKbFkz`(SyihDGw@ZxB9}`AGA6!`Z#WM1C6X~t!)p9=N$XXu>02hg zjqf<^ZZq3Ym@_;F_(Jii7aUlh#rF+-udoqMy*BX!{E*vj>f#Zkt+$zRbZi? z&(3Umm^V`|=>K#0or&M$4{RudG(^?24lB)}HWp(Y=q#W}?lZSf)78R)NM~_Tn#t&W zxL?gOe>U+KHL`db+q#t5e>3qs{_d3ep7Bw-xTs+3+>BDyTZ$L(qJe+13b;b$qK8g- z6aP}vaq-ybpk_#cHaFJ~BOkf$)4FJZ+fA2#CBm+tc(-H*5r=gwI4LrW$#kTcq8=6T z{Hao!Wza2BkjiSii=7vMX3oG6uJ zWSJpLxmn>GQ;wD6$ZVSvx5WXT#kt^Xx}w(`N@aztG=%1s=QT{dHD#4lGA-iKOE?Y{ zo`|#K5bLp2n^GgS*};ePSZ&tk@+(`7$pvn<+LVwAoWa0#P_HWJFDfl3nR2pff@&yg z9<%JGc_wVQm37v|K)$H%Ox)JjhnQ-mgsAIMsQYb&FwZktS1`r&hP> zQINL>vVcc*X*H!y#oBMDw%TbP3 z=uj!vZAy1*XZmtW4I4XNw_hZym0N_Fyz zY5KS!Jl_Sn6JyCpw1qv0(B;mxsxPZcxz#FtaV%#r5C8X}2#eJ{4QIu2b%nye{rpo3 zlW%A7x6>)1{tF(&?Ed|jyB8Ic2$nCI#L`I|w+|~n#g|2>Dyy?< zF5`Ae(TeK*sHv`b1hqAjSUrg~6R6-*eFnU4tFFnQ$pfX)qctv|fxt?5v5Ll3qJp}Y zqekzrz|n^-*h(2{*5(V^`8)@5h=N51#Ne$7_=*r^O?jUFdbxJxL3H--#hKpy=nL0Q zVtYs3UaZXE{36sDk72OilXH0|U9NUK?(X;ImTeV@*wnf&w;ty@ol*hn?l0bp3lHGp zNnF-_0B_IW`XbcUP2!z>wGYt#+?D7~-wZh5T(C zXW$B~*Zx;KPT<`dJi3GT@QICs$JJYKD>aw#ApBmuPXm1$Zs*DbcPXdL9zMT+J3fF9 zMsWx3)Ij%gO(9fPP1En%kB>~iU*ny`$MbN^rYc|)jcvkQw76g>%fV2F2k}X6py4n1!B==wh6zs)!@5R!fzx+oT{6v{k z5%hDnU-I6>m%(p6=u_VQv34*1l)+z_0~!27(3khVg#iWq^fBRP(Z6}jsm08yRXnM# zCQNH_CfYazorxaw@#^LR^b)W>T#s{b6YpMb!+8w$fR5U^j_bLo-N~r^o5ArhJpaK< z4A(r|fdArujNxJ)&tJwXngkbXXnowzfwq|XH{%d_$IBT~NTi5KpkluUMTfX`iKf6l z1Cs_`FmTX7r-1n59JOm_mo1C1%2V-oBvElaUjPbj|SUnz5ej2OBfMAHjq4cBo5`@-k#@l|k%MOf56T)1&#hT* z&B?*DoLUsiywrY{2Fk}h+T|2El@+m*7oexfTEa7gg>pK<@k>4JQ{~l>YM_(?tOwph z%#?tFLy9#{1dLD}G}u~T$O_ihL(Cih3=%|h4!rJ{)GD%0&NvcKp1wV_7}!88*N1B} zvPrS-DV$hGEL--Vs`_CN&efB$c@K`J&=$&s*}L`61F|h6T}5toIHmd$hJBpQU5ev* zpS2#Bxk}ZBTsSu{oM-89*6Z9Y;uj|i&kZz6g`yPlGS=%PeTKI4rhvk#89kh}x|NNB zWg=Xw)32eH)k0T-j=IP1Ky{t>q^GcgKc@<^^syjU$abeB>s<7CAMo%Gb-FvvHN@#! z{yWEYSVZo$;6|7EtvT~sHAM*t8Z||WD7{+FmGiRZ&qmS9Xi|KW^IxLnA_Lr~NG|w4 D;Ad7W literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/DeathbanListener$1.class b/bin/notifyz/hardcorefactions/listeners/hcf/DeathbanListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..5d8154f62b644c8660f9cda488423a3b2e7841c1 GIT binary patch literal 1368 zcmbVMZBG+H5Pp`{7TN=91w?$8f^B(OswkQoJ_wjJDQXnZuiNXkJ-F`S-Ch&?=rN*WtjB*I{lZ=aE+Wh|@Rgc)XggZ?)9 zb3O8oJ#v(zml@t=dpn+9oMP|ndWZZsm)sUZbj7R60Wb_(IER>7owpE2zgb2r!tj=S?U}RfcpnSKbya(LvbUEUi+g9A@Ik zGtB>A5*B7LN9^-ulagc@&2~b&Le+UE+hVR{D$Ok{z&a{cfo9{S7y7n*;+Sb0{d-pD zO^(EhHD$YA;Hdh#)D5p{;U4ZY40@_FIc+zFx$Ft{wrINei3w}ltr>mMkj*M7`b(_1 zA_!zaZ6r$2|0R-28NLFkv|(#o5?AS@kKQCKvKyq;GVP-zNAffK7|PG?BbA@qM>_u% zBcI#W7wH=#Yv4V`>1#a69+xmdlHoGOy0KmpvN@a1f5FfJu8>F_;ugapvVC}Ev_?g5 t`T+As(TCa@f1o%YF@;aZP^P;m5fmtHAMW5T$tX2p5lgg65S~G#=NFR7eTV=6 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/DeathbanListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/DeathbanListener.class new file mode 100644 index 0000000000000000000000000000000000000000..21c6c9cb0d6bbcf1344ee01d6d64228b41db03f0 GIT binary patch literal 10929 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 J^T$<{e+S2mU_bx> literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/EOTWListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/EOTWListener.class new file mode 100644 index 0000000000000000000000000000000000000000..87dfbff3f0012e66a3275fe91f294d498facb950 GIT binary patch literal 7632 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 SZ8#q-LiUJjaJ5*qdC4=7kI57O literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/ElevatorListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/ElevatorListener.class new file mode 100644 index 0000000000000000000000000000000000000000..d76d335d0c610bc4b1351fa7b450b9b78e008c45 GIT binary patch literal 5072 zcmbVQ3wRXO75;B_li7q3H1Z0dSrIi$9;4zj5hQF9SX@XXA&@Aglg%U<+04Y*S!k@S zwYJ))ec1|F?NhL|t%cgfXiK%Uwx6wj_GKUTW#6^$+LsE_|IX~Lvm~KdKEByI_nv$1 zx##@nKWFmTOAj6daDfOZC=D!VDD(A_B9Lre&BIdjw#>slVNwn z%m`eX{6DR4q3yO+xKrFQbeBif*Ci*JK9IIk+q7Zy^W<%C;%~7M* z%$T&S)uJuB=Q@Gf$%?#7wp`t`GKpb}5Q*yrw6_V&4IWe!VT_jI0u>kHBEnW58#AmyfyUsa zeayE^jziuOhT{@OIALwq)8=3_Ll8xcd>%#J@i8M>x3Q}s+Sa*geXL0y*DQ}CHcL*) zhj#i?6tFwDE-{t12)YEy+a1St zBG@1RzIps1aKed6bY;f`M8CjE-L9V6woV`OI72~S311bwq}WzGZKk#foIAxKV;&mw zuuE93;gB5*6i|gN*s9=FB#xjjJ;s}Uql#BU_p#pUF|EKE$6(#l;1iE8(o%^O3 zX_Jl$3aS{wu)rxB606trY>g)q@hi5jN_NJtn39r$I|=tKFjZUwx?&a+(esKixJvS$ zz=Bc}{hi*LxAB}AurQ{;W;O*342Y??7EEhNU_C@W)3;RPIx;XRKFzDT*sdTeaB4tP zVOhlvyoO-wPOK)R<^(ghAmVAbPQ`1bV5Jn?+SS?JBlW&c#p}JsvyrIKZ1(-*m^^)Mng;~gsAiCcY~#cgZIBrK$^fXyUzPG=pjXlX-c z+R!@q@TK$9q_B4joS$zB8fD=yUDL=k6?iPuBx$XQjl$@7V=Aqiqm5Zf8C7^MZd33+ zy5SWbsp9?k09k}?SY_L3L$_qLn}RUY*oED`*JP(43-Bax6&C2358^Hbcd~Vu zHaMkyPnTo6Y;35t(8Q?t5I!uR>aJ^yj=3J!3$&NAhfk>O-cL)==|xi}U#LIUFA4Rd zDn2F&wW6;*ne5yY!QJHYK06y7)yJc>I-1QGQFp|MMzELhEe0ZjPf##wvc||@M43;H z$&PKjDS~@hQ~qZR*#!*fZXtX(%DcCP?(X2&bcY`s?CW?JpoVXrj^FunH3O4yJC$=_%FB1FF9V1N3Xg)lyK0Is; zHqF3Im{*0(cv!_FGG9(+_ob%;9a}G+f`|Dd~_4&#L%?T#y!bnQm%CPX0-LjQm-;WwKRtR7Xdw zS8D#NiofCS-0Lz2$85)CQ&qB~=)_pRRQnGV|CBzDWU>RUY$TYJ!2`TrN1MKLU}IR} zuhO)VjluSfQsrJXqBTJwze0IVq)1q@HhFTggsfo{2&L`RF$K1G9ma#J9@U-~7?ZQA zy6vo!GGrOy=0Y1-V9qAlj^YgVbs^c?5jOId-+g>m@=fC}+dh;pJ%Flx9F#%jv%;IK z#z`Ejz5r%o7T<_^oI`cQGLL#`$KwH&Uf4;NRwU7f|1 zeWB&Y+eVur)r9wWw2fdN^njCebhu&MnGd7}^9=s8kyYFU&PkK5aKA+@h=5J!5sG1@_CdSi!&U|;o9aG7zu%XTs1iwp>EzI!eGv)hp*m` zfjwm>b2Rd3StWnc>*RQS;{-+pZO+_{g@y6>-I!GvU%y8@&G8Ka596lh@B?^r4sWl1 zR}SyljkX4^+)n6l`i|YWu%Q@_kH|=Uobkv9bdNXmX7BN%s2l$xuIH8s{2Tuvwik-Scpfh>Z`O*(dFEmM87w4b;|N|tInTWo zM>(qC=_Ejo6rN}2=k5m?Rn9@?*m6`J!Q~2C6@3*_%u*AfhG=BP+LLU9=JK@eE+w<@BRM&f9{

6}E)z*Efzr%>OwnU<4o6!=tBH@@nXvN}Y*o?;f9W8DC)!~*7BOI@@ zLKc44=^p-42x4o_z=(QbtW3+o0=U~Mv^YmymVZ?n(| z&r&OF#g_{fmz*$n=_Y||Wu(>gA|GRP6k)6&zoc|iA;w{XhVhKi0I}BL!$g5M(A3zl zl^Jhr78DPdltN6#R1H%El_!)Q9n&zKwkZt){|V++SwB<9EZfMnjdiOWBb708bj-CS ztIuj(iH=gWPFoeIsc&rHx5+41-==#}3BQK!gp&&2PCb+$%u74|4zjt3s zkF#W}3n4f~hlYYeoQl&lED_8fHZwUDt5S2iV8QS?$zh}FQ&FX&f4X{FszS^s!EzlV zlsSSkb&SMGf}%QhaYG`s&5SlHq!5g*i?kTQO$HmC@5zs@c!w1eEE~M)hX+0O&&WtP z35S8W84@fi$*yDv?o0#0i%FDh%_pRbprA8qMWR-`TQGeP8S9fPD8yA8SX=8wBhJ>a zp8b~9x5GQ3qX`=b|LtZx>0hilQq$T>d@m_=>NXL#f_??sBd`&hHPGvkc8RA5I^K_S zXfdC$f98qUk%B|*mp*h*fDU~a@CQNg$zy-bb$odOKBXxPS@$S6-y zb+m%j;tHEPsC{foLe@B|*3eE&%dpa+*{hYoBhUs*$3;qjhhbP}c54U3H9+|c$fe@| z?%}4{Zc?>EFq1fu&2H=A{=AFjxxVP{EDkz3lHpu(m`)*34s<3vA#AL)2O zeN^4H!EA|yTfOMPPjvhgKjSRm*Jc7Ft2sAe>64v0UHn4FFV*QHzb4RBh!^o24Zjx5 z7;?w0@}}dr_#N$OTD>-~p}C3Ms$urqO=deAG1{Hd9^+o12fx?x2Q^-m3(D94UHB9J ztl{P1w*AM*)A1Mll~cmt2+Ezq$=RvlZ=5^BdZrHH>SXl~9sk6?7#W(z6V?C|dw}`u z#Vh!?j{o2_T4M3M%+L?1@t9-3hBv5fNFKXyE{Q}LtI2p%$6G3b!XxsFct^)k`>jP2 zIUYIo5y(sSd|h1P=HW2JZSJDuF+2D4#DWw}mjWr|sAtHWZZX*}Gjhw1xU1$(Z6ajw zT%(>@2}fjvE_$k%o6J}u$e=II>D}XN6wXz5o9Yl^K+J9mf{pz_g^i`44r`gMUa~g0 zCLD^{ou!r$=Z8+4T0~7=p1X+;R!nV(3lvsZQRQ;(iRxH~HJKool8pk#tYLS^L|rDy zWG9|VW4#$?bX9hY#B-`^$t*h2#Dw{G(N56&1nWi?;8#oD#c2lv9kSQ`a)_#Rv$ukmN!{Ely+g(&Xw}t{mro^E4e8cym(W|V+(GGB%&?m8cSWn z_>vaq+#AnV-OdINgn7NZGHAqNDnxE#PqZ5|xa-U3e>Z_Sp*&8m`o-nFXsEB~ zL$ja{EWw5Y*i_kv3k3(!R^{@!`p}`Cw^zB#9>t1YgnaH^#Flszh1>muxV#r1EcWcf zv|`V0jIHpwi#<=^qkXtKADa)LkixFxNu&=q2<|v~K)LQh#`P+?T}_jgVl0;NCT}^) zu>xn{OswOo^>p+CI%v?vcCP89Gs^W^$N04C7h@-Gp{s5LaVtJShezQ;a^6Nar*ZY| z_$0NKQ^KdPi>uCHNbkU>ncB}#+H|gRIPXkz?oM;=A?IGMnt=SbF;>Gy4aPgD)6k}2 zySz?L!DsQgp#zTnq`N3(Ap?HbA>4ZhO8InuAHHD6d`v3lJ@sW3kK@tJserw#0+w$F zY#ddA8T2xTGtj_lsb@``Z3jfTK;h|tEM!2QpkXuUVjrHQ^1YksdmP>!&m4PqfOT+jQBVDPRL=T>-uQ-HfcVSdn#X&sVhp!5h`5CK6+iq{9?VF%u zGbZAkEQ=?lEuKV+zd`kG*7b9EK4~%g@hwc$@J&*_jqeO?nA}Ucs_JKG*mvvs^TURU z!`M^Niy!yk=Xc|_%EQ=MnR>gX2frferC$6|75X8(xC=3#>mXjNa{Jte@X9VsWX&&9 z488cf&wUWD^y1b1Xn0tWU*CnfS>%J5T;=h34r77O(~JMAE_r(|W~rsZnp2XNWh4oD zC2v1m5103f$I*W8F6d=^_2$N}iH!lA&$wK`%x@zuv|thM6{}#fD%ucWV{AnS%Y8e4 zgV=!(uH*gR^=y_~d7F1HqPUM=A3`@P;!>XPF1O>~#I!R~>G(f`oifsn|5I|3T`^uf zAw_)3r@kF>vW#LTYhcM}8AEG!V2q4q>v$-6v=qy@WSh)^>nM%!*cEj|Ly!G0U*m2S zWp7~WTNtOwcqWP`Z>l30<-JN)FH6stzpVVQjAh>JbcvVI@HJE(k}11zQ{_RKqVm!w z(-c$@uN-tDW>skiaGp;~qZZSUMy-MrY85EdDpZsVY8CFoY}c~l!rd6-bNdR43-kMA zrc1%rNcG+)bMvrS3AV9oZ+T^}l#v*vUGw{y;5mS^mGBE4;8cdDfKyAEpeYjy6eVLq z!9Mt0%gTLPuPoeLT(BD>_*`7jD~pvhTkrjoA7G{&(Cp$=0Ip*AuI5C#2F1+tWZn4{fcnA-RASpJGFDA?-QKrn+g>5}T^gwi26K zU;}m;olWcf5 z6vBf?tir*0iEkNRwRRk|%m?aml)Q<0C5C-K=8vIP$6+a?sPW;kBWaLQE~6&UMJ&1mUJG@A~Eb+w;j@2|w(@5bIw z@l)>o5yv!2Wyegd7?0a3XVve%CQYMQAlG##DfGr;mTi@e3mhJJ$B_(X1bmUgyy-_h zc1i@WOQ3#WFw+cy-4YV50`0nGoAL7LInzlSb9qysLoeive8zAr##N@Tv}6?pj%^>r z|LreTroCX-WGxUJ(6{uqQlDVWO1D0voKa7*O!Yf$W~`z`@r7(^kl~J)z#UtSxr$N4 zp3j>OM_?`5G?fv<&YAhVInTo&1e#VHtKd*q1p2nIF;!hbMto6iBI?K87*KEzeo8QEr%>)e#9Czi-yhV}~2 z?NZrZ7T8&9$K{T;-~>)8n57BdWW<$8d;pJCf^l0;!z|ECS=3acG8xsG5NL2uO@RY7 zi{8Fuv`HH)?WKdhM(-Bmt*MfcTaFnk?m4GmUZ8tZ)YTEG#KOns0++s>YrZ65;S~8< z<&O&GF?wqrZy(~8AiYI1bp*TxEEOC}4vLd0cQ&df|;7N&(u%LPU1IpZ|B%Wq&Lu5Kx ziRBrIk29w+GM!2%TyM`xoMV@sUJiQa!;Iza;TxccD&4ZaQAA!dE4}#@vQjVmj`6 zeo^8AbCl{Aoprw<@lEEn##PQYJC#VLLpn>oE%6D2vo$xY5jH^G(QLYhMe;_m$aCAW>7>M+G~@O3Yk&`XprDD~ zo9P=_2S4GK8r;D*2q56+EkSEoFMu8N>>xBwI(0<-L$9NAX!tt1uDEu(>DfkWfiCi~ zo2+-E$3^aH^71Z1q~}_v3mo>Mmn^-TcpZf9p!dF63Ur@|{pe?3qLp}T@!ZgB=vu>F zYZ$%&-<9Dt9E=_KCEoiYnumRBc#t{oyNb}uc=uHWE;u3r_gltA_9y-Iw z@1YW-W)D5isKrB15NhhaJg8FhH*IYR4^oM%y|C;A+r1`m9Z zMT&>M!f3aLzD~&JftOgc!$aRiEA(~Q}Y7Uv|e1J$sNEj(F4@d2Z4cY)|jxQI(cU!g2{qYy1wsC;A8c5q~23XZ!_!Bl>sz1OFuY zFX0mku8AhmA$Ae%5`AJn(S9)^4iY^iM#XWW57B=mooGzVh*_d1g(;RuzcS2??(S%J zhmv$pLbFG^v$ K0lo2X&;I}`0?{@A literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/EventListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/EventListener.class new file mode 100644 index 0000000000000000000000000000000000000000..c6bf1c4b1e7528be449ad5e099edaf617a45a2af GIT binary patch literal 2407 zcmb7FTUQ%Z6#fn*83;pZYoSI;fkN8=g`sj0Nug2-k{T`&3>NEU7!JuH!whRO0r8*o zt$)E6T6L|i`r?ECNtgSakT3(J>ciaj?8~>meK~*r{p(u*7A>n#? zW4l}|3g6(;#;6)G#2yJp__Gu=nW-Cg=@iG}DULO}oEJ`NAjc4ycXxOkjcC!KL1$=8 zN^x68IDDnNzsWIdqR0^5KrXShrwV>ye(iTuJ6s0X>k5V-}xj zc+7Auz}^$JT6E0e39TSvqp}~CO~=f0k18InTV-aAkW#7zPqC|CAbucAO&vbktE7dH!ftSj*FYC9gV+E^JztXw-^@ZG>(G_N53Sa72 zN0$0Sl;%yx;59@J-at}RjuNita&@(#t8u6di?^e3UmGA~4=)e{F z?x-lC4Oi)l)Nu{h$&}#(+@OE$Bx|Lw4!Uk~e29ef&iYBQiGCG_PVmt(-FjAre@FjI zyrB1c(-FE4PDb0KiAa0&1S7BTv^^Sqg;|o1Psb9mKQQ(irk+0-euw@<>@}vRwKtea zXun{-0YeGx1nCoGSHV0xe*FVNXL|gCKWB5;eg72aD#lB>(^b literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/EventSignListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/EventSignListener.class new file mode 100644 index 0000000000000000000000000000000000000000..b3fe92b796e6496c4a80370eba90eba4bb8b91d4 GIT binary patch literal 5884 zcmbVQ33yyp75;BBGcU_)(x&Tl-PGcQ0u z!73;yDgq*MJNGRAf6lq* zzNcP%=urSKQ|k>BDV&*1xz4_^D!gyINW#gucG6B~B17?gk?5s% z((QHzlkM4M0|ABE7h9KFk%W~TjCAh3*p9mfLJHwjdN8tgbpL+Gjo7j;lG~&(FWMXJ z=;`lnYw753>xsttI~rqAg{tP;y)*2bHlLHEM)jp@a@EdA;OI{pV#~MnoRH016xKeNwmCHrtiYc11;U8a< z>|AAHHP#R!H|5DQy6Wj$8cLzC&V+#yh01m(X?Khc@3qrC*4~6IsHfsqqSs10@_)Tp zhGJ9_4tL1ODAc$Azv)5x%t70oOdEymez>whPD6_T`Ur56l0B*PSftIhhr3-XzQ4i1 zDGJL^EL4h9ahidbD9rT<#w^!nqzMx*W%?r^IjAt-Z!jl9!s~FlMRrWV6^3oR=kYauBEV^WcW8pItj;h>`X+SGLdFd(Bll-+f(Ub z%gvbRMh{7fu_H7$_Vu@R^~c&e`Ws`rT3HktKx@Q`5807;YIs;TC22J-HAJ>s8CTSK zsz_Kb&NZ;RFy=9~uwfH@*rPBfKAKK5oy303NwB@?wz8uP=i@>H7bt8J4*o}jCi-y^ z;o7Go5fXOHP=00Diva_1g%yk-GMGvYCUU_rrbL1*Q#VIKVPhX_CTU;Rm`+<`(lHe_ zR-fl9k-{D$h(;!5bt(;+aB#7L!4x5S%#FF(+|a_Jv%$++7Qrx*q?nTVtldzM>Bmdj z8iH9S>1U_C1T5K~a)-RfU`C2mVdc!(pD$z9pOk{a+Lx96hlF~KVwv&U5Yg2)z z-XXI$k&5q+}r-iZ-HW?cz=JBamJ|k%-m3G{*Dbf0L?8-_|Nuaf@rL_!KjJgVUN+^K&r<{*v;wGNTwW5;L`>^MJlF-W#ThK(*58IxL=^RwBU;(OFPDlOXs#%(vTomn=X!%Zt2at>296 zWz6}Ki7(4EQ{33rB_w>+#Mkh3?+EA_8==FC3QSKe=nF)g6suBt&x8CgY{Vvk&IV;%Z?-B)gBvCMz^zt)5W9! zsVL+fOKg*Vk%EL4bC-FU%<(sWQStJatxLO>V`xei<(An8epQ%;xi|Wx(jc(L;)MSs zy-rKzdR-Zw#qSOL?j#*9zsJNM@JITboju!mk(JP zNiCU6Wi0)hiNDKw1=oG!ro8&6iGRuEqk?9Augb6u|2FX-yg(xCOGd4PZhtcjFf5lX zIA$syqs&xlArXYCif-$BU4B|ASH&u5r~r)>zA;ru87y~)Grh$t0(*SHZib@Q8_HFw zDmN7GgH?GAxwob=6>pP)q2rcG_ZFSCyukt>$FsDzV+tgW7G&a{% z^8`49z;#fsoD0v0mW8HTB&V#*T+so?_3mINuB1HG%-cXh!!&y;NX+PXiW3g;Y$GHh zC5Ml`&HC?mYzNu%cmql35-yv=RmScln;UFe={j8b@|H|9o#v`bnx@D=}VtN9o!A1&}ViRh!o1ddk z0j?c*77Kf^V^=q=J8e2*pn&8K-GC7I>So zICDF0z?*5}Eqa%l&BwRmMheYr`)y)d-OE_YxZy6EzA3h`R$ITVb^>o#=%{-Phw2IX zBw6*raFBG>hr-0xBP<*W2PW_?g`;?nhBzDyhXiCQyr

7q;t^)-Uqaz3L>Suji%VsrYA>r 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/ShopListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/ShopListener.class new file mode 100644 index 0000000000000000000000000000000000000000..ac84c2a3823d78a3fa0c577d248d1173949ef519 GIT binary patch literal 7307 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 b3Q}_+`K8I7&aW*gKFc9&8`ep>r0o9z$AwHz literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/StaffModeListener$1.class b/bin/notifyz/hardcorefactions/listeners/hcf/StaffModeListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..afb42145bdbbb2430efd46e800b936c0a67e8355 GIT binary patch literal 7142 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 JB_{<`{{Z5$_GJJ7 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/StaffModeListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/StaffModeListener.class new file mode 100644 index 0000000000000000000000000000000000000000..25bfb758c1f939afa6d8fa7f4334ab59c7f864cc GIT binary patch literal 25364 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/SubclaimListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/SubclaimListener.class new file mode 100644 index 0000000000000000000000000000000000000000..86a68ecc7d48e3f94ef65365fdd8dcdf9e9c45d6 GIT binary patch literal 13929 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 VwgI(Y#nd2LEtAtb}|!Y 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/ThrowableCobwebsListener$1.class b/bin/notifyz/hardcorefactions/listeners/hcf/ThrowableCobwebsListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..0f088c5caf8a76ae9af83d41b8b875b2db6e3a01 GIT binary patch literal 1713 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/WorldListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/WorldListener.class new file mode 100644 index 0000000000000000000000000000000000000000..8db1e9dfefe7925290e8dcc94319726d2b4462fe GIT binary patch literal 23202 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 f%+kN;U(rVJ*Ig^bRrfn^ySUR>R9?htl zksT$JLMYdka%&3?mjWdXlxxz~jvHFq7am|O9$7rGc!9Neqkn+#oskreT$@#Ru%vVL zK6`)rzWs-Pzy2nGd+|FBA%T9|@yzMc`NXVI$Yz{^oHjC^>DX?XA&o;&dQ9ZAuJGc3NwkR;@q6+CFH!c zy+rkqKpmwD97t`bf4BnZcm>dyRh%*Hq(IZ)iFAJ|b@KGkAQh*4%|*|&eBq=wrp+1K z@QMW~uxkzZNcrpoO?w5?o=HB)Cy^r=%d}1JLE>ufm=LHRaI#Xv9W|DfA4IT;To21q z1e*oI<8pyOBiKSO~W_p+%|g(4iqhM|rcRD=@IJ!1tO*48v`X?Pu7y%o}Dw;Mjk`xuMwd;~|x9 zNfpZ2c+vLEoSZOSlfLM;nQ?}n;sQHT@5)gB;jm$6Em=r5;Q$V5xJTfD4fFK90MS`* z_X)JjNN>29GwdNE@=6R~dq)id|2h$1Nou%XU~3R%nP<#0O0uBv9oEqYmG%@qF5RNV z6xvxU*R+*4oI)va!jrkQXJqDR+59kIIzEVgCiAS}s@EgZGyEz!qa+OI z7{m~%RK7~xvyu87ANv@Tlw>nLgcBNuiFaKHHQYKLQZQNwW6*T-G=J2{NrfS$V+5lD z8Zn$I<(d6kYW0s8o@60dteG*4YxuChrhvjKSw|YD1RBQr$A-oQHU}e9Uc>14_w@Q% zSQ_ToBvvIqKGdzg=}}cMACw3 zS)?t*r(`@=^kh~k{+v?$$X|f~OdHmsX5O z*EMDs@y$VFs=_BC_$rfjugxWfK*yf%37;Oph+oH07pvj~iF^epii< zrxeof>-d4PT-B|rV^`o|d+2&da!JD4eIZk>i|>ADmTif2`w0{DdPf%O+rW znc0dyf&1Hod9jMhM^}LpNYSeQn4B*O>r5H4)+;;J$`**lDyJf@jt+9GisZ`RPqPstU)gb*(oV6E;eM*NpxAo*>OO@McXNlS z<6i?ph^keFJ8?{HQ@m^D?+|p-Be)GMyt$n>M^VpDV2AbwS|{tG(ez|}^v?8TL$obD z8IEpEU&ppr5Wh;65O(r2%!fc5KH%Sgr(M`x5q6wBA>KE2E@Mw;*K25Beb++8z*ef; zMnK#B_ibfvbfSwizVjgqO6x`sY5RDm^dxt1R$vOeh1R}sPb|CyXA!dd2HeSI6t7`^37?97W(gOU@c9*d zDTMCm(<^u;giAPl9p6-Z(eEtdQuhkJr=(wuzEEbqjvt*S?+sj@?0gmN(WjSjWd$$S z!N+w~sr{9}rJEO(8|!@ck75&l@1(1CF~Ym)&^@>Zdohd-?hBn<1$sEf_i@A~Z~^=A zB&jdpAYR6O_#=ApHypy>aTxy~{a=i}3ga-{PN&`q!#lW&Yjk@Qf5j_!m4TSTGkA^2 z>!|N9SjKgR@ig7Kg4daA7chq#q=xZZ%6S~&n-tlgL1;LjQK!ar2HH*jLlC)jsiBqE k8aD`y<&K-kuSfK`d~(BjOWhVbTp00c|vJOBUy literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/AnvilRepairEvent.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/AnvilRepairEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..cb06ddea7dcd3c4e9b75411f0ee298d1468e260d GIT binary patch literal 1818 zcmbtV+fLg+5IsvmLK3$W3W0DBfs%xaOE2^SrL7PZNKqf4LMm^@*$@|FSGI#nzo`$s zA*5F72lS(=&aMr1f>9qzMAqItXXebAS@`|u$1ea6@HCAshG&-T8I9AAYEyISy6y0W zrhA5MxvFWn9=EvTs!hG2HjEG4RbN^shPlJvYlgFV!Ywb2BtzbI4%LI!(UIY)TD)B61Cul4nwnKNxl^ND3=_30=&kU4Rlr-vnzdQ)FK z{7p^h-L`}%+abzqlww@$`(<6ih?sJ?+cHVgR6JqZehD5ot$B^8x>pYFYI5#5oWifyu1;gm4{A)5o1`Hz#(&%C6tr-@7-8w$t&Kuvn z{+g|8=APyl;yu_rEJqbn-DFjpE79X?9f${oRaf@1NMK0ln^Mq=TjFV2K?YgzG@~E~ zMLgY6a055V1Fvbg49{!-HEzP~L+SfwJhGWA?~7r|332|VAU~(tGx)bJ zGE)>!}KZ0&{aPW=1?Xag_ISD)CDo0 zQei<>A!@Cl8c0xS6{zm&cg%jKhp6gt8CvlHL1;$hE(GLtLW|NtRAy$G|!V1xg z)Th4rTu13dXB>U?UvftL&Jt?ULZK$JCwtEM-M-&7fBp08?*K02k%oxCwBrU=VdIgp zYI^yc>&b$d3oO_14cqbq=}6BvR&xcTV698v81r(g(z`Croa z56r4**rro77FHg}T%e&_)-GlOW`#KVeJF3Wsqpummh;5GT;05- z3%wFpwlVJ7HqS|r>0n>^P{RiT-MiiE_y{8cZB`&XGjJKKo+e4t^>fO(f>8}Dg0BDM z?A+@31T6WeBiC6G-8&K*nhrhmslcfQc;yg)(TF3CYq+js9G?kjM7l(G30$DK*Yhd5 zOgknqrQwFanf>G%Td2VI^lv6(cwf#uzlmb-W=M4Vb~dAzl?rIg)O z&GMc=>OhRs)2U@;!&f@K#(lO_GoNoZ;Ou^KGO2rQ_?GClv$%h#Et)J*oESuHoQP%~{}h z6H{XyF@M|2)pEW32lj7EFG^e>qO!4P_cBu{5!RwWZ=>>EVn-8tnkN?1w?4H-c9lN5 zpTw(_c_xE>}i(2XdLlB0(bz%``C+dNmFcqmm+ z+R^at9iFvvcZ|Q3FK%+D@%{0@CK7Y~KcjOKr_-A_KY!^@3_O9AuHllvm1rVb!~1+` z{Sh;X)*3z*_ygCj#1gShjQxa(P0T#OklHOopCXy&Q4QG$(!b%_U2eK=$DZR(4PQoZ zJKgn74Q2#N4juKw)-wev3I%EyI@c3)$w}@{(a>Ig`!K@MIEnLEz(w3a5;n(C!1M1} zE(-Wn0wIhSz#qfH0|JfV5!Of@p)?02J}s1YA1=z&ID%0;ghwi$+&byE?*iUccruKZ lEu^7o5E_na7}QYJI1Drv9sb6REjm8hcu5|Cb*>R?{0r!h4Bh|$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/ArmorFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/ArmorFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..b7b42982ffa0d2970064f60448683b9eaaba4524 GIT binary patch literal 2243 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 L69&28y*u;|KUCu; literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/BlockHitFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/BlockHitFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..6f9444f021aa0300d8be6516427c110ace3b5773 GIT binary patch literal 4480 zcmbtX340UQ6+O?}*kV|0mVgVykdSzTA%O-L6F`y$mMu$;BuGq}xMO)N50++}(TL)- zX}YKTN*8xY*QEOrCjp!^>7FjXsb9aI_axhrEyeKF-)GId<=%JhdFS5u=HLH)<81&Z z@h=Sx0_Ppqw`UffHD*n3I^%lQjG6Im*C`k|yWm@npYnG8W=Z$m;N6dAyW9IxI7fjh%$MlPyB@n(_`!g{WpjzkBrRdP$S$aGi zPsAtF$zVJ+9!y5!>B(R^9So07hLVxs=wy0gJdzUVj%D1uk#*f{&NBF#cO5=*IdWt~ z^ZBB0PUWnW<A9-NoH&_rw|>fgD4tLN0PyCdIePLnM}@hZ2zo4V|UMG zfu^uKZM9)9IyLMQ*jZx%9q++@f#!>`V2W|=t_ecAIH==ZIdf|&9gM~!LzBuvjvUf) zSdMg5jZBUQ7ilW!co5wboV~(b#3|-EATZip+9ahy**o~;`i`DE zWO%R*0=+tRpk3nb*Kt(h-X2YI$A=P$o%d|lv;75ut~x%(%QNVtX*hauIDjP5 z8kiJ)6?wB+2s$o-L9~*8RaI3gUXi|@&@q84lvLL8gQ^${9O~}bh-OMwW1}>Ml6^m( z*6@_Tfek1sC+e8Q2e|I|@I)#a4#sM7RcSCNF-_^nV4AEEQ#fa5=B(*5>dtCpB}+9n zxCJwq)sPj~Qvs=Bh7KE71vENMFU(Wf_f$JuEp7qi;AqGTJW#(pRF+d6F6J3!#&vwt zb|~E4mF1yyI1KhEzC9fUuz*OuOIj1yUk!wkqa?~oWL(#9UBd?j_EyAIHAlw+o@M^i zvILmWW5wiDUqu#%DCVzzwRT zL>>Ayt#y1>%72SpSj|A``>B(dC&fGF5_qa|(ZP$>QH?vk~q0|yM zR>Mho(<%*Cf|CV71n_lyL&FV$6LssJ+!x!oc|FR^n!XWI7oJP(Dk&f@-`>Z+yS0_70wqOxI(D6h3sFe9} zmqd9B>WZf7)kpw8!Alx`T6G0XE%4@;*YUEnYtIxtk2K4xTS?IY{2ag3@C$*S4VzkT zKXm*GzZTF7EI%t1o8`Crip+$*jpC^1hx%wWRf5S~=&UlV;*|ldzjz94TRFF4Zq_Z5 zw*DI1Se1N_6>Wb-PyxIKPs8g14{nINwvpujmX6zUpISUC&&w@Is{*YuthO~{Wp0nF zLv)lS`wrmBX=`xbl5pSN6z;0g=Ga!JvW70=&pQ5szfwr^lFL0c3iL=1KMk6SMVlpI z$NJjI5;$!!I)OmSEqWR2f-P@HdsW@2{zy3{%PtPF*f#RN8BOSfhE~3}G0PheK!?2L zu)R&Sw{x7AztwgJ+q{fbv|DMt3%l8~hZZl;r~Es&gnOFb!rqC-B^*diG%cYkbsP7+ zik>C(Y2|@qYT%*NMDr3(rY2gJaH=%v^ec4HfHV9(hAsTPkMQotb{yg2hp`Vm{Ov_I z`Z(UtPq?EPVCyVfk19)ff#J=s3@W681$Ok_!nxiz5uCV%@aq^_TV)$(0Q*Tt7gyP@ zyyKCm!pR81f64MCZJJ=fKd+Z9v5Vw%PxC;I`+Bb0gWZz9Zwg`id$CvQrOE|KG z(`=Z_;I`bv+#+`Nvi;05iaga2xQP!*ER8DS4tfC|Cdnrl_euUfqVVh~`7Yy;AFj{i zqeSvCWhqYZ_2c+NU5KAl5Zy9Fx%{UVC9od8eQq7FFV+NBBIz{gALIr+S^=te6;v-l zeQ6C;4`08GuWSVM)k@x8CMYSJfxf2O_}W9^8ix86ie-Ge0ii>(V;L_B+*m}% zq1*Ve)pp}WwDvXK#Lw2aJ4i8u7xor}DCIE4Iz(MW$mRu{;{Hi>^eTP_Rv`}%@^6T< zg|mK(-w|sk4&e8cb)({z$?+eY(sj^N~HGHK-%#){GIOT1n-d22EPA;tp@z_f1H}7ZvX%Q literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/BoatGlitchFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/BoatGlitchFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..6d20f99d8871fbda9d0acee7f71dc787256e42a2 GIT binary patch literal 1943 zcmb7E+j7%Z6kR8FBJ3y$H6+0aB!OOVZYU{fr(g^M$wF4)GD6w1i*v3-alWn?)e z{S!Wb4``<~Lmzs1ZGVP$W*GKSWX5XhPGgNcIy!4Ft-ba>`>(gZ{sv$LPZabqtXj4! zYDYh44c)04w!>?>;R@SoYNlwq+~Q7CYZx`HCZ6%8wrcC{x+z?vkrmJKK0ra3;p|iW zP}fY|s%zVor`&KA3^2rPr><36dwasw_#wAktrNsBaA3CT!eUs?_tcQ{MP+?aJ6=eV zf^P{+xVITr5~q%yEi;7Ec9lmF!jOsxh8aSM*>VJwhYAH}7)J8K;#;l#3U^9+#pDdJ zylv=aS$Bk7`!B<8Lo^vOy+!r6{IxS-}j0cFGc~xPlL<8g=fbZL22gEyv427JRn1*)3O4 zcM9s%KvXh{k8xGOCuC?(Aw6PMBrwZxQ8Y86DJw6}z>cXKe4iZOw(?}1*FL*Z%wti( z0>k_%YNp~EG=?Z;>KByZ66M%ULG^TxI`vK}SY{YIxi5tcVhPt(I^CZ!3=*a6Sy_9A z@gQesBRTNDz6&Oal9qwQ}ift7;5_z^*N|iRYw^D_NPrM*$Zb3y+&Wizu@7sqY zrr(=u42#`-$FuG~4l1SN?=nmVB7?Q2NmZe;GFQg0bG}fgc~Zl zy0N#ZANaE?TC`h^!Lve6w+TshVzghAQyrISE{5ptr#mLcBXvt3Jx8c#sLg1VrFEa| zp}Ch(=jMOG$d4Z81NtAPSYQ-kj8VimF@T;tG|u5Xtz_>>Rz}yTw>M7jVzjzIxcDw6 zFv)Qdm%MNNP1t_gFUjfeNzQ-Unhafdy@p7ER5Pda9-;HC6u4yb|26xGido)jE x9xKO6-se$33HM2N40lk*15!VQ>-Yu_iC4z%;#>0J5k-=hZ-|EBF)jM=-8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/CrashFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/CrashFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..c60fe8e65fb966470bbef28b904452dbb031cd26 GIT binary patch literal 2711 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 HIyip=lNC=D literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/EnderChestRemovalListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/EnderChestRemovalListener.class new file mode 100644 index 0000000000000000000000000000000000000000..83381310183e15855d06378cf11404e9d370a744 GIT binary patch literal 2754 zcmb7`ZC4vb6vzJqX_tg;Y3T!{g+8ej2xa>~t2MO>DHLo97!Va7aFYyS%CehoHdv~D z3SZR^P+!}lD8BIMTfc+f#AE%>CLtRk^>A{M%+B0<=XW3G&i?t&ufG8p#Wx1p1SVZC zP%E2HtX11D)wX#WNJbN zVgg4V+8egz*ly99%{`R)z`#L)Ue7ODxyss_3M{!H-N33V2^=grm7;P5u4Y@SP zt}5F(M}`T^>jaiVf0q*U_pFI?+JDp6NtIcdS0yRXl~JyosjTOuzo2ymx-(whb{1`4 z>F3&HELc@EHr3j(eN_?@duTqe^J@?6Qf-GLp4%wA*^*=+uMA{%l~u{HH>GdQg@4m- zAbnQMgs!-hPIqs%;s$D6E~>I3{g}&OhG`-Ex!u-6#VOk@IMOFmmnynE9ckOmOUIFg zcAg<2&{6W0=c`~-;Cu@kb2SMXF{Y;PO-;-%Bw*pHfhz*ZeRyHw8m>|za|Ug8bjc8Gh$UUTuXK09gG=xSKwrXEh1rJ9BGD)Mi(}9N%k}wdtfuk z%691G1nwD_6gU>KR9`kRg=vA#iJ7|-+2yp(fWV1p;Ode*YZmUC$lw8wLz%wR^UZcK zu%yfAK-j|sE=TpNeeER$$jEr^w5yBJ^EazCd~J^!R&^1pNw{9c3C!aI1H``^@w2-7 z%T!G);zN4GKK4myGUrR(+m@l!r7>V29ehYGMUNrq7j+1Gd7t zg~&BUFO|TV2t@=m}kn3R=V?}wo$V<&(Y-~U$s*>6X z-$Yq=;)B&rtfwj_Hgpd+R_*dk=t76uiO2E1qQNjV_h}xTS|`1}hy3km-Wpt0$5VIM zwi5GR#m~!0rSE{VjaK}hcYqNcdtBg!($4Pze!KNO%0?OEI1YW)bn@vD+V}xZ4gCyr zDESk*l3O^sg`TG{IMx3H*V=KOzb9!0=%xN?>Yu?e^q~i5xrbg0ZQvqa;S;TedkMVC zaTml33bq*#1|is~@ft2s;dPF?`82@s;1Y(Alo-b45UavDZE|?%M|9PJE)Z?xIYytM zhoiT)!PkxFxcdwp$=DX&YoK-$5`^g?&Lu)5`P;x8-oYHk3}#87F&U;LhjV!Uf6#I@ zwEiesH-WN$;G?HimZb*EVOj>A>mfxSy=!pv?{M^!YzOC&y@(VuA ze2??VZR7-g$Lcm73T(j*LlEcmBVJ+K;7R!I#a|jA7RlQvGjfC3x=Ck8iE%3eGExJH jVGv*9G56i1w#onM%##{g9BqHYFp%%##8(t)!`J@;j-2hr literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/HungerFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/HungerFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..fbc29dc792f7e73c947c8c618477a5c56d5b1bbf GIT binary patch literal 2311 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/PearlGlitchListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/PearlGlitchListener.class new file mode 100644 index 0000000000000000000000000000000000000000..9a262868f1b7983b43b76e58aa43d538a85de877 GIT binary patch literal 5401 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/PearlThroughListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/PearlThroughListener.class new file mode 100644 index 0000000000000000000000000000000000000000..8f206a104eed52897677fd9b0dc35952c8797276 GIT binary patch literal 6398 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/SplashPotionListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/SplashPotionListener.class new file mode 100644 index 0000000000000000000000000000000000000000..8e843dfc0bb4e48030b794629cd229053fab9329 GIT binary patch literal 2653 zcmb7GTUQ%Z7~O~4K$t>{faTHxEovZyDWwWEwKWEiXn@#YYU`yAVMqqTOxDbVmii-n zboIqY-*r_KA6)wCuke4kmdkx+0-0DqVXb85oP3x4?Qfs&@WUE3mF@C)zP6 zFy3G~?fUJASNwj&_l&Y#FunZRa0&L8k`$OZ zJ=Q5=5$Lh4tYb@slHrVAwF)JHo6$^&sX(bzE4kGEZM-OD?2B&Tew8M>M&5KymYKAu zGQWeYa^&TBzT>iPZI%ru5y3QWD9{Ar=Sr+%1~&yRP)mzGzV-bIn>0#ohT{a#>lTR) zp7*yDyeTkzmYs?@%rks0n@Q%DA7|Ir(`%~&SI-VEi+Ni`0(S!G1bI(GRVOsjiMx1L z!Mzhv)$LRy@t#10MdwPk?HP_htg+(CaZBA$$8vVnDHsU_95I()t~*=S_YJ2LDJ-dY zAIm)Prkkr!;vQA*50OU_;s+`|L?)OA`Pvy17;HpPrJl4rWo66mt|F^oO`t!NHDsaU zBi!fMVnq-AJPXogUB$}HLO^^#*hsbM1L+fuDNEI%AQpe<}EVeG1~ zU<;^haoXZN>XKZ6>x~5kz8Q0mdJ9esXKUNNKY2g%PsVXoc&IWCn;eQW{-1FcWV>Tw z?$73dO;g;X(>2)OR}+SRT4)vtj+MNjc*CFcAHlS|F)+qEqM4soeju+3e#>&zb9_O-v*^QPe94$Pqmi<|=nQP2a6&a-Go0jPo;7S9!mL#gJ6^H~ zS(;x)Uu^0CchRNX!S)3z#lH<`J$1&)6g5D$OVGQ93 So)VXY%8t%)bDytGc=iti-S4~r literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener$Util.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener$Util.class new file mode 100644 index 0000000000000000000000000000000000000000..44185d2e87332f3da9b7dec792384856c58689dd GIT binary patch literal 1408 zcmb_cTTc@~6#izr+l8ftiWG`k6-DWl#an$S)?gKEQZ%uO(YNV#Tb8c7WOqv_&-@e< zUiHBcH1P-MFYq7u?wj$#*`)?AU`#OCnLRUe&iTG`nR)l^^;-Z}ab1SMFmKtO(d=%h z%iL*bwxc(><{7r-s;1$3x}`g=x~w(Trm?QOYOT}aPMKT!ys=*GolidU3{!^45L@AE zTs67XQt#JSbj@Q3d&`D9Im1w{9vP@e?q&_k@Jd8G^&kADml(vd-O&5NFc5)+u!0bx z5y%*12&H_5p{il&_d3t&y7Q3NO`T!5YHQqF;*R03dz+#kD8t>O(+cuQvG%ugZ_cqh zR)Zmvs@hIVt#{gO!&B>~t+mx#{#;B~gQRz;2C82X->_!1Ebet2;(Gg^4QCHSC>3QS z7>@7b%sCG4`d|vi5FNltBxRgp7(JL{1gCL^5=`+t&`s_cYeX!Ws#GfJ!!QRhf%7uX zF%0g*`iK!s;sTY1Hz+Id)L!sEbzCw1ltBs-#E>}5Jp-##yZ)IvwoXSC8eJM26w$Ax z?ymkQcjhr(4Ct0qh^RyEV_VYle@0&%DBcb zcjQ|{E$?4gN-(979s(AN`HfGKKsz$}XzmXl2!VD0C6j$c(>5Y61Dzq7!=wXDAx3i~ zkQE%mFs-OhFhX{5k_C(go<8;bFTBCnlWmMI3Z*R+go3z*DWM>3A(6`_<6>Oe!3hyN zI4j`sro`fs`273FO_9Y#5Nq>fR j5(s}qRK^7R0x1|HpV3DjonNAJfzYqeUm+w$oC;vOUKDRK literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/SugarCaneFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..fcc0b917140e894cce7fce22c0c45e1240217f99 GIT binary patch literal 2412 zcmb_dSyLNF5dH=v)`+#ihH&`=+p!SFYdfbc=MV~qY#}+4ICGGdSfoYEitMf&$WO_; zomZPmNRd>f@|LQ+=ij74zFCQ4WvEo8$iwc;^z?kw{dG_GAAkS+D}cA*Drgf(*fq~w z-}zRn=+0WH<{0aG$un!Vt68S&8MfiLTBWqEt()71tL5uu-AU@UF>P+AoBIkv0zDi0 zGhMTEyR2o48%D`f&>=8XbIMw=Uagv*W;`=&Pdhv$5UP8oB`}*lwE;Kgi4+&;cx2k9 z_n|<0bZmhaBx`F%1noGhq7xB;?zCwenfhkYa0+_SG6XK9YbD)U&>d5*o5GM+F<54W2Z-KxY`MUH&iG%qhLT_`u|}tf_@B1s)h*}J-w}Q8HBTWPcK#H z^sOejO3i+1=_PW1H<~_{9b1;ZV>lW$IHYXPaF~o!GI4ycpGM!33S)EL0 zlTS{hpyi4#+{0T6?h6bCuLwGzvM#*CsL|h)XKbcyNuR)ItNEra&8j&&npE;5OwZrL z0|oC3TnT`mpsC^^nh&F}v&BRhXa%3s8Fo{*$jAryNCDq-ZvgRdTgAsn2t@MpGl|@4 zGLf0$n+OKxP?47LF{`+MUYP?^DyA{RVn7#@mRYJAYm+h#0>iC#G^q3U2+@y}ipLB$!og;X|^$Stq>o6?@5iV{eKQqkRve>H3GisX4+MHv+V)g{lmT{0}opkgSx zBFjS9?*;-B!H6|F#J|)4miWdlgVk~{n8M60QDlk-6#|}eJCd)}of2D^Yym?jwX{2u zVA`It+5eK3?z#p$LP!>Jy2b{>FU+q^)?hYMxn_&uzl$r4qu>~h{RH(DCv7;#e}^yZ zLO17XLjgTF&lMwzUjF6bEJFU?VC)C<{f_R~FX&$;(BO~glcJZ@Y4`CW#03$0iE)HE z*u=c(>j?>a374sQg#u~9RgSz!q$mq>zCFH&Yjga)xr^9ygkIg=$6bLvyt|7>udiQV zI<|*NYJaka*?pu19)`Zht)b99ast0$DKoK;6@guR_8i@Z^DkczSL%?|?+*SP5ADH_ z#55eaPddOC7RCS_kq!*g%8R&0yEWRK<*Lk8g>#1m`5WBy9gdMI+TV0o&P;63!!TS_ zVbQ-VhOh~n_eeSx(eW306x{1Rz;%Qb2n8ctGKhKL0HXn!f~BUEaXhBkiS{FzjBkzb QZP>!s9Az5x^K&5n0lZgz*Z=?k literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/fixes/VoidGlitchFixListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/fixes/VoidGlitchFixListener.class new file mode 100644 index 0000000000000000000000000000000000000000..4413180f94dc4923d4c0e5a45b088bcea1b37215 GIT binary patch literal 2735 zcmbtWTXz#x6#h;dIy4z9R&K4_sgSg3N4W?XL?FGSnwCmS(0ak?SGE-+JmE!ep z@CSH@he~~L>5C8k3IB)7`bIv|{_Wt&Le*gQYp8=f54;nfIZa8kB z7FQn_beiyMsP0SOsJN;+VXMHZkE{FT7K4VAz}|c2 zifP!UQ!{QZ+>=(Ip-Z68^=igKb7@HhhFp1Ja=dUNK2Ed_eZu4UR4(^KKOMN9>C{z$>mZW1Fke8#Nnd zjXFoNQo{*>3(u`TDL}_54A7R!&B;-Li~kcv=!Mfd z&LAt$O|#;d2^@aLu4F_D8U_UpB~i!Mab{$Y$B2gEZCPUZIt;uS`|*zJ*;Rpk?fN2W zA%n9xui+f4C!s95({TZBGaVzyE6Q`72EEScZzE@5%-Q6i+b`iA4VP)+voe!>ItsWV zpv{%W?v72*Z4!MQV;E<}Q&maT>e5eW%(s=~roy&F-K2J-g!eT}GL;klh);Vd*W!DR$f*ja5MY*iw1C-gYX3DoGCZ`1oNngE~sK}AiI&NZy`4O~q3e0YA z(@QAI&4;;vOUEqc1av=EXDponOb0z&hR% zc!G4(tIA`vyV9YaR7%oH;*98L4KAFDB>i0=_#0`hE@&62wPSWE53wBdwOsS zJ_1^Gmdm#gHM`S_{uBRz z@A`nz2Y-M+%6NCXBpYi?j1N0^XXf5>&%O7|kDuSZ1K7qB0||!b%GI*-?!DFHUfXs( z(c!k1uJSEM`dTRA`Bu;FSRHvTeCtGT-4ouPJa0s|22u=H&iII14p&|4uyrPEZD5L_ z;CfxFHSG7Lw!}y%ZCwU2Og)uK>Sqkea;3?Ts=IBGMG`p^1~LqD4XMPzaL^LoYu<7M z!+gWFxzpsH4EE7sO82DCu+#X@Dr%I`RZ(^I9u-0vx5|x)3f_(zaM_5l>uyk7EvTb# zG*ns+L{s{bSnep|#lv6u4 zm3XG`w3b5=w+xhMRx$AK&cqUy8Dd@AEg2y0XXa(6hy!4D`1cF^Oq^Gmt%zc%|r> z)E(~og2b4M^@ut|r0Gl3lS_~#anm|YJButMn_mBd?5FVBq;)Dh%wUH8&9MV!F-JQZ z9j+3{eB^bFYyiaREJ3zZy}-g(++_HSm5-RC?Y$4kR8tpN5Ac(O2f|9yY9db=ii8{F k$&cfsJcNYJklt1p#fo(OkbV<*gvVsFL}itNw_g-~0qv$BO#lD@ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/BufferedObjective$1.class b/bin/notifyz/hardcorefactions/scoreboard/BufferedObjective$1.class new file mode 100644 index 0000000000000000000000000000000000000000..a209b78398b81a5d84694eccd623974bd8b0f949 GIT binary patch literal 2685 zcmb_e-BTM?6#v~#%0k#e#1^F>#TMI;LboVw%7t)@nZkyYYF*J#i z6ZT)Cz%oaQY@ET^u-tx+Z)PZjkfA-JqEumIxgdq63CDB9BttrJL?`=94lFW6Q+}Se zfczQI(JW`r8E8Q)h6tWF(25fbk%Uxjmyyks*K#~quyQVE=*alCAAEuM)e2d#F=W47`GKR6Lh^MNv|@OiT5IfdM2LTEcQJ zR8|-|6Y2CowMYt`yVeJBQO6L&<-?re0PGEzAZRvQw#`F@(pyJG&_Koyie|37y6TAf zR?F^o-FPcr#fXmA82X;3Yv3}jP`Qg-EO2X$;Zow@>7V3M?oiHNH!v#AoFFr^!8|WI zq2R#`-;^4%{^JHFWc`}fi6@+`R!riWjyD-jH4aejGjJU@WOcZhQ@a>WHVST0I(W;# zlyVRf<5V5IZQz|91KFDNU1W5;$8h|y&NeWO8N!8?&+qe5Wf=mojCjt#`xV?0(_EDNynzjQ&qNEZvrbh=dmax` zt`&wnL?0bILgN^;cwF95K)gfVQ1o{oLZcN1tsbY@C^RK$PhPl>w&dV_#FIax<40Q3 zaFU))qzG!aPI}5sKs#Q*i}YqPu~jqd2Smvk@M!QJy0`IiyzgtoyH zHINe(P6cTVOUih61+yByLfg()R;f{Zi!#;PnnYW5id^$sEE9VMbHW0PjG;Uq-p_b>Cr+xP$g literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/BufferedObjective.class b/bin/notifyz/hardcorefactions/scoreboard/BufferedObjective.class new file mode 100644 index 0000000000000000000000000000000000000000..05daa55e7f75df370911df24ede72e0b49d0a6f8 GIT binary patch literal 5143 zcmb_g`CC-y6@EWv;10u839h)}5@pj-qY_0_K+tIbjUWNi#9oFATp4EY&K(fbM$;x; z(j{%uP1|Z>o7!|sOap}2CTVOTm_AMId+r^EQNZTG!o$7aa=x>@=bZ0c z-ullguL9VHziY@+*dB{JR`>9!P_JQkMdG&EZA2U^9!rE0GV6?UIaHJE?lx_+>rm%$ zle>ea2ERi7abwU3MU7Zb$lFku-&oyttU0{DuBQ6PvAU*~BjLJc1r=79Q%jzX5p!CN zXwvji11QWB@}}y>x?>G>O$S;I%5ssy9kP7*NL_unEwzzaYd%_^xfYyMQDIF(-0lf= zCj0sBBO*^cEzO@)GnN!^ zV?{$fv1G`xPHe zmYE1OTU}@P>5yXWjVrsSx zypylpy`pio9Tbj-nA8Qra89`Xa&#SrgIWpV(!nGIdZ{{G=S?7=<_dlibN z_xGg#bX228VS#P-SP93po6Mm!dz9-bx)Nn>&*X%34c;$mSK7>bUMUP1_3mJA9x#wYC zDRdv!@ezEKbOTA!Z72>;C7b4?SopY(kGo#x)z{=2lO6Rgm;4N;xWOXe#FH@!2nvap zzzTXIqt>~eML1`rjO2Z8mVR&GoDm2}s)@{jiFV$wpi1hKAcgv23FR9ylSUXk*5N38*gzjHdigfFuxAS%_du4chTiZz3?1m~rCAJXu&Tr{(3!`5vH;sP!T zo3AQ_i)UH>GTcN3nduTI&+7O(E)lctxLs#NdfnDSVK0T;sx=z0;}Nrq%}+*eba-N| zvZNyq&*57dzR3<{GF2#5$G7nv`pGu?*p5|(r=^~O7%;-_PtYJ)H>GV}psC10u6?QG2&M5~ioK6(Y z-h=P!_yJyZ=~<23iqAW1T6)&SQ+Qp+52eoKc>JZXU)Av=VUcl7G#UNOfk4b0N|o*f z8E{V2Al@wgsF9H1b6kfkpWz;Ijc4034UZWb#2{^HwGtLDV=?jMV5i^lkw^`x-*@pN`V7n-|A34$lqy%kI z==gsNO5eJa6Kswr?TA@#Nk6k_N;|Si5`&2sj>Sy7marwv1XlBcm(Qa-_C?vq;Y{N! z3jxk^Gv-0g^KP2!H_Qv9FXY(*=?dL9J5=(U@A6wfp6o@_^TnLAqjdM!k-2Yn8GHvw zvl6TLEaL1e{H}g`OUJOf^a|Fsk74}?HgH(NVc7`EIo#Cl8^h)i+*Qhj?WN@-s3Lw}uqA zd@-k`^d;1mjiWV_>s(j65Fy)4E4E~C&QEjBM+Y4$obShb$I=1T zut$0wr+4M7Sm=M$uex?*3#WzIqj*G?1BHQW2o?qkbDqUwZ>KP46p!6E!CzQ>OyS)1 z(ekU8kW+s3wae60qlM?G?N(lT@;;BJ-M1ftXgxoLgNIPdc4a@F;QCpfeTFCt>IdEMznJ#nMSKFEqz9|$!A^#|kLTO) zDUST)wTb6*h(Q}Aej14xlW2=UB*BSc(4NAi? z&J^i1mS$Wh&)keEP{(Xae@fi!8^zhP zcwF*F5Fp-T_)3Eeui!#^Y1tT_8O7HGk#b`DjV!psaeP;y@e(S^Qy4$rM2hVj$8k9e zyZnXzYgkn1=XAt7AUjvGKMlRi=SS*~o;n z2|STN~d;~i|&@Vti6w~_re zcNBicK=bO=6XYd@po$i@T*LBZ=deT^CDU>IJd0oKOzBHlB@1t2$+ELpz+r9ai}+Os zchY(8b7OlcV+w5a^YAdsg89L?>>}FFg@#WhWKkh=58pYZ2tj?~_Kq-f#@kNw3x{8#*q?;sCf;F~}H E1(L!;CIA2c literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/provider/PvPClassHolder.class b/bin/notifyz/hardcorefactions/scoreboard/provider/PvPClassHolder.class new file mode 100644 index 0000000000000000000000000000000000000000..1ab5fd9ae972d877f818fe63ed5fcbb01f2d765f GIT binary patch literal 390 zcmbu5O-chn5QVFwW=wP;cnRHD8+RjuQAA zT)BI%D5}2qKEK{S0N@%<3K$6}olj=Hf5TRWM)^Q%sgm(7V(eY*d5pW@JJV3Wc{jhe zGR7xw*%ojp;A|s1iB>v|FZG605^$<1-38TBSV}Emc2NyGIT?$q)$>DnS^fF7Uoy#1 z#9l>Q=AETdz+_>xlPL!hu>beLn;)Wqy7Eq!l@A*0yxp3_!CPvw<+!t9@S2^IHB;O& p$8_OyQ1oalgPi~FB-7wkrG%xW^I={MFmd@%q3 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/provider/ScoreboardProvider.class b/bin/notifyz/hardcorefactions/scoreboard/provider/ScoreboardProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..c51658001a7404b12d545c3c2ec8ca8e900ba544 GIT binary patch literal 22594 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 QWL!sHHO=^paRYh(A53BRhX4Qo literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/TimerExecutor.class b/bin/notifyz/hardcorefactions/scoreboard/timer/TimerExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..83ec0d56a7ece3280c81ecb3d7e3e69611d69d11 GIT binary patch literal 874 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 CtI|FI literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument$1.class b/bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument$1.class new file mode 100644 index 0000000000000000000000000000000000000000..9751f38da84511dd0927d6802702d5d422e22bf9 GIT binary patch literal 2256 zcmb_dds7=#6#rcaSqO{7l=AWw+o(w>EMR@KL0br569ZHz&-%JaZjvpVy||A$_2c*r zbR=zc#u@+hLph$i39^NVWyZ|p-gEAp_v5#J{`Kqc0B)kDp@-p~Ej_dLepA?UD4$J|O$gf7FChowjSF*hu3*NrXDG3`1D z3@d>ni$4)g5I)1=CA|BdX_=lWT;u+!39=efR$XCNg~M>I6iUA$n@w(4jePsw3S>wl zx?tL-_bJ04=}Y*(sP?%o`Ch_w_tgG7mCO!9BrmIC01U6{=tERdS9ECTSJYJ<1BfYV zOvfPf7t7-yf73mk<>-?O3hIl zdL7@6;cZ;kaE-zbHLg9aI#PItAzl~WMy+O1obARl%%sncS0-Gp7vyt;cn=v3X@>ET zlNV%kWHH4sNWQjh^E+P@stk#ArtL@d$JpL3EazgFhM{4G;m*tNP1pA7n8h5!2zlHT zO->VO*Yi?ZRr$S5E$n1?>N!)?@ILkN>|QPTrbVM4!#pMi@F70d@DZ5}C7N$=FE1_W z=(vU3H2(W5rP9VO!)Ul<|431e^H|XF31~y2{OE|*hG9Bf@{RH%QSow}>V%fO6HH*@ zt}?NBMzezj|E}4OJhdU&;BGR2yrio5ijGx$#-LHL)_IfgYviOgA?LY%6c~n*HR&Wd zb*CX5(*7K48cGbasv`V|6C@f67!^odx?y7W}+}oypyE@jfL7gCT^mHPy zE1fDW!dSX^aBx10An`ABY^rGcJ=soo5D&1UVVfZtYD-si(y@y@DuBYXHQ~CvPRU*k z*Z!n}YW02Jq}IgG4k^Qcb23s4tVkHSC4HwNR!xQdW9PpeGis^`3|8!lC0&}tHQ_a6 zRRcY)zWktHwDLMCpkN22-GO65_oq9k|;tjk>9K&0f>{$GfHq)$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument.class b/bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerCheckArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..ddf27b4863b88593c957e9c556b76fbc62a342a9 GIT binary patch literal 3863 zcmc&%>2nih9Dd%CWYcs@OFH|%aI#rwYR z6OS3k58?+tprb)##*yKJGmd|g`n;R%nY3f^gZYrW$M5|e&+p71fBo_+fL-`XL7l(> z+wslO$uruR?vCUf*BI4vzUkPW=E>c#!(+`i3x=!dZoX77Y~Rz4$$fUr$c^s{&lE%i z4lc;6GLe`m&Y96gPob(JJLlTVO~3f=myF8XpKXJ`z01 z@Nu_kn|_bLuJn>$w+#tIvd)MRM}t5#Cyk7wQD9wQZ^|_aI=S2VQ~*lwoxn0QsZh`? zuqEApQlHQ@OSkjdpzo40Q+?7lR1bj`6;Z?ln)*%KI9w_W8}2cE*fMz2@8ooANOw)S z4-X^$nCTJag>71r%Lr6FZ}|6ndY%$*uAz5Zwc-la39OlKVQN4Fb*c zDOB8qlz=j!TP0&)RN%UFwg&qIlGrGb+$1Tg#kUPfidGdjV+;MP7mJ2HBCxd6L?s`LjsLKm`z=%cm$6!9!=kHb>E>WtLMD! z3(v{maSSWa8K^T1rfyZ_z!Z$w#%X_ka)drsz=YrZ?=6%HR=P!imVz;Xz1Q;mNRWX6 zlLQQO$^td6!a{*1$~aZhEw3+cv(067kC|Pw;+&AyJ1UAe#c&+cy~BZ_Opg*`J zU3#QsaYX423Z!Hv#{il4GDA1cCazg2NUeky>TM{kmMgDgD zgcaZOqz)_PdGLBI>62*0I;`T^>dFgT$Cdmn4>${QWM>Zf9uN7pUPkhGv-UHtzlaST zWo&Lvm62{QL#|siewDG~0-03A#rPb!ah90YX)&$*yK*b<*(Y&(MU1#Wlj3}FH5vIe z_6^b}$D;{M)ydaiAjS5)RfOa$a;r+keE0G7gn7cnQbZy_Iv=o>VU3 zF@fJ;bj6afE6AV4`edvOGZ~5OEaT)^G$v!eA>S1}#}$eB$K>6|86|WKE^YrZNJd5ECQf3hC{F}ayD-a6$6uhZmy@IzDqRY<3; qYMQpHY1*o$X{(w-tEAritJ~14;4@15oZC8lfiL+hr^*Tb^79X?!czAD literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerSetArgument.class b/bin/notifyz/hardcorefactions/scoreboard/timer/arguments/TimerSetArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..fc0d818dd82603a9fc27f8531bb98394999e5993 GIT binary patch literal 5943 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/GlobalTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/GlobalTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..ac7c526262b03d64c2a247245f2dc9562443a6b2 GIT binary patch literal 2874 zcmb_e-&5397(I8BHLwIhDXWNd0i`Z0HP!;HU=^e)tP544Sm@8N8`sp3IN7YW&iFs{ zp)dMiAAO+@ooUy$%=FRD^iS$Iot}FWU>!Tt4s>=V$-TMXx#v6Q`)>A+zkdASS?vSwNo&DozF(+DsT|5$GtnzOztYUvt8xn99LYP`15gJ9OnZnbf1(ZcSi%S2UY6 zBT3!2*O~FbR~eE`g(lR!Xe%cHQ50w|dyXCM%xU@I)m8``GLgo<40_OO;0W36Swj;? z(MKK2wqJHU0q#W6+7~0cd}rRin~0IFMRpi5lRP!ekjS8kV>m9*T63ancD?3QW~r)EsF&nK1{Ti9DtMc%kl&TD3UN~9Ifi!(j0+qH!m71azjMcptc&Vq;$55- z=&Vv3uU>WidE2+EPAG6JKU`{BepkJ89z;$W<4S}h>m|s*auz+dF{6ksl z{RVFS4~5E}3!{YVGFBv4I^47rN zg7^tpeM8$|n5MSLk`)LfLG}}-OMzt7mZpL~lx+FBiV<>$9NFy9m+7?^v<3zWIlY0Q zn>$JDSEP?{k6!L}RH0@`O(wRLNIQnPE58YZ?Mq-UQWKe4XADdBg?~iO5xJj&3^eiW zOpt{u_zQ;&w8=F{Ik*I8hV(uBPO{D2fPg9k2!_TWeW$@DND=&q zX}G}FpWdY8;RVHl>h($ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/PlayerTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/PlayerTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..9947e63f8de2eae3fd3292610d690c93e5527236 GIT binary patch literal 9123 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 A6951J literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown$1.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown$1.class new file mode 100644 index 0000000000000000000000000000000000000000..2714538e14194d619d7b36a50cf4fae5bb624555 GIT binary patch literal 1728 zcmb_c+foxj5IvJb0?Ps+UQkd0iJFAV5*2Sj5fMrxAVnZmK5mjB8Chnj-3=O_{086r z469U7t1Nx-!H=@+*=&_T^o6ihJKNLS-E+Eo`uzO$`73}Mn2jRDFehzKY}Q{HRnsY# zY=>`}B~RGWHC(kT+N3r-vCSQ$<_Sx9g1g4L+RxdxRkmNqL?(&|!-(xvjACtTOL*j3 z<>i`1J`a7xT1`r`XmN%%uPWTcB%PaU`QR*tn-)@d_Zb$F#}F@7V2I4wW!?dXP8}!E zrXh?j9Z_^Mgpt}(0}s!9uYC{^erX1f{16vJRs zZU2>)j$61*9irK_d{hhr2P>&7EMxwY*((N_;^mVv8T(#0k}C z;);1$vTRq#$};z=c3H=L%uqjF?yd1{lekM(h;ouoRCs++N@7*ZbY1RZh$tvbJk4S; z#X}^8=#8SC^c_BbhkT8e9{m60 zr{6={$Eok=e~Zz^=KK!~2kLL=4|Mw&3Z##?vXAr^Ogsw|f$bh9KjC@^3Q8CXN*obd sm(YhCrtlPNSZ#up4`AK#?b#GL-6b)EET-ujp<%v<2PA2PRAHs(H)6{GTL1t6 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/TimerCooldown.class new file mode 100644 index 0000000000000000000000000000000000000000..293b80f6fdbbabc9bbc7e589e1a01f519d4dbda6 GIT binary patch literal 3217 zcmb_dO>Yxd6g@Bgb|xVt!39j41OnItWdflA5+DtMG#} z^e3>PQq^TQAQh=eX)ATvMR)x_Rn_yJ$HoZ`RKQ5~d-G=Qz31L@?w!B>{p}9`Ct*j> zCNNPfRh+wPUmN#KFK3lJ`>ttKoKmrDl;vHv#ABo46l~9^Rvg!dGj%o|s;_id{pu*-g67b{n!d&e@R&jqu*A~29Cd3hsSU0HD|406xT zRb6_&pbq3KV*()+QD7|d#_*&UqO(1M%P4dbzp=PDbCHiU`{AnNtzC9p*C`8#S%LOd zvs$+6C*iYB(W#sl7*D+ghS~IzKyb2@v*QS$TSF&$1Oln_QVgt+h8W^<_nw9bqH*r_ zXxNJ+0haB`4ZC0xMKMnwDdlQM#wprYs)elWEtpx?7U<5DEYn>wJxAXAhr!A{nbqW* zBd?RoQbluBPthlE^=)dgl?0VgeAPAAY)`Vnob#JFu@J+RK>C>9U3^xJu=CRW)5QWP=TVKGi&9 zR#jA^7He!a-TZ8u`J)xoV6d%HF~>&YII>o_MxAn9E)*vP6JwXwPoz9q6@gDR+`v2) zpau%16=kMsWD1;nRidw(xNOE9baiRd=<1YZY@S@5bxd`kM@`GJ%jLl#fp6Xk_uEtT zKQgGJIWDmHZqU3m+~f15s%P0#jvA1gK32!%%hbzEkza;M*DROqG6qOmfc+Lin`~6> zy5%@lD+e^!HaTY0%E8066G8rV(5{PjSy~6V_UgZ2r!LmHIkJv~-oJs}&y>|Z{wL@g z=;NFH9Qy;b-;W+nw)c73uj2RO13s5muZl0!uAdRxR6L1O#&h|$^i_+eLLHSs2U^5C zNXtWvcbM@~jF(pN^cvol@%A(0wnpRtV;;buA9;vRB&x6;*ucT3+_gdG7FMT6m2a)~ zhVMHlXSZ*Chf$^HWb!-K>1U*3j~*i`H&6MeKgUs9x(q0novI{5ob<;@$FOppsF^ol zC;99IoewK3(M|vSc=Dx_JP7i^N2*?bvsw|J%=N_{eb0a!IQ5Ld`pgRhGA=<3>jUf1 zc{BPaG`akWvz*ht7%!X(>Az#*CaIl#j;Taw1DSPYMg9g9AtHqKI~Dl zCP!FU@ADaH#=TEj*SaU%sCt;nrP{ipWazf<=isZ-?^SLn4w~G7*}|lEYsC_E6ILdx Ps%as|RemQYxbpfBrV+Pd literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerClearEvent.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerClearEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..ba0740305740b7ba6afa3d0715eb602009333121 GIT binary patch literal 2533 zcmbtVTUQ%Z6#h;igd|f6DGiF4(vm_hw1ZVq8%nj<3pEW?F1;*YCgA{6h8a3DVJ&>| zclZl@^;S!DEthYu<&RSLJ~Jc(4Lm>|CUY)(f8YN0W&Zj1_dfxAgy#vw1RmOsZ?5ls zt8W_aTElVWy3z1W$M$rOS9OQBb>G~UuHN)b%k)j@>2g=vzNatq_M9aR_bzWF&@GU4 z+zq|n+}bkz;F_+^1bR0Od(D!rCy=YYb?HHHST#MrBG9vA8GF(d7_7c9b`6EBFYGWc z!=m%#lDT0Ue$$l#Qys3%90IU?)8Eq8`BIeX&_Lk zo<=aG6eG_xEYmjqS%I!XaaEvu&RLTQTo4#JNs|;ZxTqnEeiCO!c}POw9Sw2x2%N8) zwyZU`>(X5|>K3VzsX7hAS~Xmg*Wu=D;SA)9t0{EhVhTBoCUA)$+A1BSM#E)X5s1s} z9eZvGpE=Ur*R){cA$vl<+Ab%`D4rL9K zxF!&D)&&Zof6K5p^o9Bh+3+hJgBIvN%0%F4;rK#5BhL@;VFEV<1|nHf^gNAv|6_qZ zSH5hTuBQT4o*ubDUB|q`9ct;+ zlGAh>@}9|qX;9H>e>ASMrZhH4eflbOW0)rzy~Vh~Xg8_edH&J7XstC`)6}4|B<-F@ zKb;KFs!VqLOaFn)v)35>1w%j4GKP2Q*+Z9r3k1PCpj8&{g@%u5hxZ0buQ5{E$NR4^ zRw}>3)wX$t*nu1|$21xCV??>i28NhGfzHW=VkVUPV(9)Gy2J5hl>72NO6-5KgZ~`) zzXT1V`JY{EAamcqg+{P8c4)XOmc>unnHS?S*{fg6=w>J6fKUM5rlY%Ah3jGGU14###fIT&vh_PVg;+AabDq4 ik^hXLqqg^zZBUg@S{9sU=Gw`k8bRxBQGKccdiFo|HdfLA literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExpireEvent.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExpireEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..b37b3bf447333067cb0d2112da07799b22e6b2e9 GIT binary patch literal 2559 zcmbtV+g96F5Z%XI3`QY90<@G85*)A%iD-Hy5ZXdWLSrr|mt2}Y2qQqjNJN%dr7!)C zenDS*BcbhDU483X{iwEkj)W1!@Bn_0HRqg}y=Tvy(LewG{wIJB@O2Uig@>*eIBUD# znj4nCTJU^(%_;I9ZN%- zbK649DssPZ!C7~$pzPZU!&Q!q9RY9yC)hRTb;!|ix;K@Ror( z)GJ)fJFY!j-deH!MQf!ArDLyvviAa&~)})rV4J6UfgfWaKafkgG z@9Fq8H1H`tQ)pVZgC*B_S+=KF*-%H?Mb}E9>tta#2k0N(YlT}!ybn6^)JY&2Oc}U` z`wZoj=6$=wF{ZEPGufLq@C6>yCJblM0YF@YBxb1Kp|rv}g*iM*VxF4E@}JN%(ZB@0 zR2X`rE3>ENd0`>23Y#<5c65=oZj~99IUptzx-urmj(3@!e9T0*vcesDooAFaGgNG9 zEA%p8EMI*k&DaTEM&TW;@T#X4ys}@g?>REC+BL1%*W{*%%6UTh`Ms(|my9~TC8Wi; z+Nj@UFmjMoY=bt(3HKVgdJ!$$X{9wtKlwHNfwrfwarqZ?{zNl@xB0B+A>a}rWCgT3 z@J{6Th%2(zntP4z+&+I0BAedHwmP?h*SjDH0NdKu@cj^7)4R^p2iHyM}FG*Ut%nGw=Xgp?K}0u4XT z@%hmnMskC{fyL3raqKRwc^|RURJ5Pi1H2d+^dTGLkgjk@vpSz^4(SSq30xy~Sg%P& z0KTIwJco0?V&rcOPkLe;A z#htGocb=@`+=wT58abymE}Q&kbRPG;uYJR=d{*(0G7Hyg9{CtrZH4MrI-%$P13zzF A=l}o! literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExtendEvent.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerExtendEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..22cca56a89f1ff619aae4282cfdd61d15f261131 GIT binary patch literal 2722 zcmbtV*-{%v6g@4305LWMV;lo!wdG;J3?Z8nVPXO}28$(ZNytkE(LiG{BC`;a*Zf7k zA*sq@%C4j;ACQkq<=!57B#WV3g{MmD>DzZXcR4-({`c2E06xH06H)?C+;X7yPJgry z9B;Q+_T-*Z3{=_mZJ&2LWfI$gI+C6p2CAe2C4F0-NH_594HnNo3#7X{&ypsj1-i=K zzP%GZeX4>;&#s(h1bWY%%{p#TmP*b}NeVO{IPPvqdcHtk;hgH@=&+#tATQ8Tj4b7@ zfY=tu9G9F^=?Qce4xJN6gSA(VITfeG`s-@nb%M~NI1>pfQ?CVd0~MUwtJ-CLn#`L+ zUwWIH3v&XwMC)o$*3veOx@-dZ!ewf#i%XH)k3D&!%Ar3OdJd;U`7R2yy7Gsrq@}JE`V1h0Nk6dJWvd4XWUj_Rs=>egjQt7HBIdS1yM~JJQ>T zTGUY}7oF0U<0;-(gb&TP$Z&CSWGjmX^k#7fcbkwC=%^O+RR;~27!hccN5{b_4VgKT z(1ko>A2rYlgWv8MXp7!#1Mi@NW$zidhE9Ha-@tWrQl)|eMFY2VsT3|C0=4bXym+8$ zpzC3|ROo0vxOxIZYavbSk=#CLz_d3tCl!yX;>neD_vdpV4#m*?7l zY9Nm(foys2m0Z9yBd{gM-M3eE4rMXOCzf8I`{IO|Kd$;dlncbx_WJaRocl6}$R;qE z*xEPHvy~id#tbzta8Vtrn4`^Ps4FS(fUMqzsMk1&b6h1l5?im**>WvmuljX@w5dDU zs{G28$QK(KZ}Y4!8)!jRz#yxdPRV{Ivd!o8P=Z&!6b~owg|q(0_)MKt_XF0@~feP{r^k0+u29u=Rp| zFLC<}RwnCCu8+a?k75#!#ug= ziq#?*uQ#4aG=79HV&hZ{f8y6V`16Uzj}wh2>x~x@jTf+3i9Ah><}zoj{?{6r)ooa! zdM#@YU3#C1o0ied;G#c4Ae v)3uB*u~zYQn^u0(f1t0v72j$vOkRQY*kYV^Y?Ea1T@CVdJU$zwox|@5)!Xvlm-fvLf10mboG9)ty|J`EnT&>QJK_&wEpKL4|uJyk?mCK zKGXi#FVt$2_5t>xrk(ff1uIypL_uJ``|dgC-t+GBKmY#uH-JstuV6ypVGt&2@6}K4 zffo(>VI=pwexkx4c4NKjg$%oiI+T$+Oq8z@C1Y2P_A6l^Ro_^b~FoXB?Thl@vHJXwfD9%9lOw|^TCcWRbbG4XrJrjR= zl*WxUd~D$pd@4{2_Z|=bA7eWc^1Wc+-R?b?{iIdsgTTyqNdonKne2>4*e-Oia6+pD zn&Jd*6ZI}*dX7}N=@VEb;ae_bRmJ8@z$?hn=8e>iWF$Pyx{9;AE(iLo?^u}DXKlqY z8Ex?BZ8}RopM=AxFCQrVS(r0joqT3)>bc_-Qiy+3{9V-7fZwzU&B^Dio+I<*j4|h& z**niTCynnlX3ydRcjmZi5~qLaf8pYfuQC5S7Jub(0?YhgW)cXxY$D+55>_(cfH{+l zH=NhF;=IA?G1i^tF>Gh~7|sbtgCznBC=pv{u`^iWeO@-4t0@C+;3MXc%ao`!8>Wc~ zqj)n@45?V+-n>z4zJaSHZ)nNO1(GXFzQTL9$_Ca*c-2TcDaA-~o*AD}fV4(jyD@LX zwZEIVPSMoC&y8O$qdI%a`2*{}@Fnk5(@0opLM9>b1-@iNo1F*StF>JqC(s_rY1eh5MRIp@*wU!a+l9iNap4C!@YD$W q4en-DcW9~Zr0gsmqjNGyH4}Zraq1d|Mw&G`$+DS$UGzQE>ehcW53tt& literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerStartEvent.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/events/TimerStartEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..b67eaf60e0f313a30dc9516ae5160422b5321f30 GIT binary patch literal 2200 zcmbtVYi|=*5Ir}sYx^d-u-;AAcTv+H z(0@~@uL#si{Q><^RcG#+wJ{qi1%JrinVmCp?wOg*KmY#uH-KAsn8Ap^w&!cLfBd6; z=mhPSAIN>DrIqh>?JiqQpWL=q9U0i6R<6=Yc5V4mdb(>rWA~1B0{ws;8KeZJ{NTWD zhA&>TN1nvGI9LGBt;U$v0IIG;)uCZbct!a1C0-&G42aFOKEhl=K>aVFl$LrYCj zrPIe{fUg;aGgXedPl^dFJq>9bJ91BT6?Ni?6F42IWpK}D8yzMl!?{QWn6(ybJ6bsg`(e%yR6Te_AgH_gfE_vPjA)c2v>Y71N(zCCT; zfz;6^3EW6*=l|^91SQyw*ROO+ivB3Y3ph?dBc#A>LVd^t?swXH{iYKV{Q_UK#vjmwVe)CknfN3ny>555TG`A|? z8rCT(r8TU%e1R922ytRih&}3d;QJ#@rJH9p| z+vH_jy7C8Bexbvlyk%3&iUNAY=%2(ulKMMI)`pYZOiXec8d!;;?&u6!&bax0ECv48v;E zJFC4H>7dj4NJbF{RM^^i8^hW>e%34UaBz!Z`Cp<6C4Jk)8tM#{gD8!C`9|6Ns%Pzg zW?dM{2P)9Qq%m1v&;2v!pK1Ox2U~OaEdFguuG-Un7$r&vd(w=efrAD^cL7u4;xV2O zf28+AF_m$b#yuTV*e{x16bHPYo}4Jd<*C$$PcjIfA$N@&=jfibc5L(AU9E{E6iFfz z+@p#WXx?2CBgtLtkCXe_X<{V zl_csK>N&$JIxRz?_}T7ro=-E+`plYpTEsP6r+9XV<3`TWBCX{pw>N&_<~OXLr=l6o e$bk~>WVgGNoF%)D2XvP35RcHLn@!AyP2XP+d?pzH literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/AppleTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/AppleTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..af7f37306264f65be4449bca7005390d90a5b67d GIT binary patch literal 4084 zcmb_fS$7*}8Gb(7$tcPsanvShwnk}F#d2Z~S#a7YNpWN+vGImCh=G=|G?phB&!{t_ z#4bzOTFOpY3N29fmYp`Va?(J70=?jdKfn##aZYcz z+i(Teo-l3GKP8aq7>bFNtxCzXwF~+sT^r0(;-^D-|2D zNnl;c@biv6XO;wxbY$bF6@ul8tIHT^bEaizXZQ%Eqvc!zn+3M6#IIYIq3Q~vn8a<^ zqTqG`EoRQGs8z8Q+d|_eeAl#T93v6$tHoHSuW0%?IQP2-ZpUD&7KZh^zAs$RjL9C<;ur{qY* zJ;(^GDeJCB`?fTT%3u<$=un{`%iJ`P7?gKs~T~p4Z z#WsK5^aT2cR<(7-$u}yV9FZMjSm5qB)K&quKs&QBVHS;9-5q1Snu`Lr6QvDENZ?2_ z7#1AMag%r}jw$Hjr!g4j=XC;~+bZtGeFD3DSGPS&_l;i5H(Z;8U|ZG|{omh_Z#=b$ zA&jeIho#O!@hS@eh~mD6wO$U`Kno=Yd}AS!?w3puRP^@oiY?1%+Vo7Oqt|8vf>NY4 zdm0r6AD+|gqGh;@^Cq)olhg7N#+GFiTgih$AW?Qr$2I*Wf%Gam#v%zSQHDoH1|~5pTgvuvL(gNG+l@Bw8gtC=ehcS#Rc!$7kF^#ot6%&{gP|uDI_4SWD*gG~hL`S#8 zqf-+NY@1f`PP|KC1D)z44bI9=!FaZIWG7^xW>mZz?+M8(OfSJzZy9~&CsFcq>+t~I zr{F<>J7VV5$*9mV8*Z9Y^n28t}#S|Lb^(59va`sk@ZQH6myBB03rRW;V4kJ?CRFmiLrIiyL2}GRfpZ;i3Oi({leB+9g$;+!da^UsY#**`gmuBmg@w5i zg~6HF%3Q?`n!HB-D4GRgBA1;>;2|a@Q~2AHkH`OF3oK{ zbOM(N*qDNh5o(StDIiR?-OOF5E2dR6+yve)urDSZD2UCeE}iMgSm`7d@j)5+icI$- zDn5*l@B(1#l50|pEG6YXrsCsxl=RE?Y}f=(SCh8TNN164?DC%wXgMAn{Ye#{!XZ+L z?}TkQfzJpWs9BonX%^9R=2$u%QCu;B&(&P5NoVHxRWP}+B9oKA7X(fQs>98Cu{v1> zhbM%1Nsk)~I39NP6v(cqs5|E-1+-Bj@XIQ`f+yK7Sm8Gm)l>`Y{x49>viE)s zPb+vz;P|R_CZQVMF6GG6B#p>R))~iL(0#I&im&4vk>^##DPnm@< zWKlkX2qf_B7)op2Q&dVv)gU?SyDGki@6!NTgS8eyjCIV&8ePP*5`NDGoHxCW?e#}0 zevF@RKHlHQJ{;%H8-14Kxrm=h9RBIn9FbZsX4bWYI-}3^S&pVa0$9P%kdHs@+ z)`MJKQSnQO#*LDVO;5Jf5f(xMFVT*4p@xS!$4%?Z$GqXDrNPT8u1bU3PLuVeVJ}O= zu1luQuWkqLT|v_mcuU;HTWExArfYboERZbg`fii9Mp0gp;oCoNy{`!H{=!vj56YmTt*7%;kX1-xhgG_dLVHUgEr!|JU$dAm0iSe6Hhc5^ZSV zdspXyDw3)8DpFT*M-_Lb_5{Pd%h>+{_gm1(XEKo8iJjPu1DtOSzr{gxaYilZhDOZ{ z84g7!RI;v+qtprRq_}gE<5M%ZA8#|z zi__8t@mD_E_&!Mw^1}yT6Fmp37`TGbXT?E|rk)n}aOeC;XIIxXyjP&}MHE`EqjbJ= z8DAFAS`smJ)J;_;YB>eKPbXXBI4 z$0mWMC#0sXD!$a#dKF)7RQ1i+2dQtxCpRp74ig93s`yTqRJe>ET)_{k_-X1FRMuI= z3w%W@F9yRZH|tIeciX$GxJEw$r)7>?gB*|WcN~x*R`z2DI9AjROGqY!z*GXpf zG7htVj^GLY+J1%w_9}YtXG;Brx9h*-KDOMLU+e*hK(@&*6^ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer$1.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer$1.class new file mode 100644 index 0000000000000000000000000000000000000000..3f12f81c45611aa14393c238cba89da1fa961a30 GIT binary patch literal 1399 zcmb_cT~pIQ6g}Hi0wF-DP!YeSN?MSB;%6NnWMpJ4A0rIT__j@#b|Gv!$;Pq1_&@vu zK0Bi$_~7{LFY#B1H=&H^h)+!?+ugf2=iamT-2MLZ%U1yNsF=twJX3*|TkSV)lZSOL z2*nonv} zXGdy+Xo`C5)3=XP!}C}vUh@S*k8aASI7{)XT}z-sun(n@`Vqs5(?#6UCPQ{1sEa-@ z^xHUv9t#ErY?v5iFr36;s4A6MiFa!v+&JWzuLd6XH+d+Nb;p=Zh%+pAFTLU%5jVnE zSs29`69tChV>LKDc^hLm%aCgby{df5bj{~&5mF{&PN}-hU-7iO?n2=EA{9WTALnqv z#Ce91f9>12h)WE;Qj3u5AY>@~fwa`I6V4S(n7GQ2|BZ9BYomy3bh=8s))eRn!RM;s zuGY3G6_V*BWqFK|P+ID?d&s~-2~#G@3`<=Tl8tHHAZpz6M3kzu*-bfBPvTN3Z6=51 z+L*;0gW2TKN_sA&u$Lt6R$4QL@skl42G%wAc9waoBRFe4h(k{-%B1Z^|8Cluq$DKX zC(84KNUFxN(9NKpDEmIc{C{Xa?c5iOo%>?Vj~h}E1qORbDG{cjM1;%KGzQ%`ESF0< zhh`aiP4tqzFTIH}sl_T!eS%f~4EsasGelz#`G6#nqtQ<17KV|h6~k!^b`aju_elh2 z4(dm6$X84Bd)$&JJQ+sg8GQ;rh;75XQAi>WgOXDO8a7fOR^ed;a3TZ}8 xCsu)Sy@^{CZJxY`kvX7b43pL-m5U4pZqr5vcW{^fvn0uTctA6YToMBG`~npjhJ^qC literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer$2.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/ClassWarmupTimer$2.class new file mode 100644 index 0000000000000000000000000000000000000000..52b5e768a51dee5a5b27e7f9af1197c58bf8a985 GIT binary patch literal 1233 zcmcIkZEw>s5Psa2W(}b&h4DJrV1c#WM9{<+G?>JuAq_f&U>cv@)N9OAyGop*@~@CK zKz!f_@S_mttkM|b!;ng(*mvi<=gxOe^5f^X?*JZQ*+GHfrP4<3k3R+xPkNzF#6Ay= z)G7^9t93P*10x3_2{I#NX{1O4GaiayGv;afjwgd`xNFb-RR<-8MV<76Zgy}W4M9Yr zm&FvjksID*O7U(i7|JG+ssE7jccxar8bf8oV_%GfG7PQGZU>Nf;74tgZUTCSd ztSiNppGYOmI>U$N6ze&20j)iT(x&c-3K%YUIES*8Y91WSxG3VHhYA`D#in(wb)*un zvO!lQyT|Qpbacq$J)TIbPmCqoV}_mS-N;|1UKNu}xwwv-4sI|kow3Ot=5UJ!)EDNs z{S0%>(<4$wn(<^fYcA$-$H4-__S6XC;Vu>#W_TEiG-qG*-^P9FGInV0Tb(7LcrGpd zXaD?o9=zuxPLthIVXRZB`a8lzy62&Z7K5kN31=Brn*YQsZ(AvmS|qIv z>FwV4eK@^OxBaP^X>r}mbkbkanf^_gy3hA%mzB&FGU+nAlD_x*-t&16@t^Y-pq%#=LSX~pJqKS8=+mae4`xNjvd-oV1z3r%NTIX zAh=@s#d7JAq-#hCoO&D~(;)qhYszu|o}XwBiwg z<^?Mp@Z5QOLEzc$p3#`Kd9_^jO&J1X-gYcwh(FQp%5ts=9}sx77M>%wR1glUD5cSk zM>TX%yB+e?u@{|@c2l8myVS0$d-R5R(=;5@T`;1>T+jNY2I5J68q%o8J{`??f(mYM z_S{U*bTb4F=+Mxl;Yoq>oBFV3;Jd@$p<`(r#33pEDS`1VBD_=1xt{5&iD@aLM@KKR z0=i#zFPXvOs2NIVp6rf?GQz1*!QQz3Zmp7eh)3@bwWib^N?0}xz9Kt&`P@t8doU-SvS<|0n5wMp9+KA0{;cvpT8-g$I zIi8=!34BhMsa z0?g6jGV^Uvp;6%AhS?F@lGDI6-W!({2XdONJ=9UgO#;pgL#tSd(m-He(zf_1h3O;f zL$`$i1awOwu6eT3Mcm_h3+$Q-&HUn+SyD|@!zZcJdOKogWHtD-j?dt;QFDAKpU-Y( z(DqesEuqu6jW1~UJk$AIR{Q!nE}a(V`BCOMe+O+exl3D@D2Bv9YoGb365 zOvle9Nh_GaxZ=wSGOK87!(;XL@OW?bZ`l7P4qolOhYw}j z(6x&0D{pXX9s2m&!Gpj7JVGHIID{vVMHeZD6-}|k5g2?Tb0u0(?Et3~Z-I~CG+WQ@8j!4M#Ej4=xn%;?+Uzy+b^a%Q_;Bt*|*V^ zy^kLY)~tP19-S#Nxr<%$#7_lYfADWte@gEc@z>8 z*GPSZA$*k%y^bQ+Zedn=;J8YV0 zLOr7Wjx^~f@_GlI8g92d;C~SsH3$t$eAL(pG?rQ%d%(b_66WUG@7%{E62LpAYgXKi8wn{{WHyRPO)) literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/CombatTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/CombatTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..ffe932344b81dbefab812f34ab1b917b61d5994d GIT binary patch literal 10473 zcmb_iX<$^>b^eYt=#7TQV##0&10FCoXe2S%U}Gb|Xv0Wo0ZD)XWBfFFk{*m^2|bscB0Vr*#_|J8o+eEFezO*iC8UCSBrg=@Po8dy?*{<0kp;eQ!2tW)uP~Ea9ezQ$Vv^WR|b57`>#jRo~U)oPIyA91a8GJ3TA*=qb&dyw!<0sqKPI>*hSW ze!sxi79X|)Sb#+a77D_1)WF1I+#skPwNq{J*oZSK*to8~JI~sPewIw8Bv< zHX3#xHrLO5q!78q#B!_<%%^dkv1H1MMQqo+If6vlkd?!AY;)R>bL>@3Z?oV~LK8i~A^C=WQp_K=m>!)SF*3T`Bm zW;n}_yNXgJ5|73c0c^rO2JYtEJgT&fS!5?)o7jwd1B&$X;Vv#(sjtupj-6XC&O0uVYoLPjVfn0D{^c% zaUZrQ%I`4If>uE-ok5XlE9xZeT~=&3suEQT{ZUfs97iWJ6T{O*G*_b?I}LOQHeZLJ zL8fOD4`7$T9N5!xp!aBNUw?Z?zu>;>(MyS={axrbuv@V0IyB0mW1sVClokypUbWE4FFym&}iIC0BDzme!s2U_#R+^N8fICW2k};SkRg+ZU zk7U{1RvP3vFm}N}%8DHCu_kmLF>rvqDha|5Dwl*9(=6>cIpHKu37X1bu5(IWB<@#1 zaM;9yILMfe$Gjrj6<0-hTba6=vaNBqoF~07S91pWv_sW+?S{I-2rUTATMIm++X6k& zi#W#jB4;$lcBM_#o@mq_u4IcN^vXoSi6@v{1i=zA_IM*G#J8*Sfn5QNV9WqZ;Jqc` zp2Z#$4vx9y)Jv|E^s3aFcA~>J%g+;dr>e9+rcGj5-Gq0U z_zCj}Ka#82V9j9Y7B!j27V4(HbKte;tiyrtP=ykD^4U_2d+ zSh2OK;4v~Wm}z>0C&t)w1y9A(YZG>mFWmlWeNZiYS}lBL+Il5hqs)5Bwhx;4X=R(Q zwXeI~kFx?f9Kg@woPnPcY$?gJT&+-7$#A>Z2kwj~#;p{~mx&MI!*oEt2MPPSu0w}r zB0$qW%9W2OTRvvu=dpnSl8U<)%tso}nD|Bf5*s;^ZMeryCauv@%@XtGJl&sD{nF`f zmN;R^`Qu(FkcN3lH4_3HQJu(8le%|lX5=?ntW92{wV}xTt@$)62!Q78l)W&U!@6y2 zlD2N2QxemY^0Qa~FW`cK7g=aa`gA5Hgv^!XTwy!Q)Qkcu+a~vnD>LSYVJpy=;j5_&h6J z&`JhVW44nZ>jkfx_zg8?A;+{kNmT~jp})zb71SG#ppy)${nn%%JnYABkwC$$(~iu? z7x9dN*O-Cxk`d!-rj~wui5m|uG?k+48Y#0NIFl(Aor$2Jc`m#w#F(zHQXE(Ct?1H1=!Xf!Yzy$Hi&Nb(-vjEVa+X2O$SrhZK}PV zuv1yXJdz0y25EQSfsTQ}0N%hg1K$xe3_FbcmNcnzGQZx1;u?m5L{l>yvC6 zGbbo%RqWIW%J)px8MclA!r#iC-nQ7>7CkUvC-#O^n&OjrZboj=+Y7;}Y24Ed>yX;z zgxw*{)nZ7sAv{G`F~g$#fu;mxK7HQL#&qy#TX$#M?xU^UeQn%^73qodXOfg}$O2Oq z$|82hv_*Tt9@d*J?sW=PbZ6>!&GY33sWqgAr8ZBuyb-3{C`%Z?6v{nHipl2IlG5~m zWCs4fYF9rEZ_5en!%C6PCtfOs-5u?bbLc*Lupmn;yEZao$43 zCgh^T=;`b29PH~4$Xcm4gr`>7TJE5kejPe*wW=AKru2a+wO zG|N`q7-ygJl(i6-f(kQzg|0*Ohv=6AYBd?0eBN-KW`<3%WyDQ0>I;B6+fkeFf=rls z!SXsL#|&`<^(8}Q`ZA^*m#Etjdg`_?n0FQ+m0h4rsA##l5|HU$D2 zK8a7-i4#0KqfdlBx;c_gB$$3Oc`eQxO(FJgcqle0t4Iv zMr`$cj1`MJ-OPu`^(wIwsLmL_7;>kOOsWqR0cJ+ts*Mp=k?@uLH;?~n)Q21%6fWd- zHB>0f=iL$bP{H3-p@u1#H8oSX@iLaF%a!^vcnNoe8eT&EiyTye1}#9HH#XoFG$M#5 z{sor0LU^~HcNC`=BbEqbgSXUHtqM@H_>Ry;)T=e_)N5>ffiqm$RU8Z4sb!k_y2g{q zQwD6|sAj&euHdV!ynwdhowUKn>tLv%@e;Q6HeJQihO4M?SGm980@`E>olR<)N^L@o z9)Ay&+>AxI7b_`NnGtg3WX%Yo4|}v4LF`38mp4#{0Sr>kK92W8-o#1+`#FZ^#KqMc zr%;91GOgaBBAO{|^A+2HDt>VZpp}cYYsG@DgsfuAvWhM96jSQZ)pgY5A$qj}5A#6{ z?~d~NkwdUBWFvxMjo3H1Ko#FVLZ{n3jZ-*&4*U7@=;x8{4K+>S#Ae@8U-eT@V@HE; z3U6zA8BZL%gde?tAD_azYu-17CokXw>hdXG>IuHe%lH}I)O>`0rttI?{6YnkVLpxc zYR$b}WMU^weqFf{yGfvKtmYSzwdkdm1KQ9{96`OZhCYIi<2V`FE~YR?a0|qz7<-Mn6dB9Oj3IfIM}+6| z!+1Y`KL{IVc_98WMtN8=g0JDYcHMSOscTu+U8C#1Oz0QjE1v6?<5kafw{f=Xy1V)N zyZAlM%{b8=pK;;}RQkV%_o2#w7^+`e$C9Lo!5HpHR$qlz0EFvCyI4Ana-^2YpNXPRGN4mT`ub zSIW0uh`6yIV#I?e2Qa}PP4WLwq?t`8u@NU2<0ld02aMCaehP2P%L!+*c%LQS|4l#^ z<6RnMHwdaxG5<}xo1pR4|KNX1V)bpE8NTUZb(&WGUyoM`-kidB&*2?eXi^PRQgK15 z&f^%b%&Ul~pDVIh@QN%whe1LoHy1)zD|K%PO3O6M&M?$JfLd~K8$UL*5|bzSg+Zlo zH&dR@qH-D^ms@E1JbunlX(KN+JgGsE<+FnFEf174d7#wFin*Y2YbjJ#y@jZJm{xv- zG5k?%$J1!T$Hr}y{E4#xX(tdSNz^W|#64%f6+X`98g z*EnBw6nkkCGmDTG^wnz32VBo>>rGQ(t7}y}%6l zDSGW9Rep&IU)H9&t;pW2se5VaAWdCBzq*BRIpJ^%VJ>s3cbUw|rtdoxC$dlW&tmUx z+N-+2T6TeQK>gDmnvz2YlyltPETD&chE?OUT0^(ztIcXyOAQZGLs8u|D&>fpDG%$8 ztyXoQZpX%_-t~N5JvRZHg8Rb7(t z=Q-N#DHiIi{t97xl^xs{v{G&n3T2fFX^2!)8S)w>UP+w1QWYU26Y{7gaYz!9B#$ys zs&@%V@rl=1t)yM)(xt|WiHC`i0&)d2g;v|UlO3P^1q8Ktv$=$Y&2DD*2E~8k z`0~NG@q=~7j!hYzamFux@HaV*=k8JxR031K?4En?d3nxr&pG#xzkdD|zyP*1L>N{a zS6Ump9~+z8E1Iq+Hn=G**YOQstqLw}8`3HZ&!|evwxlI|L+)0DG2s-2R}tK^@2ca= z3rd{hWiiROg{L9LaLM&bMxnaBZAo&sDT-B_{EP(~`Ksgaf-M+Y0{0A~xhKK0VDnw! z1rUZ9S}Vblp(oc6TR75^yGE$0w1zFmk|PZFQvW;V(Q*2g8Dd$tC=!UGT}K=p4AE5I zavTg#>u5o%l9DQr9&r<9C&6wP@e1_F00)B#vBYL7< z)k)wi&S~gj=s)sS>II=B-`hoYGj;vZ><| zNTWTD8+b{B!O+!E=Gjdyv##xWI{NW4LwtNRe|vrO&eAADcO&r!io|6a13F&CYt$9I zQV~v(;d&}p4?bVm5~dvLYuGx3XQ&OYGwAhcFxab{4l1WqONV@ghE05_yx!C?qR>b4 z6XOZIg)t3;|JIRJ*kn#M%my7$-N){m@}J->fcY5}3r4hPN38 zk3{j$UKp=>T+Pu**DG@=1>MOsW{9Xp0CdZ#nYFcla~s@CPRA_f7}}&85=ZcLnE1#PmEiHx@IJ$ZI#biOElS)b zODPVt)L35Ev4##c?6{5sh`laPsI(u?tT6RsDufbAEV@*5Ybr~luqJE(Dx}? zt&)b)>r6j_p3XcZ;o3u-`jNIGc!s`7#OV7eeLo|!&(VP|&_z4Fp&6bT(-_X4g)NKy&v#MQkpkq_!bbp(Wb gPx|*s`-dQ!9_sH$i=ar>5eRJ1U)=yh2^Qji1J*yg$p8QV literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/EnderpearlTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/EnderpearlTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..1a1ca92fcde271bc8b17e09d4b199189bfef0d57 GIT binary patch literal 9135 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 aIz!GY+?L1$*_B8_T>h%up|CuO%I^XhEgu5_ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/GappleTimer$1.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/GappleTimer$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d632f8d2a8f7e4d94a7d747948d0e12af9326aa5 GIT binary patch literal 1124 zcmb_bO>Yx15PeRTgoLFDEe&6V@)00O5vBrhNmU6-3y~J6)T#$=&c;dHZtQ5+TPge| zE*t=f1LDk&LX0<&2$i^HrL{dXZ=UDb<6pnO{{Zj|%_4FPd)iplpM2y)5%)q9%f1M$ zGCJXjv$}@d+^Ug`d1_Uptda@0ld%V7U3~ekHx9rkmRDO(OqD54_~D`(G~o|DV)W+9c;H%YE%Wnvjt z8o}S=4~!nPn;$4B;sKp)^=yn`bsj&xF3Kq42E)?7L}gNa)5j`m4CMop#-ZF(PGEJe z1s=N`hSGr=XkpWs!Y}7Gooz7n{HGVT=J1(-ZBkd+)nQ~3r3Y`N9hzPdb%s}q=oB9h z@Q^kzdOs2q8ShZjrz5KSX(KT4fOpfA6J@zPmD=)g2H{g=$I8(Rz3ZZFcmIAzYa)q6 zlE?(N>CE!=<(SPi~yce3WI@rqNlZLtMdCs^_3;r(N6UpIHVSN64q$gVh*ds_V+uE5 zlY$!sw3t2DqgTadYzeI!_g&Mbbqqz|xTV`=EnF<*nwL`8idz)i%rjTa(wPVVeGve{ zII7r&?E-5Vk$&6rb-QSUG5H_$6r>63lE?^bZXK8uZpTgqcL?lTQTH+g<;V;2Jt;>j z?nG8#RYi9_8n~%dSO!vPN2dw}IU3PIVnAYM!=Py!!`1m2!cw2Hs4P9`6m@G#cTG8u z78CxQ=?U}=u4wDBm+x3V1%f+-vA`X1w5@<`fez+l+$HBWR&yzi-S((x)UF1XaCttZK_jnle3;2{~ai1wlE| zn%kNc1|Oc$?UH4<4D<%GY?Ih}B$6%5D7BLeg+Q|6nvQGwivpPybc{w4RH6)x4EIlr zjHS?vJ_V-)x?>T%4o6g+#u@67WknwaZf~R+)0XZ!?xH5Q$9=tco)t8JK?Uy>xHWcI z3rQ727!H+Bkf{lPM&(0HA;D}F)?gH43f?DhLri0RTg5mg1k}?bgT1GQ?>{j*I!H%1 z#iLUf4Q!iI@qT%+6B^A!dcENbIcjm@rpr%!P5FZNpD@-rJ)o2-g<|k3|3u|#7 zKBC}$ftzCHHOQ#YF%#0$q-{P>HTp{|*m@;MlF%k6`+MoBKuLvxSt6jsCReoxa>pt; z5847^K*1b~`Q51HoqJO#y?+!uarc(4^UWE;Z?s~F6)vX_DXon5qDTJlD z9EXAF*vf3x4tl*t3MrXIqN0$SPT~QkCA;tM&pa0Yi!I2skZ^re1551Ekl}fHnK)}n zyHiO#NXW(%WQ|aBY)JuuvgKO(I$1TXlHn%tQGuN?=|DkjPIZ~=!K{@@VF4ePp|8q> ze^SM#@M&HHY+bTVx|ye>{AX2s4iA%o*`p1c@X5Dm4b6lW*~VV~s6gA1;ONh*_yYEl zOnfKo#YucgV0Ycp?7>zM&14T{G7-s@lK4v9)w*HS4F~|P< z4SZ9k7_i>d8aCLU zsQ4*<#`)N(US2!m?0L1*l0Fyk3yH&DUIV|8nR7;wZLbNs%kXJ8G zFfw|OtBWdrEz!7M^0Dd3#yZSGNa9u6ktx>kFzdJ(o%xtE+>A7MNyQ~;aN;C+UmEtB zH0+Ax>YkPD;N2@|djfaGUA&G~$acDl7t12qvZ3>~XlxYaJxTsz5V*PFn1;T=78G>M zA-xja)>7k6)h!zGrp~)l?3YWoq#P!*-{wz@9!vK;!@~{&y`BG8@oFI73X*)T;cNm4 zwDG;IYj+K)bVm*8OSq|qThq4%!yQZ5^)mO{(8Xsel*KLBj@_JZj^=xi=Zsp=4UL)^ zGwh8{Csh>-@5rVrmvG=R+&0L`h1lc@7S5(0TEfTp;U{YNO!^T%YIrOrlKx_R^5yvC z@z^BL^rY03ui@!L`z3t6S=D!9AEcj)Pp(?{BF1+oYWQAWDqO;kF5<^E{5<_DD(kA@ zWxk@7SAt=Un++$1yB*y%T&5p^(=y5JL6WDiiQ_E6vWtoCLb6+J-;j&wNY%F7wTQ{{cw| B^6CHp literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/HomeTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/HomeTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..796c8f70a47325019bc7181aff6b60313a3ca6be GIT binary patch literal 7125 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 V6^g_u;#B^YyXYEGBj%hR`X5}t%e(*p literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/KeySaleTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/KeySaleTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..8594ba31d2585d55e92606f42fd53b8a1aa38952 GIT binary patch literal 2238 zcmbtVYgZdZ7=8vQ3F|^hY(c8kU~5gFbX&!1da>Lak_HK+_TwZO!jxqOr&M>Xz?9dnk#2*bUzK&|^>gZnYa zD8o#s+Fql3a3HlOo{B(wWf^G^2*ogZTLx0!WmwFY2Xbx1eyqiQZ28@`42p$1!^m>j z5^21{kS6g9M*SGZaXy6!hRaX*Q*M3qnqkoFDrLxxuw5c`F^LSrxsB@Xc8%eq@~PHE zhhX1zaRC>JONSNd`!XT{`BI_eU>MUbQh1MHD&Gh4dC>N1TFIbYEE%ci%Q6rTyN3;- zc6h@V4B2wnx0AbCRr>}h&wi147UbD4u~+rWLxN(Y>5U}TU1E$ z8N-Eq;iQKte9SOyBbab}sVn`KP!48s)r990hT(jnK88@jrDGNgE^fdh4|%5}f)>L8KSTMg&*g3Fuu9D$S@HGabMLmSDK-EN~xccTiZI3Enj7kR!uM2 zE|}Tw2Bx9wGLlqD_XBDrZd=~ebs~QK_Oll^c+m2NqCnom{S>}qC=G1DH&*3h3Ck2j zsvbKB817KjoCV)rFQ&1|FjwJP=k|G&(_t>6gy#-L6!Esm?S(3LAdVvH{#;~&>|h-a zQrKX~B)ng;Gsr~=n^f5i74lY-N4nBSVYrwqpO@)l*U9R$j#R?tn+nCjwn;S&yUnwtBI!s1IE`I~`Tvz0VdXGX-a3#8 zej0I3E$phMSd(U|W|CjA8)hU?AJX8V-#Pk9j?goOH2sg!YK``W=s7W$b&laWJ!GF_ z>KED>!VLX8_B3l|KQ7UFs&9?=@d2&q9xmfU!lFJyF2-CT8%AfBe#h+N=eTl=Ydu^) z#?2l+@8QcHzWJF>`}m{Qa@u0M{aZ0M!?!4s)orphR(I%W6xZq9D9+6HaQ9EJpD>nP z`4wxAjObx2dV-!HfewkABw_yu&%6?zK^YZ-dT4L4NqVhf>p%FukNI|9$9IMJt`gt1 PfqX`Kg6|Pg58;Ow%LsXt literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/LogoutTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/LogoutTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..b4b595590a1b66c055f441a614a331c22b18cd9b GIT binary patch literal 6032 zcmb_g2XqwI6}=Z$-aT1e8h#|=WcH%&q6Q}pyd+%{_LUMBd{MGKP3Ia|JX!K|P|L@)R-hJ=C zugCuT&?5jg;9nsWDQL26*BF|(Gd8R_iMZ|PLt5N5Y%3K@iMK(UpJT2usynf?YnX;> z=&6`HF{Z~l?4+G`_lT(w0t&WWiKHG=o6w!CkP-zIwv&tvrbk8$H>Qv4mK*CZQm$_4 zj)IachGn>06%{>#M3eE>ljufUrnKITkCJM`?|=HDn~EET1)T?{nJGgm+^@hN;I|_>il!pXx&&I~Am>#;I~sDgE~`Yg{GF-pbSsk2XvRII`i6a>dKCq>6EnF&sN1jV>PMF^Dy zF~f>>!GnbzhNX9 zNa%x_)5EMW4k@^b?3w1&FzRLuY1}q#CxRQXE`*!7*B8>pVT~-}w2JlEpkTS{XjaP9 zTz$Lg>W;;MH!Tu?Catb&oUV2TBnnj9k_p#okJC@JRUJO9GTp|!gpB2vHH$2)7mlvz zOxPH1MZ)2-wB~0C+zZM!viv^`oB${dJiDDKZML~GXF>J?h zClo|yk^N>L6F|u_I_jdkAd`7SFIj#ZGj{+-flG_{cu5KDCKWT`IZ@<_3iDT`GF9Tkeo< zW`qmD(Bt$-HV8zdpif0V_L3$<)T@tbtb|sw(YDQmeb7>{qA-#L+pCFvKkc2$%!agK zCUjD8A8rvj7M@2k-lpPdxSb~SHa9Wn{2t1&l7RL>Q!$7*i?TL0rdtUGYyJ7zJ$OKm zlQq+LnN`X{NB%9|Z>OW9q+%kfMF)lRYNJASQpg^jB68LmH7QcK>41t6)XFe-X`^}= zjP#4`mrj-+;m;SS zcoLpWUKA*wYp<{D?KI*emr(Y^vb^4xVpj++o3qm7HVGcRLd7fbD%oB1S;ie{y^SeS zK6yTfvoO}z*Vg3a_G?6Lzn1Bc&7k~jHBUeVuM;$Sy#l+?X9YB$nkva-Rsv(K$ns+cb9~|28yK=; zJ;6%6{*ojYSjoL1={#OA!qOITpZUm)r-0N)_6~b(P4l5K!(rpXqtEZ&izg-P{*)ZFjxs4<1wTSp*}b;JTVKh-6S!epLobv%}@y@Ve7@ z;z_P3!fJ1K5uYpg?>ba*q{`i>Mh)Ls*if65T<>WF7L`?I<*oJP#UA8BDXhfXyviqN zQBDw>9Io2PwdGv3iQ}gXU^D7aY$m43Su)90@mVkVv!E5i_2FXVR`93_J_Z zrgae{a2H2H_72>Q=g_))xN{MT{)3evwDSK2>P41<6fWV z%DEAYV}y}hj;*M~%^sMj6qf_Dnqb~QC=t@_jW|p=!Xu>a1yqLcCeFMCZ@mnVNAe)$ z&=2y+j3Aq+yqO?d2(oonkoR8{$>nsYeO#V-$T4pam@;oGE+O%(wu*&M8?2xiq( zRs;+6e84YNEc2&81ImcHgKX+#CFmkqyRi&C^wciC_42J>T-kApxGZBoFPj56$hUiN zD~{kcJixCaJz80jXnij5#~Anz(WgP&j|@)Jdy7aDkrc(;-HtOj%aMjAJjB@mW!B+g z&IUb#%tz4$bcgWaf1{5=9>GT`;2agqE8^>U4mjk`1Z4>RR<3!JMdA!Tmcb|YuF0AI z8BrNNC(S>DFXR(n(szh@lhkP71|0A)qcUejrH5El*GhaXM_<5!q0@6zoeO`@M{jEf#Ngxo%bqc%IY%s%VY_h>H>!fQVhJy0FL`y g(3Zp3mc>_sM*JQBpq&CKExLeKaqv9Ow<7%We}Qf;n7KK)AwS~4GRn$PFtyin|u(#FT|K8fm+RL_L{r}!Kv%9mK-2_@%+1Z)zc*pOZ z^DSTf&tqRCqUGvYgA~(-NHh`Z-E&2tKN#!jj>fFsV0R)Ejl=_S`L-j9+kr%Az={Qi z5}|M?5whZe#GXMb(7vm^Jr+$^dU%(NFv!Dn{(rMzdpNkqiaCoEF_lGQeSsZAJ9mZ> z0c)2PNd%fh@q`tzVob&Do7=b7wY9X=w$?M1G+!3n6%2%fk-k7@A{L7D)i6!00|SX* zB(XUd9-y}seOBWLv!s`CT_yM?)xnbot?Go z8tmtVkQx4Xe!(<5*Pxb$uG;Mz8n$|A8i*PUb?+P+Y_a0;V4qcQfjg$@p@cQCX;Wi; zyMCze#+jBjN329(AQZ8>W5M2pmU5skG89O}qPwiXKyWb7)wbg@h`Bi$>1zoNg1-r! zp}t5kF%$zUbtgK1l`S#RW_)K0vH@5VF=mNV}eb$=+4n;ZP)$ zIFG4dQTb*jPhGUfnm}{OZ_p`BbF_-|hTYLf_fRY*8WnAC!Yq^K(Wy*EXG2|EYkeov zDJ}wYjIVK2L34fBVSz~tX%T2hL|a1Pa0n9hENUumnm|kyCYdymX>v29+d4F`0}!+I zU(y`y4u&@eVtl;<@)GsT4~TZAngPf zHK~SH*`(RV#k642Xp1W!eM`h~o=NA^YS3(6+>D>QaJw!qM)XxR)49lmEr0nr;^adWRx9M+pGuJ)v#@utorZkS9q8)5-aP#N@L_35;Mf zu2nU#kZN=$g55h|#!e71qY<6P)Cr$VZDWLzG0axyJaHW&V|t|qNrE)lWtlk6fbS_8 zoanqsPjnCptDlU-0cl-bFw$*>!&XlLavDbT9E^pcF<20jKhGNN&Il}Gw6wK0cC~f* z=vsP@LGNa2%B!XmX40hh(siH+7N!LW;EiQgW2~>I1HjkP^(MWaK48Z&+eL^kcf5>t z6K#VMT7zK>zmaY-=z~b&(pgLLsYy4}hpEy&{q%Ir`4Imgq`Vd;rAHxh1R&c;h@&R~UyC(J|Veg|)&^-p-&9pKv(#BoK zq)*bPY-H61ha}>kKNhmw>vhZcfQvG{0NnLK`iw!JW~w-AJ(_kn+nE`#M$NQMC=pPKZT7>OrhU7j%L^GxMq%dJ~LWXs)0N9l_u zJx))+DT6WFjwPgIaMWofG%HV;^t9Nj5sEhq3?}v%^ksx?m+=YO#pY$*XH9yJzG6e; zf@mzP*27Mp-abA(6Lv=TjtiT#wA8)cV*_Y@CkT~SBKGfH5#ZfHU>`7MQ z-ZFW=Cg;tJsv|YjhivpmCjFRx0=Zy|4r?F?&Le$w(P+3Qx*KKVoQzE}99xYPV?U#x z8}xrjL|ih}9xGsbCnt03vclG2G?vhIKR@|R8=FbLpkE?tw>NKE*Vqb+b2D&aO93Ez z>DMOxhJFj3C!9Tzac3}*V*h{GsC=72uQ1KX&Z^f8g~B}+GU%77Z35EhKbZ7K`V+X@ z+R)tGc7b-r=?+LLr3L_BraznX8vO-hgM))s1W-jLoL=9FHKQ|VXG@e)e`8wi)bM`v zO?v#hgK@vMGz-`LX!67p{yotle;m*X`}>1E@-60<&Ho{rzn-3%qA;Y799bbFld`SCKoaqOT~!VJx*UHPsO(x9*n&vPtfiIMO!PJ z71OHYbIZ9S7__D7gu5zrMbortweWK)Iw*6pXZ#ZT0C%GY;!m;#< za=G^LICF0(!F^etRotdMDkGR2jo2Q$!-@|E#bpFCtSyHHJ0rC(K&-LW|D$QJJ&fi#HRGq!h0Q}58UtsEhPd7;URxE$GL9KlZV4;_`V zM{g_N?Bz<3x)lZ+iSCBE?y_uq^>Q`vVcXMUrm74Hj4d`hg|ih_Zv_+mqv~xvKf}-K zacN~OK6n1F`+PMdf<^hxIxL(RtyICovM6$hz7H5;e zYnkS{I15FDwPZT;+>F(GK$?tim0oTz97g$tg3&cP z#gzMIj=gGf!CO|YDdtw5ZEzbLk852=aWbNqH*%-J9n!Zvu|~AXUAzgY&)^W;V@7Mt z2|{SYiZ8vudprtL?-e&TJjKaZCogZOWtiKgJ>70qp_W|;h|^`z;c&U5U9?Mu~8vjKn$R5a<eq(QH}7KAfTyjHjFw)rig)xSg29rq(8(MgAwQEE)JotQs_ z`)K9tvf$2^oG43hEdZdMxata3_n#X3@CpK@U{wwg?Fgem6>tqp%Erf+i%=lhg`oud-)xiETb8N&HZ{xnq^c)qj}4{EI@*W6RwFKrms~zWe~A*)a{v z;Z|}0ymSwo^NdAJ+qSu7<>0}~55XU#ybMI?ImH>cKWq(D1`8u%ROb-rVL9OwB)E?F!_u8IC$)Kl2Zs{ zvMZj*i)0@^DTe=4E;p8Y@nZfGKVvXjDHGF`1eOw`em3jfU=m%U0cY@6(3be0qq&ct z=~gahbzs^8eFM2HWYCV2;i-HzSrO{L}6$WEfXs_vH4=;FPZ!UDQhRAtZkRqA3bX< z*p1G~eq{2G<(U`pxOQ+byhjqXpPKwLM&HJZmbX)bjM?fz<+6l-Ve&8eR|wlsiqmLl z2}W=d0-?Mb;UTYRb$?STXlFPO`U3yPr9*P50v(WeZUID!*p%pTXtWEM`qK`7a`PUnt%g?6t0lMv#vz z*Pi3VGz-=w% z-w=%!0v}ybX^%cD#nOLFeoLV*GzqsGBD+GdXk-BC171mGrW85>pYIw`GeIfkF;oEx zeOIU*HO^Fp3OyjBYkkA^201)5*X^E14M(?)l^1y=pp2Srqwk{|?KF_|XI# zLicO2SCvYdoVq`#jdigsI@45T>STCqEmi(etsBQ@9OuF{hB|dzQjaCIF+7|+vX?NsAcILNd_awgrx!D48BI?Y#f+3g-}mGnPxU;|#; zsgP6!;OSIIb}Lt!qdlmR#_Q~jB{nz{Pj5Kbhl6q3kVYiZ*ba=NjBI2hr|eCG89*G= z!cB>Ay!Eoh1OpiDuzN%K4>Rg2ul-P28C@wrplN(ii24W<|MdvzDXMc90J#EDhdD0a?GGkS% zAv)ckx7+jL4A#K$q^n~8g=n;^dQ&w>qusNnt-0Q()~QBA;gnPU7pG}`$yGcn#|8!^ z$NHQsy}?w?vUEX5L%mnE3O%Wk`r^f)ryYK3Q{3_|^r{Xd-wUN(Z+Cs{)L-}Z0nE~9 z1pWi2QXd>ZUa)45{ViKK8lM5kRE#Ruga+xlNpDzfR$B~(uK!Y3064zs=sT*d`C7#G zricVDs0&SXk-FG+0&7D!D^Qz|qaTvgtj|zs-feAaQI5E2%MBFMGqa7HW2C9BR@d0CygU1&IByM6RA#O}7>mmJ zV4Mg=uufffB46m116(htYfbfT^&XwY*IPS=dV!bIG9_fAFoQz8g@81!Gu8X#EPp91|(+#2XYUDjqfw~QEq|~iYevi{T0anq5kL|{JFN7nMd*Sd7I5J6x(?$L0 z4Io_iNubdKa!`P3P~B;&yVS>>v_6{HojNW#=0V^-#L9TU!uUW#Th|526KpR{gzJng~EfT`m~%=)+VgGf^zq>rn*<5AtiNZ#z|`w zXJe(#>2R7ctH!4uP!Adkwv<0j$urkf59!K06yFd^=p(~R)WfEFMBzk^bUr#ECjFvg zoYU2|Wa1*!&J3X*RwITwGQLo=r<&?9b<}Rv3Jo}#==4ukk0qhpWXyN30I>ON2POyI zkxGpIwaH=uEBJ4W;AbJo>f&+nNKYW^9S0fNOk`|~1>JOj4EV8B%~b5FIt}$@IHys* z$&RVH&a)tVXPjuEd4yC7{}oaZolFLKaXkSCG8Oso9Y0;b^~p2|pUL}^@qMamTnUxP zadA8^)$?ZHI}VNGdKyNZOtbK0Hoh&zKJsVcA(}ItP8+7vAExq$a6?fg{`TRMs1{q+ zQI)=nQ=vGpwAh&*CXXIbRZ%%ifs!+aX~hvbS1xPyW!+(FtT;-|TMtv~qtsqe`6zXy zS1-YAqDBzYKnth|J8sasl-g@j7j43G!aX4!^#*OG3!I%-X#o+HOj%Iz2zAJoTlALO z9>ffr`XY=aYSU|)`ntqflj%|lV$=>ipCGM;Zd{O-NH>TQnM|*IhDz+Ednyl6KMzwx zNH5TWnWV>bVeBSI^a8zw-=3Eudpad(NN+oxcF}HZce$R=({OVSU4a{K$Bhzvdk3zs z+(z%Dt1P;juF-_t;t(RDeOJW+nvc)-wNwq$4f|-OLm0k&_zBwUBG04AD+P22XKTE4 z5kPV=pl}J5gJaR5O=d-k%nG`l_JM|p*mXaB6qI}nqeNczojcNmm*eK0bl2E~D+5>+ zw7vv_KYoY~9H4LE>b{n$5qc2ihUXv+mw85LnCS^R+FCtKUszdKRyaaWGUzBeNVgxQ zFKxx`XYk)wJw4Y=!sj>ed6>SvvZxIIJ3`;X1!l-{-h*^;nb%ov?@FVh%owI0PPp|> zT3cq66&<3Vj?k|Pu=0vB<0!ohB>wIY{eGBUE&1y({rwRA6PFdk^oIVT@BasvAZ~;U z6k%mHnD)PQ7f80R)(Q%2F|ULT5?L^lUYbmObUO7z{2@A%F2gTt1|Z@HgdYV82I(ex z8x9^u>3NKM5qJ<)tcPtwPAOHqM7J|~OIYhUE@l&QJ{@OBC$gZe5{FzT<6a>~@8Kyt z6~1AJS~bQDtuiqidu9o)?D5kuUQidOqPJl7g$A)fpD=Kw)4*{|dW+^zQR<#SM{!pk z;=vM{F#3UkmYkmW25o%{N*=x51cLr$4{XXjolhDYEc7VY5OdpFIn1Rk6;)LuJPR-5 zAK_Cx!+h#Ks;jW?;M;<#4E;@Gs4bTQr!mYTrNOk#+D35&B=UARly}f+bR}(}t6WC0 zHKmEI(1bWSk+xW|ZM*Qp$7qXz<0s4kUNSaoycH-BJ4k@Fr9eNQ#ng%qbQV^6aIYo> z`~B3MgmcjmKK~Gv2Ui#esTx+^UR~xXE3)Cu4I{j+0Kja4TQ^3y-9uaOjFAh=hsNnQ zE2@Th>ji0yo&_@|9Ca_Gcf+XP16S}~0O2~CPw#^xzk$xe8TE7MgK!i#!3*99)ZPNL z+^VJ00S5y5Q&LGlDi>?1L>;M^aEzDmcBpVVU8+&(!Rp)iQjOGVT1}5|5Gp>4R`3o` zl18dMsvC6Kqk1q(ka`*wyaj^1f+EK6=Jp!A9K9|9KeV z7cbZhQTGE`@Cs|@iC;Lk5@6by4W?*5Fug4&m`(<{1kYIr&r%G(ITfC>6lS;q4pL0J z0=r}Hl<1lvy0{kII!AQHRLcp7q(HL`p5CMlVAliYhIrRF%suTew-LawR4wq9hxP(hP zMm}(Pj2eW|ck)$ZGs<6qwu>RjSHS4iZY};0H?GyDu(D9>1O~*{DOyofS|ndb7$xYf z`ym$?)CzBDQK{FOaO)j3B{}v+MOz*cB-~V0qT~Ds-&{Z|ePzC9=$&Q05k_U?%!y*e zQQo%|Q#(q%(`j<>2!Hf2e`16`SwPuR{&Y&p^E{p-{8{}~;>t9BF!d-S;7sG(5bJ3pX=#cny+ z{U+Eg#SgN-#oq=&LcDhEiwu4aWPXRgJ2shYLJUIYT_Ev$;@V$CjzE`I9OfVHqZ>v? zu|5B56gx;~iDUoCK3c5pTm&#*@Hosr2Mxa-;g=OMsz2?gNzPUU2$*T%EYOkYd(h(x z$XUJ*;k<|+7rz7z{*ZRkPvG-^3di+xm%#2y3G6Ni?5`Rh`yG6Uz!2z<$xjmZE`!AW z#(y7MVrmW)i)4peLG3?U@YlbF`Pc}*$#h8Z0rClV2wM*E!^#j24bMUH6r49_AD2}Q zE1yJ7HA$i-INe9BWdHy;UhCpG%No_xJSL~6;XyLVJ4l^+$^EoJFF9t`k$=gPTuXw` z8Hd!Y19WMb=SekhA8m1zRW+hcQ?zwu(KFP5T-I}d&da8GVLqD6T^l&^f+FmKq!ncd z(XXN4-_Q*DE%LgTVUWLvlK(&}@Ed}2=})NPUZqa@Girg?pzy!Km;Vj!?+&_K}XDYqtpfUDb8r2v5&9Uz>+vs9I;1`X%(6t!3dpyfLDsU^57WG^+S zrD_>$MF2C4ijL7-0H$O$|A)E}-CxE3-=MaCA$w+ZMt%s{0iA2HkObYw90)02YxR?A z`98W=o5V#cJc5}!t2HQY!=tnI)6MYk>g;R@p94WwR}HHgEotqX)%p3Pj!O3Lhg2Or zc&W!za73-u-1y4hBviTJxP1_@uW)65w)$gTJnr46r3xID$0tGP&qOWiIgv? zPNnBkQz0W&_?5Ry5|^d~lo|fi4tbC*VO^t5Sv;(IQqrqHA(-6q9a&r2O6<$GMJVqU z$EC!bn4Tg7im+|23AH<+nlI$(WTMh3;ZiE)88m}u(Hx#ll{^QBUgqLw*Qek|rgQ0L zo`-JTe7ciQr+at-eTx@z2`|9U7b>-q&l7m_%%qZWb-NnS_BKsLR1|tE;X*Zta-;zL zlGhw1&%w`U1Om2|okRt1(hNi4r`dboq&*&d{1aI}tGG(!Q@k3|3G;7(7(v-)D1H}$ zn!=$}(LSxKI-=gSk5=RUds8+1qGS!Pu7?@Qu+oZZK*K4%CsbBX8de`jRn6Z^WB*jC zDp(xE5}L_Nf%#>0HlKlit6@3*Erq4DiOF4)rY{%QaV|E zSlt3~h=W-u`NsmgCRMu)btPbo8h5@Fss&O`*f+7a^t~}jx5m^*bQfq^Ay)3jD)t}y zS~_GmV-=~=%k1Djt)jAO-bsaJMTZqwF7(`2a33Dp?Eu|x;&aowgefL_SY=vA(vK>0 znnAcyx9j|0uJ*x;itx+Se)Uo4GTDQ%?|jVBE}DWf@Q?H0I2NcC>ZBTzMJsf8QFjch zPwc0;N7R8~^_gLH|9+>1r49|N;b&9i+VHi>t<~h(?XhH2NTi9a7Lih)$E8wVQ1VX$ lok||{xH_z!M9*wC4v;*xx=blvuby6AMn6+uQqQa|`+qsbivR!s literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/RebootTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/RebootTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..8858629e0559bf871dcf335c4a314e83d56d1d83 GIT binary patch literal 2439 zcmbtV?^7F96g>|DfpjS}O+nCVu(gI_yK1df15`+$5E8%ysNj$KvUwyAmfg(m3l=~6 zU-(}rA5unVobjuFl;eGy6?Y2sL&^-<-M4qoIq%+c@B90o-~R;g3EVh(81jy*izltNq@VFbKC$?MV zb_mkXFz$MFv)Vd1kjfNC!ck^X`bs#$W9Xlej#P6Dy_uInV;t`?j0MSvNMC44 zyC%E@CUIMDa9|L3kcs1cLWz_s*WfDW+OB6{3U?_%`T6qdv+`n|@=?4fE~^ngFmMm| zsfN7S6i$udUNm>>)qP>9?0Ko7rmU9op@EMyVQgW&m`~8c1B2|H4ocKXz9#xq6Fqtf zKdjB=`1;ES3|C!eRUB8iEh>t8ieWv|Rc!)G`+*a^0BKQsJgcoSUT!(M&$gv6$qDlg z)t(2Ps0|v)U#BgC50|-9vxP^AoWqxKJZ30#{~ORJ~-20X$(yZ#G2Q7v7QZ(mzr=rK=*Xrw$Dzr=FHhT5oN|Kmn@^S4c{}{eYm1~%{&gF%pGamZ=1ICb5)h28UJ$PR#}1e;7? z3s2*qVqJ^WVs(s~YM>12 z@s*<^$))zA8KKXDX|iIZ29|qxNWEZ&QMt}zCzz^7m5uqzZE8?yU>^rGifhtua%DBb zV1`GTiy;H(5bONRoZ4k5y>^hBcu=@2VV zks52_4@~a7z^xO!*T(b-%r-u5<6#@0{Yq~;sQp3YSOjt64DoY(K~Y(X)loBa)k=RR zBQ@eHLglPEk$nouYA$@)l9vrd-~MP^Qi( RQ$%V1PkEhg4+*#j&cBh1tZe`Q literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/SaleTimer.class b/bin/notifyz/hardcorefactions/scoreboard/timer/utilities/type/SaleTimer.class new file mode 100644 index 0000000000000000000000000000000000000000..1b10b8d4c9547ad4c294f46b289595fda4d1fd4f GIT binary patch literal 2232 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 JVvY$t{{Sk}x<>#2 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard$2.class b/bin/notifyz/hardcorefactions/scoreboard/utilities/PlayerBoard$2.class new file mode 100644 index 0000000000000000000000000000000000000000..ced83127ad28a0bc33d66617998c26711c637638 GIT binary patch literal 1549 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 R0LAPY+`m`cK}~bV{{j8g)p7s; literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/utilities/ScoreboardHandler.class b/bin/notifyz/hardcorefactions/scoreboard/utilities/ScoreboardHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..2d06edef24ed720f3a505bc6349385592294b1da GIT binary patch literal 7242 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarEntry.class b/bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..3e87650c866abdfc6806f8b62b712f0845eeb269 GIT binary patch literal 1710 zcmbVNU2hXd6g^`*cH*u{9BcWm1E7!oqNx@=iWQcpZ~ml2jCiRl#o;S zItXKL_wlbzUq?H=FmiWwFZRM<;0)x{4QY0g*z>*Ea|h10x8rtov=PM7;}QxAGyD3X zc6=S|IrqE!ZZB3S1p2^LnB6+M+KwYH*jrO5J|Khlh?_yOn{L*B|8s4pH5Sn3e& zcDUn~kw?YC6iz7Q7neFyAhm@F6cwhoyuiJe9CY32d)@U7b=cE>M@OEVGh-p{djo~_ zt^co>0>-jT6|XII%9z9H5>AcPBNc7o4CWO|54E4T_jeU8j_Uk?a9sL$0W&{^o1@WL zS&s)Fx1=RIYoUaq6z`mcNh#hKUdA#K{Yi^xR`^0%QfD{aUlQ%Jx*sjik5ZmR3t!@* zf(qHvxUV@VmF-yfe!i<8WF4C9>p@?-ZF;;ZQI3UWtdJmb2Z_%ZwW(0v4wIvJv2J^!XQX|e+}m-DbL4|M^#3P zJ2oy`SuLK6v`j&yf5y`t;mBg_VWzZCv1U~H3Pd$Ov$%tue?O- zDCq_x=|j&tV;f9+j;N;$i=D;~S!$*<%J@sMq!2Y3Dhe0o^BMDg#@w)%U*m$^Hi}4W z))DSmgFkO_uQ2aAnj^f8A#a1cqE5;wI)%4E-UY+U8OwP8;*B)(iQWDU6NSU}A5c#* zkw0wz4t3Xlf$8_G2A5@iU*XbIOg}?e4)4W_H_gY@`A!vb@47lgY2ooSpBdvcybD#{AOXafNr6nTjO4f@1ZS`j--N%$I3$&(~r0Ii)(|M`nFR Ou5p$Bo6?7N9rzCoD?=Ut literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarFiller.class b/bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarFiller.class new file mode 100644 index 0000000000000000000000000000000000000000..f05e8a6af6cc1f08bdc84d281f3bf4da93ec50d5 GIT binary patch literal 346 zcmbV|u};HK3`PCg(zInkd<6{Pg)OKXOp!o}#Qu^x!OhcqlH*hgpVpxtz(*mRZm=M+ z`TFYW`uOwfcmjY2xXfVYAdgA889(sd%dSpBjjxqc?6IFzm28cJa$sfZvE&_9UY>sXPZvX1x~{791DzByQz z+(xg1kb~}b_ObZap-)j|%(s6uZ^|@CO-5za*FPBVCxoQ~2Xp%xfHUL^SenjE&0uBI I`aEsE0R%K_$N&HU literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarProvider.class b/bin/notifyz/hardcorefactions/scoreboard/utilities/SidebarProvider.class new file mode 100644 index 0000000000000000000000000000000000000000..441cd70c3396c4b0ec51abb1f11b4823aa5b5c2a GIT binary patch literal 394 zcmbVIK~BR!4D=Rg+5!>>9#JHOFWds$;ItBz!Ur~~yEu(@C9hK{JdFbn;8BQ8K|l*-E!)XB%1Ggb6Z-y6qcCv1w(8e{&F(gdmRL4wXuiUXRC9HT&wUd>^ zT}D#Cp@Fm3?HqP4czmo|YSh5YlRmL_WZ-;xVSfab3I|_)DJ%y{1}>L2ipRR&Zds9n zvJSZF+(1%(d&dXRa?n+a literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/TeamManager.class b/bin/notifyz/hardcorefactions/team/TeamManager.class new file mode 100644 index 0000000000000000000000000000000000000000..deddceb96e35c39adcc418607ab318cb3d347e5b GIT binary patch literal 2493 zcmbtWdruoj5T65s!7%|6l0ZV5K2tksvu)BxQd3f6n{bW|sb8s3CA2;-X2U(udJl%+!2twBX%$1}V8o8Qi3_x}3(k3Rw6E2za`!h*CPXt{s#3p?Pd z2$&CK()~ItyFP$H$56gV)IE7;xJ>ud@y}VwX^Tk)MmHxXiDK%0{(P1|AsEJ1c zspVWQy)3rnMyfU3}9XKoTE6DfvB4-$emMk<3cwIi7DvcYNqrrk8zs{ zBk(oH%hPYaa`}l+|BI$RITEakW2z53Cohhaz#^k|T&aXUU2F~6ky!m%A8Xl^A9l>m z?r}^f_V-||Eg;DuYA*-Uf_J&pCz0E+Ngkzm`ACjpEDc1m7sGjcZYa8)p5<|BOrs5F znl7w4M+uBz52SWkkh3jM?+o`_EZ3D);kSg!7&qNpuIFY^2{+)aNY8W4@%iZR<5MDC zOQITt$`PBA-jang9|n)8KBw{7270C^VTGPU{Ix<4k&&~Iz}YMKdjgWMjMh20ik5k_ z`~Wc=0hZsw!V=v44VK@*>RVWi#eRqP-oeMe;@kw>$MLGczk>*?a0~9jr)Gw}N>Y$U zvt<8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/claim/Claim.class b/bin/notifyz/hardcorefactions/team/claim/Claim.class new file mode 100644 index 0000000000000000000000000000000000000000..2a2177eef5721b70eebb68317e6ae509005d6d82 GIT binary patch literal 7213 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 C9@;+u literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/claim/team/ClaimManager.class b/bin/notifyz/hardcorefactions/team/claim/team/ClaimManager.class new file mode 100644 index 0000000000000000000000000000000000000000..12aa2b372defbe69fd010a40d514bff46382fcb2 GIT binary patch literal 15585 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 X^IOa!ep+9KLK&Bt5O|-@5I*=X3J4b~ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/TeamExecutor.class b/bin/notifyz/hardcorefactions/team/commands/TeamExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..9045eb653505d44ff086102e0ea529952b2b2dce GIT binary patch literal 7209 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 URG0ta#Hs9S)ZuTOHsJ6710W0-Pyhe` literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamChatSpyCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamChatSpyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ae9c3f86f48118bd18bc9f71ed9766b1e6aed5fe GIT binary patch literal 12062 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 F_#a|NB_03( literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamClearClaimsCommand$ClaimClearAllPrompt.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamClearClaimsCommand$ClaimClearAllPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..8b2ccd616f7b29adcd8d0bc6e51aa97bedc30feb GIT binary patch literal 4092 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 b381Gy{Dj0*?hlF6#Wem(R$BlerX%(rZ1nsy literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamForceDemoteCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamForceDemoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fa439be6eddd9968c58c09556f6a0da81ab21046 GIT binary patch literal 3955 zcmc&%TX!2*75A>B|Q-E>-Y z+Z8xm-cae8#N1PfxfddlB889Jt{sjGj1}%#dT34{Rr0DbgIVjFho(9lnrLivhy%`zR!t(&u6E{ok$L* zpyOc_1hP%(H|!u_BiI!5bsA+ydM>K zu+xdE7*F^U@LM@!aG>3DgQ@&##;Ft*ck?EI(QZ;S4)aWa}hPGge3q5?Qp?3d-@#XZd|%_cGAeeVss5c7&WiuR#`7AkQ!8VxhGs5HPp#?x;GtR zu?zhd-mLVeD0Gn~641s~4Oaw?Y;IF0X&nw4aebZfRLR;p)j{aDDxs;47kl90V;Y)U zrh1i-4j-(4>GIUc$*CEEku9jTN;L9yFoSCpH|&6YEK38pu*eHsG%A*>QZ=9SJXsx8 z_I*Of(-GkG)bzyEj0)GMbUcGk)9pZpvD>4YwBV3z;j3cB>$q-wR>$X5bx55)U!Kge zknC55^^2;6erZiD-mnxffG6>+j;}@v z+|{APvf9VB{?4s6w@B~W8%hne_@%UbQ^vN?(23WyvTruDDp#kiX3}^2JeMQ3l%^v? zGQIUbX*qEhQYM;ZI|yl4&ny$jmzYl*p8bE=aD07d9OupY1zytdB3pj+D2Oa(6Li?a z)FWHRFL8s$%SJO?RG#p4v-}iW@lM0b0^3&<#0RspUW)`iWvc=+s7lxRm-(m?!d`a4 zZG7`nxq4u7l;T)JhQB?WNzS|YeP}qB&FMF>eR$+G>>U0hc3sZxzKK13sU01k-ISEWy2jqj!Vlxe+R$mI76$+PJRfAHN$oy@aRQ_+-9Yxw(YT zwDI{{_yQxlgfG+Ik=yvHfRg)KEZ4?2Qm-(e+oF8dkmqJa$@fiNWRQwZIeuN*B%s-*c z{YV{r11B_8-oQ}}_6chGDSk#R&vUm6KaXhca@5WF4n>9+poy1}zJ(VQyW#-E?3#=W o9E*=G8;Bjt26B`b$WdY-N3ns*82+v9ozUmyYQR;0Ib$uxBvhE literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamForceJoinCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamForceJoinCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2de10be5d33fa4cb05be8c3227c29d16a11ce95e GIT binary patch literal 5427 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≶zHr+NSBt5H>aEAZIxNQ|nersAFf45n zun`Czdam(I+zy)BH67Z|c941eI-VXsfUXGqUziJJ<1PJz#lU?wCSkr7?I%Z*0H11s~RjmC9 z#2rL*E>S}#?=j)bQ1|^pJ%eiuXVTSq6}FkfSD>!>nwWgE){H!09oH3!8ntkZ_r)aW zAv41J7RwrLG0dd$U5?~NM+LVj#kL*#Tw1+EqZqD@uoG#TnH)E$vqVrngpr3?tm1nO z-!Ys|fgMJUjy2q2IJHu{{iweBs8X*rR~|HOZLHO63>RKs+k{$b@h}ocr4OTTi~1zj z@CJb;R&Avqg##+Qs9YHIHP;nE#o=KnLJjvBZoHZCqx6IXWS_p{W0JNp`uE7tkCZN& zk<1m11u$g6drd`jjnKyz%rur0~9lC>;!*pU-rM%t0I_G(wz zowX|m2n13{O3TquNXn4|Fyx>RoONu|G(ZD|1{WH)lwP6qKA z7N`B2)y%y2ecyZE_y3Of-hBPXXPyDDLEh>?nc#+4+>DG)9S@G{iSS4~VT|e{W+Wa< z22Des2#&-jCiGZ18BCh`=xA_&@Am33eaz^v8$75G>?z74Wk#YAGh!rz`eY=io~#Fl zYp~nlvLi8;nlNIfplULj8jHjP>q14D?r}!C%Nc2}Mbb{N*_a)D>eFnja~L$Ii^Y35iIvy~bGxRTS=Cnt?qSkP98>kL|FknM`aY7Gran%9im z(^fOQTEjJH6!<2M#6%>SB%V0!8GLB6+E65B^rR++jl_UH9OYo^L-7$kx?fL3)U)%l z!W@qz1>1|8^^(v^fnI85FiG2Tl$SJF&T=i*d$5iM$+wnVk|hEI&vgpX52LB zH22e(Mxwn$j{@MlWu|?a4k{Dhpdj};L3yLX?+$c$u#=#2iSHQK&5n39p3u;VF81u} z>J%(-%b)IIp=P(z#-2R9?HfL9jF{~+6_{1eja0T}y)6L+^^k@(tf@f{dOg@D2)M@N zI8UxhG`wCpPfd~v+G`{g4m{|mkGlvNha%=wus5nt83`W-aliuxhu|FJk%pTwBv?Sa zIRV3oA!^o5vj908XA|u;xCL+U;8sCX(IHsqcM)m04ToqW3h#)=Or3EtHs%aN&`}Wh zrI}|VdAE|&?uE`c>#z*O2-GmO9~haI7ML)UR|k$o%<(|??jF@TIN048@M44(2v8iO zX(|?8;{lzqt+aS^YSM5_qQrYKCTJLnrvf8-ED(=Hrvj6ySR^?fn6%6ma2zN}<`E{7 zqRg|?io}l6^6|t}aIXFPYRJG7&}|4{Fa9(vefw{K+#=vpxxQv?1rLOLfv zOm|T^B8KA{?!cRv@xr=EJ8o<2FM-HHI&w{dP~itSr9ybX8Jy5UGt8NyCKJq1+v zGl)}y-l5@c{5m7!u*#Q$RrDyA2D7$Qk>RREWq9 zc<-4g>J7#JcQt$%9}#GYRP4aG5$l?mG^aSQ#)D1!>si%(Ov8hChyj@G zA}dOiK~}_YVr0?ku2cpokYjQpXZtK6F3+P&bT5QI<)h3Lb8VvCL_DJ5 z})|ql6H2wd{A)M6PD7hEiN!CE9=1)JOuMB*Was8T4kgMXJ*YaS!UM2$s!&jaYuY& zGHRI2Q>h&56}F07hj~3NvF@@zsEh0618Gp#Z8!AqznJ}GY79-i&dGHlRyDS5{qc^Hg42SiG zwIYpkoNz91i$ll4YCh(Qch7<&4{2_L=gBUdl`^$PPJqoa&1S8fh@}%Wuo=OHJ1l}B50kpr=nA- zk0p~2=kP66cl>F7c(a%DtlZS9zFpNz=UKKF4cnKLl^UFc+nb{S49f5Ja2 zc?PYW;bO~cz65!yXM58@wZ{Bc4gaR9p~~HTU0pq1{0D2E8{?5!rWo?#2Sj+EF%ds% zWZo&dmo)sBqN^I}3WfF^@Z!Ij^7<#IxJJmV2?8Trt*XBNqu~|RR||FT-ZOBhcd)NF z#LDY`X>R6?gc;}@=nM22V@Ax2|KnzcQ;zYi7Z+7E$g;AYtI!{-qU$Fjn@Us+mjvvb zXpomUGUe9XP+Z*8ipR2|5{i=ijCB|b3%mT_7EASXbQ1*Jh@XBRoQ`NJD@HQ)eev#@ z9;yaPM&nFD(oGXjGt3lxt!{C%g<7t0GCptZT3ziX&a@~zC%FMJ9a%YqOjcVb!U{7d zKv+Aix%(9*s^Xtp?wY&3-NVicvaShDE7)Z*H>In6+C+0tcQRj-THy|CjoR3YMQ%?S z-CPjnRvBvFLG7bRy(SA~5q&wkD`Qpq+1kVES_06P+OwWum$!=b5=}0X%ehHN*1gsy zgp;Oz8Ugv)h}#jeRFf-Y88J@*Aw##82pebJNy-j&K<(XIdooNlVOgQcN(tEP?ALcNikuC z`)Rcf%ocC6bGOapMqlCZsx~~s(yB?Dtf6Z3Fn0;nE|%c!IjSj4?dG4WJXbw$0jzjj z&cl~WmrVz~vX;mmWzEIFqK+a)jKeA?`eeOq@W{2yye|LSX>AQ_a-D2sxKleax;Zl5 zVV~Own5|r$i%ckg!<*UJE1PMooI#NHFb|0WUfIGu$4rw-vq@%NDv>Q)T`gQ|hs{Jn zWmdLugS$MiHd)WpsO`+8vP1BN*({syAMUB-X@2hEtpw7uh{{H<{B4Elbhe&xX1W`5 zn{PT<@j(dry6ILs2k~_|6_ZU8>qV-5rK%{QR~LAur}2x6^j^7%AkIL`1`v+`!m?MB z9^uyi5=O;NLpR5hgWSK5_UVzZeV)Wqi_WU;UT%)@ACEJnpJxv;piW{siyt*qZMXV^ z<(*TU(7UqMv`m}HT6`!=7BHvk)E`gLOLs-o$<`9fncb(SYm|Qx2Rq|&GifID$-Ra- z9uFsd@`;X(=^5qp5hf&c zn$0_p@)dabTg@i}6)5B1tD5V5_1Y=SZ*F-C3!2Yj;ZXhJQ@E@-jiqU?Sgh}wZ)We;%qrXxy@hkOy$F9Y*FG)VcV0~ zp2n{FZt`z#OXDV6&S~r|L&f7Q&!TTjW%EfaNMpcXQL+9s4whj{mA~q%XwBpBMpCLS z{8K-i!^L0qMT8$fAdg@)uhX*#Z}FVP_>kX|#^I_{II_j-_nt*;=t)eT!qK|gG^Xm` zoW`ALygiL~`n`2NSL=MX=FI6y{6-qTrH1n!TT+JdeWa{&QP#LAKR|6{DL*uWvOJ9k z{NCmkf2H5!_nyH=fixcWd;OJZe6r$k+N9iqL?0IMzM0r+;cqMdufci*dD6TV-B^c7 zJ|(aL$8jA#fQ>vw*-T#7;|bdAYuF~`+zi`>9nygg8N}!1R-CkKeXDK745Z{XJc`F? zV_FuElbTTCow7f1&b!ax_Xy7Q(u&XGbA(@~EX9-fJkjt`?t-4gQyk$FY)Ru3;rlel zJP+lqKSGxWeIA@{AnUXE0@?mPo67KvD z$7?CCI$nML%G3CofcSlWi_cG(oEuUoK80_d#S25NZKv>OY5YY+8h`EgrSaX<_=hqa zI3b@<@S_*l=(7lmqR&@X?ZVJJH-`Qt2Sfj!k0D=Ojf=7bZofa1a$c5_NX!EMKXXL> za3*1GmawkMP5E*T<*PF(7q}=(xXNoYDeGO7C8l{{2Bqa>zUG!Tzt3NB20yZW%-2d6 zQ$g3p*e)#KeJ4K~+J)8FO|RR-?7)@@1PY$U}8yD!)1ievFJ2g3mAZK1$j0E&izFqmDv1I?vyA{&MQ7 zola~2-NwIP&IIJj(=tzRS{9VyD>$D2c5xZf;xF))p-Psg<;wff;ItO#)N)#`DaV0A zEew6OWJycQ0e_{6x(h|6EgI;sZOo@--GLK$In%hQK;ySFjn@}wJdaw-|m*$}%KnD@=+xCO2V9#&Cx`h&$zzc$=KW z!*Ujn$d~YOc@8J!d3;JPkq->}>I-`9sr~Tf%_S&4*XnyO6n|DuM z>mnJBH` z@IL0<`|u6s_;2Dv_&)B(OZ*t(6?_C2@Q^D%UX%kgo2pGO%FQ&JDkv|?5Y46%?L|3A zv#EOZqTE8Wd93K-gLlKqmCKi}T*;3*Ss^eH${U#TfdHQkUSo1tj#zh5iOZyQce|L9 elB4Xkls%5gl-vP7kE2B1gr)LkjLV%>)&CFaJV+z} literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamMuteCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamMuteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..41f747fb29b397983d82f1f7ee882782b11dc88a GIT binary patch literal 4570 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 GpZ^21Wf>d* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand$RemoveAllPrompt.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand$RemoveAllPrompt.class new file mode 100644 index 0000000000000000000000000000000000000000..2b3050d7483bd00a926d389d7ad058b345d4c138 GIT binary patch literal 3880 zcmbVOYg-&=8NOdwm}MD~ls2T;q?yz-fgD(?@f2cW*Z`$&mIwq)8jZv3%Q9hiW;-(r zf!6e()~anh9~#d`YU?4zb`x5y$tSPN%gYb_>JQM5{o)6`yo~odJHWDp)EENup5N!W zpZmF=_fP+M?F|42a9u;4K*n(cdt!DjIca)X%k|`hX$7|H_{l(;g{0*c3Z|3wlYU@M zOe9A*HY5w~v`kedc2;^v^Z65=TPOw^VgmQOUM@Lanwqi$9^gz%&o?V)4hNp?PLgIVAA#lPONXl{{ z0@a8-9|-hxq}K&DRRuHK0XKAarq7wvW-@O&xnu?SZVhb$TWW`UN_IXgy#zL+xe4vK zN5eY=?y9;hHE9MZH}85nwqhH>Kh>K~4~_}6RhzWDs#_hkU59}kTx%AK(#ZZ)BeH$*P4MPca% zYMv>c@Hp)5qfI5@;f~4HZH^j(3p*#*EE@acNk2X?il-WyJAr zfrgRUqBPVI2Xwqw9nsJ~)Z3eh~xPmV0c61QBR9ElU=I0jF5v zcI!3?Ru#@=u&YS3+JFj^$&7vsXn0UyQ!Nd3Jfs|M4&1amBfXUAGe7&0)^Qve0x@a& zlPYP$R2@)LCvzWYiMAar8AIB$%$I9jOa4)Z=C?|8So6E~kpIwKa ze4go)94Hh@ffA>*?FYpAlNi@v3he$Lx9G6IOpV)t^vuAen{7*+D+P8wIS`H0p9xHA z$T1?T4*a{F#x4pVYem=s=B%cFXhj8;Wetg<)^QlO)RX^O8GmbobE0wcGmGGX9qtnI$} ztzk8duIoIlP&}_=7IVyE(mN9Z#zI8OK86b#J|(bkmGvu0>?Xj?dv4+Bj|IOLA~RVAstOZLJM9*0Yy0DTddRGXF9}dBtKJkLj0B(x&N#k8 z${FLcMl&wrYdXHJ#6%+!8M7ec_@)4qIp0>b;(39s9jUcyx>Onz*S@3UyZ9bSHSW1) z)-wIzxb%G{|2nP=G~oyMk%k`%Y+q$;HQp5!)bV5dMBvWe%(1hBeP>gHnbF>%;iDr1 zgVebltC_QQcNnOj>G*l2P^C}y#_@u{-6_+tBy}Lm$|#MZ=UTMaa3|t;k$Jp?C*NO& zxm41+n(<5gTEnjdcCKsl63@sH9lueb+~702hRm4=kT_musXpm=(sFZ-Jx2>X=@*%Z zvdf^yksYjdza=(NTvyp)SWC9E;x_u>D^b0-YD%61Sl;w~>1+6dz~Ni# zU8GIxzP0&$sCjLZ$t;F^%@Zs2Xl1LOZ4Gh$ZDOwvb^Iam_gvxc-dEA`GJAE{$iExH zo#zn46xZgliDPY*)wqM_seg&^RKe5k#9h&u^U;~s>)3qi3briZ?lSIey|0X&3)s!( z0`{nZ{oz13mt?c`fw2D`HTAxgsSkurwXOBw%IG0B%Q$?QCRB`Vqai>M_fqJ);9(Fx z&a%H^w6$!sg&w46tiUn!R*bIOLN^JIF!q(vcPdlHM_%H2z+3z!KrPq#y$9mWzwx_! zzcOX;5?+|cpZ60T2wLPz(rHtW4oDwMG?7@b4>}YRT1X*wmQwL+we0%IF3XAaT zF{Wl`1TNk9>)tXRJs4AvE#S#AK64eHy@Jn2P(4d`+hf;p@p)`lOIp9ox%SvKTwKIg z)m;jVc{H?sgUwA{WqgbMtGG0_fbU;cCohNMrwYh7OPA>NnOvW1#u z^uIo&$3r0n&f^f~a0ZW35a)0n7x?oyrS%ECh$rz!w*SI{@g||I;W literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamRemoveCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..a41a241a83f8730a7ff3299da97ccdcf3189e786 GIT binary patch literal 5719 zcmc&&d3+S*8GgQGH?!Fc5EnsW)vgjC2WAVRXciF&K~e)j5<-L3cCtI03~XlN%q$vf zPur?(ZPUBZLu(IvP{o6VNTEt=ZEb7s%ij0h+S>HA(&w9z8F-!HQ>-}k-8 z^ShQy#|r&E@#XS9@SSf-P3b!{k-vWA8rXS3r^K zEqg?urPHzp68*Vdy9}3Rn7eh`(F&He6}@dJ>`w|*4QF!$hAFVDb4GhM`cBGI(#b8} z5qWr(VH)mgffWs>e7dn$Ak=21^$2EBlI`IW!5o3v1+3y)T!PsWMI}yCQH_|ul7`Nm z+HNh8)y#oJw`&{bKyvz*#@=cOoUTGaM8SN4+R{T2ETGP`p4DCIKT|->SawQJ8%{st z7QtBpHQtwkSyJ3NDxQltvDUJN=ID;V+^eRmR&buc8Kvsh<&11vw{W27z~&iK_N2#3Zpr{ft?6?b?7S`^$W zP#@4x?#gFX$U=R+iZ|dkfz$fseN@at0$n93GlQ6uCAMS@Zo!*WjN;8wpUxH|sITcH z^vPx;Dbwt&c)NnP5uO?OzI=^k4ARVS znHj#S_>e9+GA@ZU-f{V6xw>sz$NG2#?`M|BsVknba%Q?kdiMbpAH;{qyM>Nt($1b| z>Fhj@ON}b7>#}9Wh)SZkOT|Yd9aQzTcXoDdkKkiuxAlbvjIK!8EaQD>RPYIg>y(g* z;vU?qV86hbf!YYLoQnH!Kby6F+tSi0&0&;J=sRnzXH z6*@tbVT~e z24|wfpYmN^NMBI#MSO{oHJo<2*}H{#>wKBB$&~1|wyk+`WSM_e#nQ^?WWpW~MbenHZmGIwfS#jo&d zwsVH7+ZxAZHX#8?9sYO9`7M60;CBRmO3uWpia+3wtVL75o}LG1FTY8t!7)6k;?MXC zG2$iOtusA?<4hnU$cXYtV-3dfcLjgr2t1`%W`K%+;GeYICwF2Hm=7mV`M5tGW+om|$XuG;B!SLKq5WaQb#u|=P3 zy+?*8+VA?3Lo*agoKs}CmE-Ka!H})|e0iG{#xkFdTO<@5E;>w8x7)Isc-{eAz|SlDnh)ZV!&oJstMgbBTc5{< z+Grlnugqg}D37fNu{tI|we!*C-?cf{D_M8%QhP|!tQXd_cE-jMQ)+P?&Y8u>3Yir|qXujpKbiw@n z+*mNFipRlDdrHlsNi~a*!9`pb7{FjbjW|LiC9dOjp`+nD(a-Z>@x$Ca-Xi6V;awGwn;yl|5@GM7Fu8?~*c}1E6X(OtW4N=DOqiHD`eAARN99p! z{5YTYL4K-jA$*MZA>19>N5?C@NcNI=feRRi6^zk^Sc;4J?-E>wR>mmFsH{dm-yEz# z4sEy@?d-ZY;C5V&yZOAI!~FqVfk!!jKY>knlFz3&K+7;}q*MYt8HRB@z`Zg|!^4wo5uotnS5C39_<+=X| z>^=T)U6oAIkcW1QSG3zO8@(*(?Kq1#okN`Kng6Sa^>$W_i)(Nbf8RzVB#K+TvLBs9 zadZ;J(Mc3XCs7>rQLG1tXu)}!a<_^KQORWAj-?{RZ;A+0u1X9GYgJs62rou>c4f_R s=0LRqq2LAu_b8aB2t~m$g#l7Xz#P0Pge0O0Q7xi;N-A1KRW*qI7l%@v!vFvP literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDeathbanMultiplierCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDeathbanMultiplierCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4a7847ec7a4202ca834a8e305438ded9a0f0a6c7 GIT binary patch literal 5206 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDtrRegenCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamSetDtrRegenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..cb3d833a0b55c81bca13fe1954347042b9fbfa83 GIT binary patch literal 5415 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 E0kww);{X5v literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamSetLivesCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamSetLivesCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d1fc565f1e526f20de94855d20709715bfcbd4d0 GIT binary patch literal 5287 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 P30DI>_&4pA;6MKZgy;KZ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/staff/TeamUnbanCommand.class b/bin/notifyz/hardcorefactions/team/commands/staff/TeamUnbanCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..e4ff4044fa3ade675f458e9ae77acfada868a84e GIT binary patch literal 4533 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimAddMemberCommand.class b/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimAddMemberCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..b6ebb107af09e3969beeb763beefea7a64355478 GIT binary patch literal 7595 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimCommandExecutor.class b/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimCommandExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..5310072afba495abff32766e714700848b4e163d GIT binary patch literal 5985 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimListCommand.class b/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimListCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..3741af9a3fff3b7130cfe0ccafc2652f4e64faee GIT binary patch literal 5197 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimRenameCommand.class b/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimRenameCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ac61cf059527dbd9a1ca902350072c68d82ba80d GIT binary patch literal 6162 zcmc&&d3;<|75;8AnLC-hrXfJv0SZHD+N7Zw8p_g4sI+NI14&zxHYH{AW#%P$?aaI| z^Cl2nz@5bncZ*a+1s7C6NE@&Sibb*RinuShpyIxwLjCT0Z!&8V>Oc1P>&u<{&N=to z^L^*sbKm37KkyKM)uKkCN}xMs+2-)XHIY$09gkUQV_1*brj^P>Y(q~*VpcM#r{bAN zCOZ^M=w>pqozwl^k3J)%Cyg#wM#3ksc}8E&OoFCo-k#5h*y7Wjk zX{2lc|5zeBVx|OE^~`8=v*+|C&*^QBN|ef-X3DhJ3aoBEYVDQ*0biFDHv*`mrL?oj z0Okoax*N`f^>8j867vNbcI)GMB%!B9BK>ySOpOF^j6g6p${9yHh-w_GLE<=pj^>_H z@o4$XCFN5s1GNxXprHnSf%!dV%Gi=k4jJj~`cT54cRf~2PYmd3Q~mZPefFrC5x8jP zC>$-$jBa4Wuyxrzfby(o| z=B^5cf>?~DDw0h~qI{v20VT0qLo-?ko<25aq~ZcAD~XnAd;UZNXeE5p7>9$5`$`RM zh|odqeG6GHa9nc*{{mPga9X(2O2l(nqNLY`J5$D0oas_Yq-KU3;Na#1~5b>3|iT+o;JcXM!Z;Em3ODs zVGZIM46qo~sfv>_ugn_V%;v^i=BZ;OvSUa02GV8}yCqD<>Zn}Oum?=HTH5b5R52CU zO?-RnpdQCFqJOHhq>V?sGFBW2dt*JEFuHXB*=Z z**O_dprqj{T+Nc%yRmou#y)1!9M~49vS40A7Zr@jY{m``86JjVYk1g<8R@WXg^jpr zPnXn8n*!`*8eWc9xY2hCBTuSgY9$ACHiEbbZ_@B) zyv1d1?j&%MsjRNg#V*%yuHlH}j5(WntA@AX?Ig;mp4sB~&oaC#fOpbe!ok2ZlfrS! z$T-P0s*fvZa<;;%eT%brEylZ5$$gK&NtI6BT!jtd7Oa$bufSQeQ+fuMmHs{r?^C5z zX54dBm4x?exLuV5|KP@+o~=6r_#n%m+iS)1&IWJ?QBqW*q$SInvDKW(W%zRu*+{GAJDGGO4$+3iC zvv_5Tj*!YI6~?qg;sy39ZpSoT9Jrm@esd(H+u1aIxZ(fdLuYvxx0VOP!}zSkBWz&v z#fbe;g6)mEd1?5ZQxuKlm_4D&oW$qJ$-L~kbXs>_1o0?3Rk8VkhA-lA0gdNHu0D{* zi;AjYehHS2!}yBCms#%eX7legd=+0)NoJ>6J_JrIvg6LGn~plt8+n=hhK6tATO=LZ z?Zkw@DMj+b*_5-f$R=;V<)6Tl65q*P2^`Fd%xd^9zQ;~6sgDVqTX-OsTk|@?awClN z5AY+2A94rzZF=i?yS37c_mA-t?$)+cumw&o^1f8uasFo-p2E+a!s5Uta7LkzWjcjT zt9PWRL+zIueubyGv>uPIORxSMizJ!-`>LHr4Sk@z#~u@h+L zDr~04tvyDhM^6sLbqeakyro;|2@QY6-*_-4^HTzcy`2|oy2dy2`$NLWEbXzZJ=w7e zwV)u!yd_=5?TkX9_zQpOE;+kyA*7z=E;V(lb0G+yA^pF(#Pe0PO>56RonTq3hY`Ll8o+lpjc zAI6%Fnicoq_(}AIYNl{;6*~MO|6_$~T&~v8i}XT%B^(o&#K?flwgit7)Ia8#{ub;34qQA@9UIC33UC-Xl+h zsFxqiEvyisk4QZMaaZ<|lE;9lNQ|yJ!VC#Y2#E_N4oK8X zJm9{P?9U~)k0nQ_8kkWAE9w1%_%uB~Nc&ZINM)+Hk^Tqydmq{BzYRf`=<)zQbN5Uf zJ%mM-Xz1uXh)06E4G6T#nti0yp#TEf{jJyws^l`*K)f zUk*!-JS;i#u;j?aauI{-V%dyw56i8z|7-k)0pE?~9+tnQKN@4}zI%r66n^dS*H=G> vhznBn5jsB;e%HD9wG)ZoQL_raCre$Mf9Kpk@gK7F2xs_7ljW&O_z?OpRst9| literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimStartCommand.class b/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamSubclaimStartCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..2c1da88738213293f2942bbfdeaf0d60a64480b8 GIT binary patch literal 3299 zcmc&$+jA3D82_C%?WXA>5TJlkSfD^kp(}SJrP_uf#k9qyv<6f>Nw&$-&2HS?v;?ns zLGbqClfL*5IHU4VD2k)6zWC^i)4#-V{LW^Zq)E6uIOAlp=k}fN^80S*_kZsH0^lgV zl+eO(&a_;8wsc+1aXXW?Y;BgOUEMMr)zx@jOv?sGwiEs$;d0xJ zl}RK79>uNb>W1#>nxpc9u8Nhn@cFBwK9?aoTg+>w%g{cco4Py5&>HETW(dTrj21)( zLz^R{2GPl|by7=f`n;yNIZav7P+1^_C9Gjsca_g`)!=4UO}MshW`kHu_fuL{H-lJD zQ_rLzHV}VtD}+{TlF^1PhEtJv{q<<$&gI4}q3znZZffJjd`h#Yc*@Wi!f`9jjcIP{ zV(o7R+??((oR9xkPKYuDvzmL+;aQTow}}b8jS5TH&ak=O*x{mXWHdVj8H$XZ*u@~t zbEBwD%rb0>#F{V)p&LB{zCD7XQBd!+px7rPf?jekFBCL0!*H+}X~S(_pJ)($456yG zLm&<^`k|77WcxVJlj$2H57FM+_JN3 zsyH{NyDO=o`o{^fMYE%ipm@UYxg_Bv!Qv&4n4h&#W!fCR$ zhB%hvl#+&J%Xl6yQ2I=coMGsy)vH1h70iZ(KVo%mm`GjK(r&a7#Ht%c82Y9teic85 z6`ES6QBt&PTDs_pFjrC~rQm7p^mpP#j7m7ipwwvV-(3x&jPoLdIvs*^Omjpqcj5%% zGR82@Ad{Cz&3Qt_vP%pRa&-+yedWZ*t3ny=zy(Z7c$wkYWAe=_bYA_7iRlvoRebm+RR3FoG(N0X`6$vv8Jx`*ij3h2mfTk_e<+@4r zVfU)Is~T7p(R(R~R~e2Zt)jvWTjQCMlH*huc{Nc)fm3u-DOp9EMjyX^fy(PLt_agY zRl9=V42K23G&c#Z=Ij=7y5YEj<;r;wX@bP7t5k5kTHHja1j^CvP0^?rC1A_S$U&#X z=9!E*U^pJR{5ZV*pcOqvJ;$Bg7%xzu&mk{?vV6Ul7SIS~f9oux3_ z(4?7B0jz`yHI!ODmHmc96FDLxpMdup-5SfJS1X$@!;rw*h8&f$iPl&o2~Q?1OhapZbDy)R_E!Iu(>FvTunEtg3tMO=m+xXLo~9L}{cS$qDUv2= zm7ma^T&Lc{j=R|1w}`#r{q&*#0U8$Z><>g!<}EY=@ezEx%6EOf#05v_16-}U{96H9oBo_TFs+wNdu2^U-N zb;G60t1b!3*L=!7b?o0D%5bWVJn#USWGk^xEMc|ES#`aX<)Ga9*a{*9l*-_ZHsvys+$HFJfmI@8DgE9~Ix@J-ko&-=N)2 z1bY6)Q3=!iN9gJY_>iuBLKt+v! MuLi^Co|G^C1+vJX*8l(j literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamUnsubclaimCommand.class b/bin/notifyz/hardcorefactions/team/commands/subclaim/TeamUnsubclaimCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..aa99034f98d8ea3d94b2617ca2ec4d8a4cfde6d2 GIT binary patch literal 3957 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 iN&{E!(42*xGa4I5OyX-ud9 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamAnnouncementCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamAnnouncementCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..6cbd41bca2d5866dcc4a1749c12689a804f9d60c GIT binary patch literal 5268 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 L`xDny`1Ah&%~|bI literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamChatCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamChatCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..fc7b2be6512865371f37e9f71c0e75f56cb96486 GIT binary patch literal 5985 zcmc&&d3+Sr9sjVAYcO7e()R0=HHX7%@{^oTS? zM9xMmGc_1Vlaix|Wk;;OzD5Nn3C!K2?bD(u&FqgR9NRGa{g@{pl0nSD$to1g7l_ry zCsQ>~o!K>Ys&0D#0yQeiQ6X?r+%WYmxpa?iZ_|2GxycA0Wlzmz%r+4%T zEU0ZQ!6=BuSSoF|Oj1l0RJUDHoT;J~bp(Kx$>?UUz=~3&Q+9j$G)oo@lEqm9r|!iklgag@jN~<1DmAz}vMa4;r7d?$sVh~S zCz<&js{k2+@|4!2r=&wCn~$CdSf&>;0)4e{%kGc%q zt9!OFgiYA2ATGc_p4pTtwnz+yvNY`Gf(L`xicSTW2tk>_eKmeqPc05W{=?&DlW$>X;7J4Oyi22-p;tK9t|Z~DxzIo z?du4K9`q_m(lp1VfeIZ=D*^J~tjk0xu-?lG|jj&O7>F|Ym=8jLwGCRuHbE49^c<;rBY0w&nx;#Ww$|sky{9aa z(SFNfKj+p<%Z&DDSv|VZBALxV`Vc;%;KQThT*tK7wlaKle~cfip|VoLUiimMT1;;z8u;$Ue{V z7nBI?63UifClPbAOxv4f@_R_d!}t{Oo1K)z*xjB`3TiGi4o6jdTDAuj-EHxB#|}Rp zW2ZY_LiWoNA{&g)s`#9w^R-;k)gqDh1r?9WHcDpIbw*Z}ciEarBYaWClX5BKSaEB= zZnx6metek|g>GIp@{JTJ>$ifsou@5Z1y0DS(t}jg`Ij)}GT5G9o zWx~;tdpBztmx+RBXy56ZI|Wa1i)E6y)kx) z{i%8&Vf34tle4MAE&mT4R!`M@EmO&F@p}co;{~i#wP0@igRFi5J)Lm|WgU|d`6m^B z#$N~(_kKro#A=xrPb@ho_$xzbT(+B%3xb}<-{s}w9|T!#ySxjUV0U>VUQqFG{D&6} z*04zz$I)8^Ti} z`CfB3`iZ4co}9O3o`xT7So7s40FHbdEAaC-z_$d)WqdBIuMSqLzDH2iJ*RqZ;s~ni z8y>`h`?*wxh5W5@*@Q6`L> ziK=+aYa1Rz>>wfyQrr=&K8y?VXsg~(;6IFwW$@kG@F-%j^7;p`Adil4`7pZ55UU7R zJU(ULt_l0X6_R+jKpt952`hQ@$NXX6(ek@c754d>#1PVl;1B!r$i@QUz~i_x>_3cs zcjG{~B9E(LLHYWsdvKn7ea$dlM}Vt`aB5f`#_I(hMNcdg4u(Ud9mZSAutP4~E^u(< z>99Xsp2xe(AHndUSKC7<4+p585)S4uJZ`*4r12i55f0-s9Lm+t=kbI);jVpYf`RBV zpNp2Oa2m%;39e;Wg5@05p`L#+oP`Uq0z1)&%Ww|%po!Orb8#!bXWUM=-a*ISL$^Lg z$9|R1?_mv|!&xq=PUDuk$Q06!r=m3m%;pK?bKPtz_cH7V@; z8E1aZnJ1twJ%&{ZVhVbWVYz|<1?D>bAECu66$k~J6#PO#m4asrWCa?MDD1Knw$xZO zLV=;#iK$|fWHbv?3M=rPKf+@LXQt<=TBr+8_DlSV_WdG* z!9t8GLwN4KA^b5`{xF{J4woN2g1<2e%e!O2qvr?aobNw`Q^LUo{w9W6g$%ZT4&z^p zi5vW4fqy~Zu90WM6*6HI5VwSW0WP7+olJFIMB#RvfgQxqrD)@`1G`*gbh>n%qsSn& zhYXH9WN_pmgQEg67NVJj=@^l520!DyNCQ@oGr#lFr^=X5-8I4L<@)qY_^RfNFc7AA VM3gBkHbN+ZIIQ77X6Q2E`!BuPxy=9o literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamClaimChunkArgument.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamClaimChunkArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..e7f2c2b459f468855a0bdaa8cd90d235a1ae9688 GIT binary patch literal 3844 zcmb7H`*Raj6#j0TX473++$ms5%*yMx5>>phW#ihSb>!c!V%sTyN4MT1S3TZ`LPs14q=E(6gmp^bBRU~cVjhmhLTLG z#t_5mVxk4wZaiUbLgpscFf1t+#!W$ndqk|mdWxJt*`*{1lj`6!f!`})BNz4AX0AaP zDs*K~)p^yXf0wLrWKb5)1#xBJ${yD_jL~?saoL~ByO>{_6pd-urSXP zk%DGtn*JavXdgb}}^fQe#Ul0ZH^|8hS=jkEyY=&HG;(%t%Qm_Eb|9 zy0BZoE(R$tT32^6lp?x$hgGEr*e*KY)a!mk(JO#hOukKu643{unR(P8E_Zb)23fRt z#-S2NlJm4H95i!uw^=ql9q7CK9jhb$+55x}Z zxUZOEa90ku=9qcdw4{ugwj9sW(GiV0z;d;z{>>N>q2Ul!mQ$Fa9ZstqOO z_w{wOQePf~E+PTClqyNMOXVEP(B?A9P03PN-MloNvN(3gd=i#`!^9smgHlXeL<)9} zaiS*Y{L*cdvaNK?mbrMi5=U@Mz|oRzl&2&jgX2V~T|2s3c0}pim1vMWRcemM8CLLu zCDJKd8dN34pu2Qfi>Xv7Gp~M5iJlbk6rRqNh~H&=grUoWN|bkM$6pYTQ9L8!Sv*IV zA=SybvD@jE)_Juyl{{Zg^W+93M|J$H33$FFJ~>@S&5sxHvVfNu<`;=l#49|bikNO1 zs(0HG8hYr5>%1=F4ZKMlsSHscE(*4`wieIRd)?LYZcC1%A;Lg`&((*Q(&Ypv!#*aT4?>R-C4$`9-EM@|n9#ICr$cIeBPkz zoLZ0CsSJxy0WYltXXT@jjOI&vE~mXJi1ay&Rz38-jQ-a)1ZD^3dVWD*pgd6Ba|tyK zjX$C8f}^~cK4&{-YcLPBsKG+;=B>%8;tt$ND>CA^pl=1Z3zF-gm-M&;=_-~E%$0w} z@=I9Nm_@@}DT}6tEY{L<78|}NnKE!sJZO;pn;xVI4-)RfCVEffHp28tDX`z^(?=R( zjlZG!ETl&6=@Rb0i0xTC5O^?W|1vtu;5pxT9nG678h%7w77x``T*jUd81SKQnB05o5aTO;A>b!MA7B5ue z)!Foy#cS^JR5jkJ#wpskgwt7^+2c7+d6zq=MNv)9OR1d8=yy5lu@VhfML319m7eyZ z5&O}EA;`qWYjA>w+|%?;^8z;D2SW84;rb^@|3$d|P0#;ei&KGU4%>+ejNwCkOv}0H%N@e4<$k{vC;=Qyrwn{zrvHJDd|~(rOo!*}t|i%$lXN_@I(zoLzt8)e z)!wz!ygrN2^_Z_&s?fsO_g=GSa4ipNiTS&W7krip;uA`r&7`FV)Qo0t*oV+ zm29}JphsY8OAEedTBc_jwUk~pQ}Qi%iEO5(BP$uVm4e#x{2j^?&BIu*rv zCW`Z1ppvHYanm-v69UH)?^t`}f=5V+Y)HL+bmJZs3hot{Oyo98r`vZfwQr4F z=!3v672D7&aCgqMjkA7b(QxPVMavL~=bVCWUC>=qzDJuqUfHY(oY=Y?chF;2HdZpc z`I=s$pF2=dFme{IM(%o1}6*-Bpff@@t!^tMr2QY!NDrRwx`*Hwm z^BLcmCb;73{g#ZDnxCIO#jMU_PC;HE^$v+k#XLwpJLn-|v>Dx|dsmic+fO-5A|zy|c2wez}J44IF(d?E%C$hh=X&~51|Am5O+ zmmF8CJH8uu)~=LIg2auq36TkuRhYOept1_n_6i5Uaq9vJR=)){=K7Z?$A)CO4;E|% z6@iCuolFo^c&ujS0TXpjg@Y=S%H}fDGf!R2oaOLnon23RMkVj*g=Kczg{Oe*K71!Z zs_?NwA}Tnxr<*p_9@xMy&Fq>kWLck$%Bowgp%?2~Szj^O#2^!%blR2ZTnq}_Fp`ud zxvJthnb%$U`IF7mVz?%7q@`0GEy^y{JlVF;V+_v=9MH9zzZiCQ3%?3JDX_0&K^l3< z%DtfCMSPkZt{02)gTQ+emu^?`h?#4HG94-5%M+sJ$^Mj`D{?2OTvC&+zM zQXKnvE9~ZVo~M$$8gkXmwSpL*eSFJv-NoPCqw)T@+Vdv1FLcKT^EVM69s4tO{(+ym zu$#~Aftj7yfnEIDjXm7k6{=zg_wkKJ0vCd&--Y`l2XoYu4zxG0cVRH~7rgr>9vEB2 zp+RjGqob>Mkn2?(eVsC)r(SA;7MdQkh6j!Rmpshx97w#6Po~iIGQILwTpRlbCSHX$ zCOzH6XkMjW1|r5muNpW6uW`tH9XUWc9km|RVZ1HBoA&%;bWAHe|(cTd-aKh zZko@p;Zt2$#b?@c|NI7>rqwUX!hA(q{Td%P@OAnAtza2^dL>wXhr8jo!4!KX8x{Y4 zLufF`JvJ^XEL+wc0Ocz7$#xT0yukBs7zZ(mL%iuGkmYI$V?3n~!{9Z!f+KhdM@fXo zaGfpvA)ERJkK8wr##=a!f8i1Qo4@}dC;b;0(M@*Qhpfu+IetMXjf+R|OZWtSqaorQ`$dd0y7lmY_+Yc z4KtH5f=Q#_%^9X4(P^ne4NlOZVV1%U5FK0UgZBu8Ow$?(SK}QU6 zg%dh$$LcC%d#&7MW^cygN~fDPGh5A^E#Je*s5fZm6)rsbsg5UCj8J00^0ws70UA2H zin~oy{nc=~!l{)9yQpAi`m9_X&cK-(<|@ppl+f`!7z*03nJHM^{R*cvwpUSKha~1n z0OyOuRP#++MPi|jvvCg7Vh#;iPM^Y(YNAtihhDaciY8I9Na2iXZcGX)EY`6EE%cnB z>N2y8)X9xi98cg}g?eMB1YX3h5F<-JyxS#!$k^BM|HtRd&wppYj80^ zNaMjdLKhS+DT`{^S=*-b${QK7!nlYnA4cm0tLqhN8l{jopi{#oL`X?I+Xqdr-Oac; z9UIX_$;}t9QJ7ttx(N|qxLm;~@u|qSWoXi|L#nPmPi$?p^1=!UyqK~+NnT!}yp(iTRPSl36K@)eV6;)g45Tcft+*hv2FVa_S>1ywX~VQAZbUsFr>j{ zNc}|nD@0F*$!8DN@iMT0G&_HBcE}s?VYedz_Q{wZA+a>9<7!-^Fq4+n*!dyWaX?$= zmqEWO1ghYxErDxE#m1nSXEcK|GYf2LeJuj6SLk@9_!PDC-Sqrb#O-keIjBnUxemMW zY8}_(hJa$%yF#(2GBhQ4l^!VPr!%irI5W(L;Bi=bad|Qlc%8yrqt{BCg}fz;cFq{2 zTEos81t)KLEmEmB>3Dz6URL94p zg9(+cb#qzM^Q=C>llb^?9iQ;=NN{xd?!<*WgyZLxrms5InD20bK|F>y`(o704e-8m zQk4$o6IP~wf^$;Sw3bQ|SD4{Z`$U&gSb97f{J<4if*xui1+Y<0v%Qkwq!&zPd9v22 zH0CEsp?MmWCAs7-wwBTxBb!!uYizG-XT@_+zLM%^^mt}^*G6;5*Q()j3a6KpYDKO! z+^6A-(~?3(P-w+89pA8X4tr|9}4_=#Ma9#=?) z_k)Tq*Cv4^c3V+t| z7ZI*8`*`9Bl(-@Yi4Van`x+bd#HEegGg?ll{$zy2XI#N zC>G2zM$x!v6f$l|@naO{?WdB!T%6m1`6Xr+PMBH9-!fjnb%pcs!oW<;ojgt*H*3v@ zuzW9OFS-vWj-s`B9LvYBDuR9d-J&&?j6M{*1DA`;t!Qi(mkwaPwt{%c5=tI-a@ zx^;@JfeN8J{`KqHaf zggN{_7tL6J#r#}?F0^11&chZg#SmZeIRa{!kQyO3+>BQ2;p_MSR$vSl;t*EhG4kl+ ze0n~Cb$A*b_y;zqg?ta5!<*FxbgN6TNnOXM-Sya_#<5L3%6Hi_*cORlrw`;I)C)w5 zK<4O^*iQh<+&#Egs)-{3H!GE+PvJhEVy=1;_cKm0`c^}K4zhZmQ1imk&3x63;Q^lS zX*GxXAB0A`^YLkXhP5g`{OPn1tbLYJ(q8};9HBjJ>Z-=K2%g1i4bC&zafIQht185GD!L7fwZfNhn5XVn$T4&vecL7jYaFJfxH6mo0qK|HcOtg|tETk+uESB%4Bt?`5SX@Hx= zJ|Z^};$}H(BqoS@BEl+}pNz}+ce3xv2vOfqGV!Mfw#hypK!=iXp`rjmEs`}{Np>^I zoxSX|X>y=N6!r5rkO97t2I0ZR4IJNste@%4j6Kg(%rr+~ra1~T%~60N3JM5R4z*O+5)cGYP!tse?;CHt#RCQE^Ucg=kEAK($M5GqyWf2CUf=sZ z?=jz#uRicFfMwzU1tkKjt(0qS9-oMh==M+|WgDCIglncOC+-^hXgrY`9o4O&;AsQ5 z+ESf{K4jQ!{u>1$fm8P?B<-3>(=`nzu8)~<`Q$wWV&ffwlooq9J!)94z?`m@v(9bn z?rd*a)85l7AUe3$MtfY{a{KjU+9;*W<+E9I$D+Hi3Dare&;4j}99427NGT2t+$m2|d}b z+opUDHbd@+Nf|AB_uy-T5aSUZHrzf(AEv5fW^hUEbSo9q2pm-Ght{;2BsRmSBXZ&q zRO49b=_LXSXA;{lDdH-Q!|}v~J~n1pLjp@?BAsSIpsGoVI6;b7CU9s?+jLWNgaRk3 zI0-8l0iJiAKFZ@BSTmiYDU3#+YUX45(zyzb?>4ZCR;iWyKj19WOPDrgg^%G1Q8Hr?^~ zdhaCi5bZJ`YXwScB&<)xX$qL)2j;P~jp%M$Dw(oXoQ_UX_O!1d{PV4wBJte6PP)Il zC~)0_Ta1L;G~K(|c!Y6=z~XKzIj;GBcC>_UX-pz7Pc=VzorX&EqEEpF0WHtSYy~Uu zpo)HpH724p)MYpl&|#d#aC_Kp)FMp6jVg}DF%g`NwV zuVW3tVPQ-`imur&3sjsB`m=)ay9`+d1=a>dAt!uar^>ZH&w-vCTIAva1!;k$vs*M1 zw~7mKkzYJ|*mYh@z#Z34C)~IsZ>qoq-lpKK`wVyM-6-m{n`0lf_tmlfDYqD7d#mH#bt*m}-5SmgI$><%@UVfegIXkw(vvnPi*X`_ZuT?6ZSN6id~GP6K@t=AF5IJH7e2?cx~XglU+!buEqIQ&Dgg%D=5JW#&{NT z5{7hpm}ukpEoT#fgY(G?>ppSkQ%!Y=_&yw8+zF^Ioip)Gs;-faGC4rf-YUe@rF%-c|Pbg z9qF%%UP72DY14+Q{vS51@@>lh&T3{}{scc$@Ke_CoNqaKCOJ6DPhb^4$1iBSF*@ds z%aarj8Q$p>{F0SEC!oc)b&ooN=g}_v*l$$)7QZ86r|>ncTr<)v*Dv6Y3jR<~uK7a6 zpJcfYGr8<>;!l?Kzo_^t{>DwyHEi8YF%cIP)c=lPpHg4MKNb9gw&!fjzE$xr{F_N; z85i+zh2J7UD^u{Fg5%MkquQk`3=I~}k9$XlES z2>`aO4$I>GO_Gg8-T{<((Zms8#N^cqVkkp7pA_#YjHtYK;5x*;N~rvu!>98|Rlb9a_4i?6UD-o8XrMG2>m3M159z%Rhuz~zIfB1YN&pT)7>82AVZ4ht9E-WL z$d`j7aTK2@(bLBdc=@3eXzQnKQrqGOQ9Tf?-HrPC3>xNZ87!^KU^&;(mHf$|X(y>l zcp7+TAV;2##Zx*KqZz9yTi_J5_&Q2kXrBs*XX_tD>vkMbFLmw4nq7Ev23^thzWhn_ zlwgP084EpJb_;5Yh|VNY-I5Fj3WzVSe*~?KWp(#rVFsIGWs}fL&{!TTe`1=J;R43f zB(2GTMTwQilnh22!?AD%PGd!^Vi(45o5p@g0edC6LZPJ@yrVG^i#&lPMb^HP)ILE& z^oo2=JRJ+iA{ktH{WJ~lEugzYQaQWu{@bS!ez1V>(pY&0A8M?ORZil1g6?J63~r9zTEN~Ci%>}hx5vt-qH<>jI~f?yf(-7J>@;RK|99bj8LiIrYlw_m9E&=1qaHn6orNVBK?6n+$CaFTufg%yhNT>rPr$8MhP$yGPvAs6 z$y=P~umV58O2OcWxo8r#SS3!v$)X3%q7SRZ**HZEqeYCMRb0#e>v%J=4Qs>=Xcy1$ zVnZT-!pB<{mEu`Ef=7u)Vh~@%V-oRPNu)9}x%v`wBg6}Z349rkGyg`!7TWU_B7K`^ z##d>Vf*Zwhd<|b`mfb2E@Dwg)Ha*8G{SEF#Xw?PyCcecyewzB3%fZew-1#zE7u=;D=n7 z;777hh^M$>TH#KaF*hONXP0t6e!O#UY4JF!h+H4~1ignag5BeJ5YICye_gI~*h zn8fb|Ch=!RBC-Q3W06VxUC@&+$t;<~f92Yh$ji!E6jO39JjA?uCb1C*wqkL}ZD~S7{F5N?HRTf3mf2H7gg`LqK_m`_luSYr%U0uQ9zcmq(jX^|gPo+Gq zMkb;y^aU-nK%w*jlr{wVPFu=K6{<)||`*w&#}3z>-BX=M{_6&4;^b ze#-ck46ID!yM~CssdY_M0^6|z+bWx~WSeSN--JfZ@zBa~zfdV!ZXnQ8aw-Me6*w@l zuF+E=(32t1b9I$8l}ByY4vq>OPTsWk(2PJNxbxRoY~a)BmpqlvsVXS-G$-Poo>L%+b0xbe-63np13RZBw zEDLnBufq+7+VN^I1h%){^}&km^OPwB=2uR$4ss3WtMqcYeUEe3v*=Y|C$FqfS0{DPUS zEG*c;a#fn)@f2@u`RNTLZjfgeG(13}HF;uH+CkMk=g6u`-A)`+>G+gDcT%zPL5yk0 zFbGX5nRyvxJje5OoWMy+K73+KpuZX2iby^9r&RFAThewmd(p}T>Gs$zXCsD(s4`8G z8(}{&in3~Wu2VI#mSJ78a+Sc!8`-K+s-rKD^kNccHJlMJn(&6&YlErdoFZLsnW3Gu z%8LFmJj}e;E8&O{XF*Qu_!#brV+N0EctpUw$(E&K78lq_NTrPD&e?^EFIDSR4Qy!r zvR!SeYqS{3&*E_npCd`v1+tE=j?d!@0s}-6cGWSvEFH&t!pbZ9vX3N|X|7C|6LvYE z!#-qnZE!C8iN|Ur$E~Ulh1=6}iGYX}hGD&j-Tt>4jV!S76IJ0wvw! zSZ*Phk6}^ZF7>9>4VH~!r5qUZa?vtmU^tfKPEr1n;%8Mghw+W*_$2||$gQ}o9Sya zRni*}S*6lcUPAG7FJ8p=G`u7*wC)vKm2|v}R|Mj#&IK|Z`~Su!Rlpjf%D94*j^R}j zMJ){y@rS(LpdlTO1^Fs_3+b=g$&2{0j@R&dqlg<#GAtm0ht{<0HI0;QZDTY+wPb}& zH$?LjfjefsiXnZnGsI!LEDRM8jwC;2uy4v{9B*Quy24vJuHbEf&5faF1^@I0Q^L^~Pj=iZGl3R=#K0aK7$#vooe`>hrT?#hb z^-x_ITy?W|#m!!P68H0*Ln_h@H(gf{;dLOcrT&J|*I}fTyX!dm9*)=W>BQ-V{UuCv zA#!yf@?rD}k}Wcyq0I398m3xgBL|N}hp%CK4d-ikY#>^LTtdE!r8L}P;UYEFc{1Uw zv9Y4<-rJ+j{cSy0+LS9)+169T6Nx7~D}Q-K`JFc9r`J&)h`x`nwTI(d9XvcY5M9Cx zUHE&O@$XZ*ajhS8(o6jnqf7Xa(rgX;8=d4oz?-uJ(d+nGY6+LS@krzS$*&>Mp z5?8}+{^Qh*eMn&tXOQHGlVbngk0M6!3QWAp+4eFH;Wzy2@SnH`{~{~?O-B3&X`y3O z^x>H3=kRv`$HgIxi7}iIHb=Y#PH#`)w0Mmp*&7_M-ox2C%T6`;v&=Ga4e#LRiiKSL z0>4xw=1MV-Ma9*x@N05zMm$ag_mlXS#a8?lS6OJk;~f%+?MZ!vjE26C2xfH8eI{-F Ko+n-S!~Xy?tvXcz literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamDemoteCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamDemoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1849dd4cae75e9fa5fc6a4b2ce52b63fea629a6e GIT binary patch literal 5695 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamDepositLivesCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamDepositLivesCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0368c3ca988bb823dedb150dde825ef402dac9b9 GIT binary patch literal 5070 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamHQCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamHQCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..95a3292e694b7d4e3e33e81d7b4048b635b834f3 GIT binary patch literal 7646 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 E4sfo5^PAW+&{< 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 WR2%Wi!IrsELSn4`PWuD+$NvGj|IhOP literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamKickCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamKickCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..04a334ae09253c693f32240ff90b5358f22f5014 GIT binary patch literal 6725 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamLeaderCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamLeaderCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..df08495163c539cf76df0dd06f69ee263f55a1c6 GIT binary patch literal 6106 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamLeaveCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamLeaveCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c6b96ac44dd9c21b585fea4435dafbb32daf1cf0 GIT binary patch literal 3592 zcmb7G*>@9V6#so~nn~LMN})gib&4!W3mHHx&>#wJ3WcT7oxAa5%H5unLsr_!sD{np&+1NEGZ=Qo7ZiHbv$M;y^MuP1CFTQ~ zq1gu+_JnSjJ3P$b>o8Ml0QC$tI`=VvWen?Fccp35v81G9S!AZf0~4u3HCBia(7>=Q z6hEs>DYC8@X?ei5G$S3Ie-a+91w*5V8u%Gj#5F_hbutOn8dMUxN;h#csp!LsrSZLY z=(8uZ9K*qdJ-QBRI3gfakGG%7#ikM zh`0q3gD|D&j@mcQ&=l&ZAifSkY~t~|l~c@DA0FluTSRQdHo{iPW>q7_u%i;`JZ{g* zC>IgtB3c+WRx)FjkYT%s9f*+S6sle&Ly=k?TEOs~B6e}ofNd7w<~gGzRGp(ZHy{-K zTGQ}yonbr_H?6dsa3&`;yI5bccRfH(s#bIniVBH!dcMl=sDQncy(O9`b2WQfKA|hq z9KRs;^XRuTREKzG9>75XcaYB|EFBYy-C^pcCE`xpMU?%qPKGt5*3FQ(u|CXW-7yEH zzQkEIX-DUWvKagTVgyg0p-)R$*SegPR1C>2!a}jt;|RJ19A%J7%q#Yhve=0@##5?3 zN0IDNb3Eni5J#_o9tQaayNZZDoM2c<8R4~?9>pMu7I!hcL{0K$>5)h4(T_m^0}SB> zO>hgjgh|8@s4X>+@&ag{2@J=}Qm71A3iIL$?CGrPB>~qJ4d8Bqbi{Nd#Zo2Wl{7<*3eBM3N{6F3TRk~Rp?`irttBGGG{}dnFMz!8a<*bSIk{ie6+Zolcoxr5Q;+q=dPW%9uMdd| zf+z{k;{_2f;w6ffZ5I2bLutN_im0TW6|XGn7Duo>fLEw6r3nIW#yxK~qv2x=uZeh_ zce>hyWh$wplH>Ce?|Qs~HkAsli~|AcT~PB~gq)r)pJJtH2w7F(p&^}xp3ShnR7g3p z49f~sGc8PBBBFEK6dB<-8g-tAxmiN82W%xd*`s9LnMuGW49nd|cqWw?>IP_nOR8NO zFXblQB;3KydpaVV9L=C7jz(i@Z+u3hRW+>z1n9e#cE@O6MZe2i8tWRxtMuFYEmnR_ zCskO*&t2{&qF;k$Sc}zkwx+;=CR*{o<*sB#64zp#CwI`3EB%1rNQ3+xHe5w>YaW{$ zq&z|`dGK`}@>j%P(BvmhU_*%pX-0#D-MEeJX%5Ei1r1fTU)%X_XIH)IfDKf&!5WUdAe@BhL;&!`7ZT^0(Bm*`Yuz9t6gM=DY}3}xzLPF z^x2FpXrWQ39U+>G!WgC98JZqdMBqTi1?)#2DKhTCh`9Ow!tQq@Rn0~iY zXX6>tUqGgaAB*4(yh*qbT6ha@^ZcO|$CPrDR`1|l_-LT@;UX?kHnrm~yodJ*VU_fK lfDg&ak4SD4e4GEpUIA?a#{NN0z{h{nQ_k=yT~^_<{{cI11fKu^ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamListCommand$1.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamListCommand$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4eb62191e099a57e9f7c0cb72c88e009511842c2 GIT binary patch literal 1327 zcmbtU+iuf96r63`q%kfHX-H_el{P@)Ufcjrgcga=N|6E&q{;(4ZJbSF>a3A3mEZ^X z9;5~k4}1V0g*fXP5fO<>#FBl^9?#Cs?iu^X&u`xWJi@~a78v%W7dnIYAFL7g`?lwc z0k=cPlYtcqKDKOcJm#{WjEbC||}i7n#hwk?9#gVB6#Z2fQ3^o|$#wm5Rs7g6}@bJ|shLY+C3w(A9C)fXZh zd3^(WsFSNbnYfZ+P`%hA|3EZm<-eIN)m}3gEh&ZHba@bn0PEzZ6#YB2TuxaI$mNyc z;z)LjBbkj53v@5zGT~P!drsp;ie+ z4SE`JUdBz_q7lPwloQ57Xz{y}c}9e1$bZHZ@`*OmUyy?2tCWD-Ij z{C>=RobPOf?0LcDP_b`n~iANbaMqhLE&ID-5ZGs zE@+-oi$-T%>zs9Mw5HT>^6E$|lDa~0QTZv)uGlQ_)Wv&DFXr$rN=&>sO>jnsX$Fm; zdJe{S1&wGls9;R4@WG8z9e$iHSX$n^+t_1-qDHJY)R9U=V!bt!-&AZaf?%GGBKS0% zAt;_W$%`|IO;nMcrDGw^7HCE^VkFI^pmf`0mV!CWk(k+<9@uFn!p6?1DJW@!?5_7rIBeLEA1mO?h1&Mm{XTa)o!5qL?hGVzZ(M={O%3&=riqK{M7PsLDq=X||(J zjbd@3VsQ~IkWYm*7%rPEcBn0b+7``4oy*>!?wr-c;On4?#iH*l9+Uxh8@` zoQvWyCzb@e%A4bf-q6l;e}5#E3Ez-2+`&bfiJECB@;G81N2=KBLoMnwtQDL#u254f zW%im0WukhzZh2Go`kX<6whoON)(cin8MEV=L)|4qS20{RsXHA_xJuwpC5AQ{iKI!U z`Qs_SxQvHf6>oytszJyVQ%V%oG6{0KrxE9xG*e(cW zX_!f%IY!mdrF`9=q={S1q>4HX24i?ikWU`MWf%Cc1KkQT#>VZ_q{)->%66=bD@^v~ zY?SjZvqlB(4(!s=i#~>SA{`4G$^P2pP^`Nz5s$^w$>mvb)dh zNk`2@Xss17ikYen3Pv*_Se#9qUn7RJGr%k`4LR9*j6^Tj70od-6&mR2x|oq4>orZQoj|qOoIwV6*!TY6*Ma}+?q*8Ds6-sjbtBj^x+mXYxn}=EQ>!Ij!0^V zK4A>0%5n$p(r_oIXOY;T>$n^Du=;Z0ZLuiJr#*#cJR_68EosadQHDHQry4)*!vh-b zXJWCEB%Y#2cN;M_Cp2@83+2F2qw@OGct*pQ1)(VuNB)jV$Fq2j01_vs)oL+f zv=En9#pO-O%}O0%Hc1XSSN#HB((t07V#bqn9K=^_BiZJ0R1j>KZn-DXDm64{Iv%1F zq-HPU6%AiwkdE7f9;V~#_=Z4NE|REc2c3>uE}rG#jzuQF$*vF%k*ck)={SVL%1NA# z*NWCArNQeu-caJ)gXxs=kRv)qFv_^@Gm@>AGcc~V`f(KB)bN`Vd~jgUuzXI(Tlf}L zPMCX4*3q_vmF*^abcULB?rr?GhTjrgIHgULm)q^Wx=V%#Oh-JCVt1?KJNO+6OY+g| zu^M=W4|7=#icW=af@Ms!1CaGvWMrSIUi^WMKg9clkye|~pXMpvV-a->?`il!j-1*=!WdEt`0#!FiK>==N;&L) zHv91|{#?fgDo_h4XM;JU;V&2vQ-Wwk!vw$c;W++M$6w(`Tr#=TN0Ng~TXqw;r)a2rt@_2mc#O%xX;-}XvA`7!s*d;XRKN2R)$!)^cN5#2f8c}_ zobVx*7qQ0tla7DJPl?O=_S#OtqLUO3HSb?^{44&Ay>GW_#{|u6K=LTeVq`aL?6&fa z=Uosz`a}G?TFK7^SLW^dXU|(#_)`u4DL8lPnbAmhf5RT)T7+NXR~kMQRL+39 ztkxP5jfL+!$w0vr(2=GDnly)1f?0 zok3ZOgfhvUEzjn!qZ|rX?hL4K}vNw-S+mj=6bKpW8l^)1cRw~a8Ja%KFGa? zoS}$16lQ1YvOvyKMLJ;`DO0elykgtbc3sOY{#b<8_{1k?D-$jfTr&;WlQo^O2-~vf zD9bLM-lF3|PRXKPDO34n8xy9Sr^`~6FxBaSRV(PIQlU$wEED+nvc**A7px$s<+M#q z_ccXQB_T~#2ripCtS02PvUTyqfRSo9Q}kE1Z@Qc>JQMJ(Yin<*4Tqar*YlKYYGaHU z!bz1A*{Mt;>Xbk(670*9Y5o_iPbJ|gw_K&mCCV**^|kFAy4JThG_)#kFVm%3*sIS| z#f1*om)t}oqU}bc$37%tLs9RO%jHTw5X*mRDNUZjSQp*@~qG+ZA@6f`f&Spb{BHBF7496*1+iLnQ(lRX$`h|WfRvE z?lTi+&?{S1rc#vAz{pyA!W$V<_9QHmLd( zs<@kqly6iUC{1{*H1ll3J%unt;xb4M$-zi(oH_p7Tw|y>8rxfyby!49Qwd3F!mwSG zWw(5!Jj#$XlWzH`xQ+D&SF7#q zxePa-y0K$~vF9Am+gnklJawj<)AG{Ub^G+f-U(4wcA(?{PTIm0&m>d_JWKVIW@2pP z6gtJt5tpYFrG1O+KHpNVI7>OJdnXxHNDR?evxdf6b!y~yfKy;`SCcT4+)k0LzbCuz zEr{@dhUV6G+K0oenKMtMl;RyQ_9_Wv%&!P)->M?u1fZJSez;n?1i&tk6Zs#(4>nQ-Q7HiEjwS3W?%L{|ISv^WNVZ2!6++< z(jnDHx(TQJs%aB>Nyp7#?(uc7Y<8RLBI={h>8cbcP}sbvnJW}j%o|Oyn3<@H8cFLD zQbB_qsD<|KgPCSRr^L{)lRM7gHz+s1$+>VQ3Q))=&3f{pM18;Fy?W<|&fi&l+D0lD zuL~+mW|tHnK}qGZH!!!-^G(d}be9A=-oS!G7K26nErEx>=faCJPF_M0=OM^9^K2Fr zzL-yBW{F}|C2g4_C``4Kpx{v~=`0S7VCfMoTQ-ap#lc~$tQ^M0ydTD8uaU+DB~2*` zRAxyCj!6h&H7@74;0j#HU$vB9a7H1o+XJ4r3Z8@R8Nr(Bf`h0Icswgd&`@0vC^&}Y z%aj5~u;DOThY>E>La~Z~my%9fg;8vC!Sl*d?C7iv6jUucf}NGGW9~4_EuL2>z-_5l zX`y*O@x6fJSE3jfB7loB94~^a_*1OXctYh#oHy^Z|`;H&yJ_8;VD z=<0$I+&+qX1=ZR?Yzb(icv!%}>cT+5JD3wF2o#RufC~puZKL`n_2PLKs=Wd4J6IC% z1ib3Mo8}wESKXXjJB(L7JFMs5aN9hG1y7uKF{4CbfX04v1mCXKl)!f=yy&338z^#w zzf0Z}@_YRF=L;0h^;xWb-$mBPs{H}KQp-PzKVnt)J&Q$w!rOde5go<%JBxis@W-9i z9Jge9NAYKBJ;$r{fL=9>A6CzD=FatbUcfB=_7wa22!(rxXUD49NAY2&g0bXp=$UfJ{rcy)pG)K0<(tkv%~lWACKab&cpbx>^ND@8KnaL2J~TZIrGIm zEQLqK*Lhgx+j4pclWfVIsfg`eTSb|#ubCj4;IhV=> zyrZ&22?-a6NU9{2TbNPj;_de2!?Ju>R@!QFGAAmvg|YiFAJvpgM`ZPg&|*JRPYol| zWRGPpM~!UA&~af5L@IY#7At>X4wW30jV_v-R#fKx?81x_bin#+06BN zp26AnqBbkUz0|%`uCXN?!~%P0>-f;M8R1mqI{V&A0Efod%MN04SaxO&j*ls5OQn}% zhb_8NiST}b!c3uP$uF+3(X;qYjF+N7;ev60ysz39@Y&&`AH=GFZhNrwD?dGk!h={G zD0&Aa1Vsh}0spXk?jUAY1^gqj$KtQ1Skdv$L?v&`Qu5|WO6Gcrt*Qdc@+f~&p;Ay*yt zx!Q1p>w4Vix*0dQ?#6c4qxih*Y24y^0k^uohud7g!mVx>_PgDQcE&?q=?P)qPa%AzdLx-G}5}xsOHbeR)&vmj^idfgF+tIp)Jh@{ByhQ9qB1 zdab#-Eayi0ValDwzYRDeVODnJKl4qLca7Qbei;Al%*$V)tRs?_R90}g5AuZoX(>fR&V8k%T=cTMT&O+{d?H_46ObyN9lpZrES~Z5nJLElCkdXy Id>uvq4d_Et;s5{u literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamMapCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamMapCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c217329c76e49854e9395b8577dfe8e9d38242cd GIT binary patch literal 4875 zcmc&%>wgs08GcT($!vB9gh0flqAM5KO$vixF(eTQ0VJ9WO&~T?AF{UiG87k~T{{S=o^f1bLeF@nW9K!`(5JPGGd-=_Z_^r zVCdz6(91)?mQHT&GHuh_EpT`0WA9Fn2t<0EaU+VjK>f6yi(;9;`VrGOmDDXOnXz

$>`RI?wayFT#R^=W?rDHc4Qx!EJ75`8s3q-o~4yL ztN5B;>a2pb0&6Ox+UuLvxZ%cdD{fP;PGCi)go@jd6i`m;mTwGB2(+Yns;G}4f%Ou- z4N_vM`SggC*rei4Y-Wb_T+Xn^1-4WZU9vm$vQw%^OBJmGw^nmwQBdHMDz;!NJttHH z`ZSSRovPw^6x#&i$zu|ADfX~5vR%avxi{)L#q0|-So)Y@$)r{y#B?+{c31)e6RAGO z&1z%*)RgJX7o8S<9%j^r+j$L%Dm**3)MWaof?Wc)lvrZjncj?c$kJzILKEne>F8n+ zq$E*yV~>LS2tvu0o=M&7aV*DG(T%;79NNE6;O0{A7DNK@_et>gSEOxl?1Yi=I+tQQ zpN%N)7ic?7-Y3J3k>sOeTQf=HF(c!9vOJPwGs#@wdwy#iy?9W;0|LnsZ^OOiP^##Y zl#AyHY`>A0B@stE22>2<5Z7g$*yf|Y(Mz^9&l5m)Fzv{Z-hGT}2!|C63uqs+QK>ir zHk;)^B^qwOZqv3aa1V{tRJGVh{k-97NB9$Nq$i&NvpOoU;|8{?IEK#_$u5-&>_n_Ky%%F%6!OjgC9uTkI_5 z?J2CPD01|)h-cCxpvfqh-FT7!Bq!t<#%gKDgE9CxrQoE%wwln?$g+yZFhe4n`Qb_D z6eBm~U=Z|;qcMCQUsUjgYn4ZZ+CI)0+^^zGc!G)dbK|;a1PY%j>x^ansIg%yG2L$T25w)GlX|Tc-A&5>ow%O6w)SqJD49e*2uV-VH!KrBT;;t z<5a+sWX`lK-Ic?XK|Ure$7Tmi=E)+P{5T{^7ceBK2Rh5I2HjAf>z}iwJSCMSUYmy%b+OP?1!6_sNW2A>*~Tde4rk1uO2kpF4SRZKim$=YsNhAGXE1gwI6@i6 z=GPu}G|TX)$1h_;bqq@*u8^qG?5e;Q9`b=3eP-U1v(K=ZwRO*T>BH0i4{>BO|Gt4ua@nJpcZv;uZXfya^^?Il8CP z$7*L?LQ}jdRW^s9ycE1jVlKMW?YeqkKZf)8vz*v2l6 z6pxgxnkWT-XDQYm^AtR%V2(92%&S_)IAF?~)hby`EDy3@UTL>VJaGpvWA(faGn4X0 z#-|9M6-4>l#J30dwT}Onw>HO`)l2-}_8L~c%9T2-lIy|lb(Fsi%XsTq&9$40JJ7-> z`L{gKEU0k}ZVB~{hI%)>fyC$vZ5E%ngge>_*tjBDK&rI>`P{7Wr+~Z8Q%TWWBew$^ zO3Z9pFtdqw`cLt@z)sv#G$a1YaAMqXwe2mmpFy%sn!ALK3%Iv{p5_BZ{g-jD4v}+h zSJ2+kkZ8D!ex|;$^&(al@aaTj0S|R3iO5{TONd{zQ+a7Bp%mbqhEjhPk;u-bmZsBKooJ926Vb>l9zO#ua<1sW zmlF+%s3_pc3g5pquaLecl$NFfz7sjeQ0s%d3sqmuH?(cMwrs~i zKJ^nYgOEK#z@Eh}JdY0i3Z1xsE?mTYcpH20AN1fo>!57>0Bs7|6}+Ipe;>OQ9FOl2?_-Tf)BHglXdQkdNh{V-sdRNn zChY~pipf`I@$&guoapx^2 i#uW$!y$aq|aI1oUD0oL<8x&l8M^>l6yA-d(KmP}Uik4OY literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamMessageCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamMessageCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..0bce1856ec175ff80584a96bceeefbbdb4cb5483 GIT binary patch literal 3564 zcmb7HYjYdb8Geo}du4f35<78FfOeDSBFT+6p$P#ibulI;4vuZCU@(EwV`U|8EbXeR zRY2+eMpJqNN^hYpltL+&c0vY}xC{(@>P-3Ce(m@}{|36{9`PH^eC zRW8fCHB#Tu5D_@Krj3ek7i{0Q%BC#Yruqs#LaXLjXl2;TSBjS73v`wWmAvf;>>pp# z=+Q9J(J<1fKqXD(!?t7lLjng9*R7qL5r~Yqr>rQt1+-%Qlu>LDxFur|0Ye($qT#zn z)vb7jLTDg{cHE#t!$yHUiSg6&j5G_<$(tG9vz>gpc_lg11%VzN9q81sSzzO8r6~FY z+Kc7961-7I9NQR^EZDMal?8fFHX9YVVcd4CiAr(K@=nOPf<+hOZdMj%q-U$|a53V~ z+q7}#+6aBB#1rml-tzBPToBmZ;^4{VAT{g|*t+_(cUA1dDa(tY7dv(A!fu}Rj4V{F z$(+EJ#7GN6F>FUdfu2+n&5n{YN}^xK7qFMSkfjn+D6qGcXp?prPgoM;hv6t@Y)jKd+7hLn%nb=;v;qrO|`j6g?0&RGSO!PQ_9 z_b%57>qa1#7Iv~HN$PiTgywYBhiALEx46@NW+&)=cthQe@rwX#F zGPfPWDjRo^wFyP3)=xJ>yPS+DjtlIVbP83Y6hv1xveGdsWy=U#n~`NC1KpU!eHx|&j1@sHccume zbxbRwb(e`}*#4q8!CVLIA2edD(it6}1K%D5!I~8?ud{vWIEjY^HjzGIUpp=x)|RKv zpS(t~27S3Mp6bN;)Lw*oWx6p3yJ_fqNVH)sS`OV0{OEwPb}1 zQNGequmt;N-HIVS%b>1dJM5||n1L?jFs~smaBzL2W#6l0$#kaBR8~nD$FT}JY@B9B zMu$gEj7?4m9J)quYuF+2a-g*$ID>TJF)be(b-kkW1qRl|qNz|dlp0!low-pkqv#?} zd>s{>p_k0m@W_!zk4=tE9GPY#8Fwt-EV7qpJ(=@^p{WYn%)4&BU4Wp`@Mn!}zat7RQu$2UmbtXry1=B7E9*qKs^l|>#_)Yw?E#cB-S!gn-$ zTVUVyhNa`X_#TJqX$GlAV+-reRm`*W;s-i@h$q;$b0P9~wCLNP*4#Nfso}@0qV;*T zimW<*f}hqaf~|xo*Xx3VbJKEL4^YlnJ}d6$cuK=B1U3XDSl-a_G@fBww|&c#zRSG# zHRz6o>oo8zey!nG?Dtm-d=Zh9@aO$liPQi%u@=neOE_J1|nAa%K zRSBWHPM`iPg0Lau%k08&SqiQ+8eXI8wR^axE>E!xFKk(B)K>SRtwHN+xW^7C;5o)P zmUua4BGl!KZ|!{75aqLrUnjZR#^0M#J+U7B5hLl-DmciBmGW$>z-U02-f!XVPz7dVVB)!m5yFt`{smij-y z(0LgB%H1X0c@ZNujP;Dy?Jr`Y4UsqEk@q@YL}HaphBB$WHQe7I+y6d>20K!3VN(qc z#5)%8NE-$_vaVbDv@oEV#k_Hiac@lrdOH6zYXYn%rLatrFK6bq{Bm0mxU*T>P wf2GcTbnNW^2!}KbX*l-@ZbM9i&@idtRSmrwUa#-)ox0B|#tEncx8ZO92ai7T@c;k- literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamOpenCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamOpenCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ddae318059139378e6d3b71550fea0b0f02fa6b8 GIT binary patch literal 3434 zcmb7H=~EMD82`NxvH_NgC~7=cMNNpZ)go5n&7o)j%Vj}JyGfR?u*t^kM#bLu-P*g_ zYn)EUe(*!q5nmvt$p6z4FnR%ILy3xkLUS4_wy`&{P*L}09x^d zfC`3i%CNMFnalE|l8MKRj5?vjEX_!nvZX3XIc6l2N-FN2hUlt4t)@DhTLB)16N>_5 zElt-fO*LgDt;zgkA6!Ve$3;1sNo131%3|=Q^=v{*G3<^k3VOm-v)fhkw9OJG<^x(v zvkoz|2JV?VIKtrRFyg8YwX`$HL?7xHHgIE2$(mFp?hVN@?0q^L)wNhl4Jxrrgn)X6 z9f8P{azT-GC6$l|t&EmRgo|&2Bh_GN5K#p$!?K8$Qv0&WsG1p4qPj{i5hJGPBT7c& zXZO-$O=>2?!NsjAA1U&WFQHn)rjj5r+e;`LEY?=QT87mN%{rFV^thU-!Fp^Iuz{g| zA%%!dkQjsuik?;bCm0$79VOsv;Kvs3zO9_1SbT7VQ*0Bl9XlwzN}6I3XV_JWw20f) zGRz@@9HNB>&C93K?hzlJ; z-mfTO*~8f)Z#dL1e{=y z3bf64mU*reagt|Ptx1mURZU(2HHe^3Kre%Qk9|f&KTb0&rvz~uP_L3A#0BCdh38hKJlz2yZM#Qt6r0V!US6818&l5GDu4>$e7ik~U4U_L* zrnWP0%+8M3al9(xHD1Bh(Tt(QV~WYuta3Q$w2Drgh9fij zTa7g??vRTs{RIDLz5D~#-Nxon4o&q^4uR$z_&x{u8{&5)aRkuFo0A~TN|3Mz57-h~ zvDcAMu^%380jmrBineQzLR`{qJa`M?9F8`0I{0_cT>;O{&@X6fuWJ4d%X2v8ueyVW zD$wrrdw(zDJ2Q{Z@8!g!3^_c~F8GBUVz;1uRm5d1;L73rRS1K+6Fmwk`aNMSbCuwQ)UB$ZD_oul9&pDVkux9q&w(JGxp4MC7Kn*YDFJAH7Bo|iN zf$Ou^jTGul*a8Vn*otOa+iChA#tw`jfO7~@&)bD8T5tt2-X%9*Cr5ux|9kvKj{X~M z%!gK1i+y%j&N&XxhlSPQb-cmDM!Prh7EcS>@la99(e7Dk?cS59^R*9 znZlR&03VWe*P-Jhd`t;;m2{6oX!;lX1hfel{|9>o#A}bRyEukw0ZhPg0oMeq7x1Y= cLhlR}L@U65mvmf$s?wn%ZqoQOJMBLIAHS`+vH$=8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamPromoteCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamPromoteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..1bb135086d5829e2a56fe8204b5f48cbab35fca7 GIT binary patch literal 5921 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamShowCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamShowCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..f813329902a7303fa39d51baa145f292269e0758 GIT binary patch literal 4458 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamUnallyCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamUnallyCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..d76ecc931bc6eae09a2fce5b9e9b16b2e6b3ef41 GIT binary patch literal 8413 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/commands/team/TeamUninviteCommand.class b/bin/notifyz/hardcorefactions/team/commands/team/TeamUninviteCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..c1154bd7786ca14968f7b920ddb26ae3d162ce03 GIT binary patch literal 5450 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/CaptureZoneEnterEvent.class b/bin/notifyz/hardcorefactions/team/events/CaptureZoneEnterEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..a1acd83e82d3c66a93d7618a95fcb6c7390399fe GIT binary patch literal 2272 zcmbtVYi|=r6g`tTwqtK0F(rTl#=Kg4on#9ITH=rZc@QKkAc0af-`1PKS=j8RyJIBh zx9}7Cp|nkdTB+*i{-~;VW=HX|wUbD-WY5m*J?Fm8T>t&g?|%Zgi)T5EFwFaba9{WK ztsOhuc7l+vp;a>wbqC z`ZDN-4qtQS6fGx;(Vy9KQv0|@pi%mcA%n6UH1vlsBBP|WBn7Nik}s_VdV3ZVWIai{ z2HD9^@eh=~Kg8$1;KB#mj^GmgX2}R-R#qpV-4v!ZaGz{4bY3xM4sp3ry802i?_WVHbBRtmNMM_e3E^AI7V6k83f;wHIGCxubQ?b=iS+hzNvSd%N zthwfBl_kvlj0@=`RuXY!G|M{Caw8S9+5<-xyfCNg_ysbBbv#{AscgK;O z-@;GmLus1^wNlmR{-~;VW=HX|wUbD-WY5m*J?DO%x&Hf~-~R+~7teDTVVL&=;lAnZ zTibTH`kP{KyjA-m&-|_eEqa+q1@UMwWW3mjF zgRo<@yYJq)B6dLhzQaAwZhM>|zis$$?ECym>u43pWCi|npv_jt%q{v;S*xT0shRPV?tzu10VSL_Fog;7w4fNq!En()4ta*NE!XGk-JLcMU&qxcwF1ZX zHtf)qdwux6HaxcBHBcQEyl+1(;)+bM!f>ZHoKc0- z@5pm0nr3|?k1E6YxX@K_Kev;B^?Z6;1$iO}^s&3fV}CT!+WW0=-Ap(=%vibnR$G*E;g zpJohvhBKrCvF(zQ7f#6gxQj;envC_CXbr=|6DW`GEJLBgh3+%MQmy{K=wy@c8n}&n z47X3@N_RPjZy1_GFYC!drAAXWx;b)8F{~UH#c9<`6NY$W@zG5t%H%*w&48jC=|LvP z5siUODTE~h<0vo~kql7HIr%zM+mvIXNc4IfkV>j42Xf3>iD^Mfka;Ff3glr`*8L7O z^i|Le9lq+yDOyexqd&9fr1o)*K%?{>Lk49zXy^}NL`F$#NeWo4Bwtz!^!6+!$a<1? z4YHG;;vXn|e~8b2!G#aB9l<5~&5{wwtgKEzyD3a-;6B-8=)7Xi9O81LboC>yeK%YB zQZDA~0qSPs0F6FZnb?4f6k?genZ`L>phFo=Jemj==M14gfdO z;ClnX3wSsHy!c}(?D>Jredq3vSyVkWXYaj zS#!nIg)%8(!a9=Z)&olzg$LNKHvx-r6F$->j6T%e?DP1}*oze?c& zqLKLQA7wnZo30P~V%DU+_ndpabG~!#IsNhT%N2mO0 zR%m-}V1$CV4RI>mFfg_p-WC3u!|k@|hQc?cIvZ`*cqb4l5)2b3{FECGcaIFy?X($E zJ7(3~s&DTwtXGE;r%X<3^`==fH_7R^xw%`*HeXkF%?88Uz2U{ESdQ)5;R=J2%QqPk zYud?EXGm81CYfAyka;8YZTG0Wk#CNX?F}8HNT#4lA)`Y@Qtoc)NMVdz zRc%*ncG~;G-{Jd?U`SUzi#tv3+ft5{8Wc-x6NUGk-p)&(a;5f2vj^}c=i87L#2Ka==a~6Sh!M=vSEChp zggIpCm0J1I81?;^h>hf<7M2z+Fh2k$$pC$j9_>{uNTNjYHtzJ{FDVHL&zxbV^n`+)l0EJHZqo$W`#>U{totUoPt8+VF}C8`UFLZ LBs_zG((3Flb{=Mh literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/PlayerClaimEnterEvent.class b/bin/notifyz/hardcorefactions/team/events/PlayerClaimEnterEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..c2b5f703edd5fd8f9d0d069454a402d202e2975d GIT binary patch literal 2415 zcmbtUYi|=r6g}gt?bu!(4G?f11VR$*4aq`FTM8xwLPAnmRS{88(@z^`LKZf=Xm^a1 z{-S>9hrTSNR_YJvZ{ar}?wwuP8?%aou(ZDOxaZt^&)k{+-~aO;fZO=Kh@8M(KTz)8 z;V<^S6YjQxQ0_S`^q7CK}xR8$53|bD0 zMXos&2$V?`lF4aDRNj*T;f|AbMysrehlm+sdUEmbiUcU-#49xVT=Ml@0>S%#0N7K zpRjbwp(iP>QvO5qn*0O`3|mGH#(TL z7CN|YRgDhnRyE(jyj3l9u+Zb2*2#~q#ZKhDAC{x5fi)kHiJ!XfEn-qoO z=rTEu=P5r$M?oa5p3JLO*yt16;yA zG!pO(S^gP+VzM9G)L3plf%{m>2>0MO+DxC%(~NKe5Ai4gFOfGB7Oe3O9`stStXH?F xDV}SF(b%ioS_OTRxG`3`sV~xulg~>1=Tsg>!ji*do$V^t$d(EFguadC>Idw(5zqht literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/PlayerJoinTeamEvent.class b/bin/notifyz/hardcorefactions/team/events/PlayerJoinTeamEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..67911134deb0740d214905dc470b6cf3aac4c02f GIT binary patch literal 2933 zcmb7G`%@cL6#g!RY)BRg5s*iz5rKyASRPf|22nt;U<$Q7+TwGQT*5-w;AYbifABBz z2el%M&N$9Eqci?d>N$7Uu%w~bFznrX@A=O2J16<;@1K7Ka0^8Z4Fb3Al56cAe{JlU zPCi$1t&&|fTxlK}@~O1lvhkp39!qDnWZ9c^y2OVXLIM;23mw3O1+JHzf|0Ep z99XWW-dHs4oGcd2Y*7kC_DnlplulXTM&>!ud){TnD!XZc=A4I=c>%E_5I$0V3Up-l z&8MbOajl}Ue#G&ZMV8;N3byH19I`W6M`ZSbLEE+5V?Xrt9Kpk7Y3HRQFc6f>l@1Td zD`U}HHNBfA~%E>KK9&RPjJIYNN@# zmzN$!Gu7s*I)^zMvXHO zObYb-_kMHMh;aF*bzDPRl=}KD4Q~p>1D^X0pyO@a7HBB#3MA{e>pOR`X;}AN9Wm(q zHmjo@aiXfbXHkRRy&~(EPY>dM@8$FoXz`k7*&9Xz#ub)o8Acj5Tr+oY-#k);*Fa5} z2#k}uU8`YPpgSOSf%O{hQQ^L zG&~^Q24YxHqgKapX#&RrY5#PhOf{J4}uz zI+_s`(96;dT!)f7-0!UvbYO~6H7LME?ZEJ==8X%1!Hd4vB@_AIQY|#6nws)LO;!4%lsJpM`ho)7C{>)CT((O)kQefm0Y;MA*?I+gBP)O#!9JQe6Y&V5U3jHF*d2T63&Zj^BR ziT#4EC#UFshQ9A<+kk$0hDiwM#tn4>+V$c!x=YZ$B}5NFo_HVD^*dcP(K?gr37ukK zG(L2On~%oh}8MLxc6KQ+=ExiOQFdNX)fu^RqEudDYEW5%MwWuhh!222|F~!hH z(S-uHw_m>`4QE73n~Eo+VHz_GDRN&A%Z*`Qu%( zsC*kCWMi3BBCjb#)uY(AsgQG5KribjD)UygPhELkntEFii576NYPuG89A2VM(RVV1 z1fDTWsgh7vyX^+mO2zX9FKtw~Z_4sn`(SZZM=8vslgiC%kgy$w4!W+WD=E^kv(>AF zpKIE#20*qkUHGO~^)0?`%T61-@KKqS8Zk~i+Dxw$dC5klSu2uA&>&f~nn4qNfsRw8 z-k(7GhV&O&HsJ<++sFyf(4#DpqzgAA;1&@{=@O literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/PlayerLeaveTeamEvent.class b/bin/notifyz/hardcorefactions/team/events/PlayerLeaveTeamEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..84bd5677882e5d1ad4a43e1321e50684f10e4cca GIT binary patch literal 3583 zcmbtW`&ScJ5dJQNYzQlA6f3BR7HbHPRn+143g9BX(al_8&$n-kn|4W7D&}HE3Zzy{d#NHFSD?G_n&@5suwc1fUZAz)Ysw`7u^^CKQ;rH8 zE<82YO{4Bv6=Qad12QWtU$n}$>D3*&=Uj})$c_tb&+;~c*z-3?J?Tn&Njd_j!*Zos zwMt$Y@l(&ZCvhn3+}bo|>OOb#X*A<3gP0W<&hFwq zbJOxH=^9hY{l57WasnMbe|m`7bZgI|?6Jvw8Uq;8Feq>^MC`?3#4NKrocczF~uj< zq5IyPQYLOm#}X4XU0eRQ`~})9H+ahUL8AV%|s0r+@9ql=kcDg?F3=o&dg%C>W1HcGL5Zl|fb*OSUYktoX=-sIt%f-OJ z+}7im*^yBNKD}dPRkaU+>$`#ye5J&(if+>^cak5+H09z;hKhP)x>&2z)}+N>9G!7h zJ;e2ZQ>4>O|1C(-14&OIeL6L9I@L&xhR*h>c{?)P)M%dJwxdRBI%=erqef~tG`5qK zcW{(6J89KV_V};u6}le3#PJ_-@_Sk~(bYhbgg|1a)edOYjd$s+m)3_g`VlxozuSLg zQRpPVeop5)6EE>zf2MB}{f`DS=XvN%WG<+&C3A_#Tz>ZUZ~Ft6bw!Nvs@_{U`2&(afx`5dkJtSk2uZvKITIU2_{@yR9@83Ee- zj!yk>+m$<`blDg^9TO@P&N^uap|BIgkq+9FSf*c2t3e|RwUD*)w=@YSbSh+}C9oo3 z;c1|JgQS@i$=tC9%G-2EtKAs_V^&!>;!ABonpDi>i;3ictzjD3kyP#_s=r~LBMbXd z4Ed4@EVW_{&jS5kr41y0z{#lYBc;op3OHLDL$u-><20UxZcA)M?!qIDC~TLb*L8=K zw_&SeJw|yfs(dO|`3pRcQ67&f_r@xB#Af?;G}~uml{aFQ??jbzuPYxI<8~joeTGJ# VXFuab)NT5tRoUkJe5Gbz{{wo|QE31G literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/PlayerLeftTeamEvent.class b/bin/notifyz/hardcorefactions/team/events/PlayerLeftTeamEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..46cd86e657c1d4cfaa3613c999ccbc4254fb2b12 GIT binary patch literal 1762 zcmbW1ZBx@g5Xb+=Q%ea25i1Jvpa?A}5k&=B5iPBt9dQQAjD44;2L#fjCMje6R6fkW zjLfL7{ZNj3mkdN?Kzwm+?r!&YyLbQHpTE9-12BV^5i~K(TDE6wHa@7^np4qjhi_`S zXV{jjdR(ije2-h6tG+R{26qa4(_5$2oLG#Yg<|Auu$?Wn zT;JU_JpV{_+21S}u9qg;jBXm1;Vm#UCsP{?Em^z5Bj{ilILkGL7&;Zi5oKu0NJ2Xp zx)rpdjiIYxSp0RpTISBWRyH|9Pr=qTb3=0sF%K3Ol7;`yGo9Lqp&3^cByg3XeT#c* z+^TSgVKkWv=dIh-DkZIE{eRyoEu60@xQ>3`*?$R!1Uc_$dzxDJ3{zdLi8s?sGQWYL z2nH#WzjqZ3V}vfkc5S}q1>s~sbhL<9^#n2bNX3I0YMj#3i;B5tC z7-#69?24B0uFhAMD1tviEEZRmWHu=U6PRR(k#XJ^8^bi&o_)t&qsD_Hg@`2Tu7WA3 zBo9JmwYtdZ$+@6F(z>u$1**VFn9^NBrxo1C1G*-|eP!soQgJ1bM;3`B|694;FJ zL;7Nza9bdd;)=(#bZ(lwLY1DR5F>cTFfJ7>m07ghdaY(V9~~#g%H9u zIWf79UK)LD9|J#dlRigjBx&5CagWB#0UjSy<1(Ob^wJsQ#1`~~&%!*?G$Sf9ctR&J zEZ}KyVuozQiP1wWQmD_r(|0(|M2HkUB1MtKk|gDj4@gsT4zzqm*T)l-eo0Ztg7yPS XJ6;_5j>?_WeTSs4h>>Aga#wx>%HPp{ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamChatEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamChatEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..25ba0feb63d77a804cb6db2e9cf0de60eb1c1796 GIT binary patch literal 3217 zcmd5;X;<4u6ukppz=$kPN?B62CarB2r3si&18quhLTZvUENw_PAq%4-%T$)rLw{2~ zbcvJG_MHBJeCr?T>3bs?gpn~H>vQaR(#(DH=HB<-`0c-c{taLTMjRaix9o~*?jHWE z?rBa@uQ$DK5a{z(a75~I#j*^k60Pc9 zH%qqW)*Nz^3thA@5#&U#l*>dVIg#VKVHXW2w?v*U>}r;^qv`wkic{8H5@bQQOxtvq z1UggcErG~#rATRWElkRQJ_!tASiuMeNSFobp&J5Y3gYMzxL7c4<57(z*zlB37Am@C zZE23l&;HAosqHq*x`zjbFD@r&E_h60Eg*dxN3A3ZrPC)ls1Y=Su6Z3njfZB$=CPm0c-^seCa`tPVW%9Z< zwHiu-R#`(nF45AwcV{((%@X2lijT83AS87_^2OKOQE#7b>#2oU6j(0{73kpoCzAO@ z4_|CCb-voAn}W7lYuqJQ8_t5d3tW~woow(uX4Sue`5vVnzs>pawSsOWDATIM#_=^9 zNl{HxL-%f8kE}q`7Z|0DgF^9t1vRjOIN|d4-%#cy)+;qfH}WRm{z+DX$(R2Zruja^ z7)8@b-zd5;$d?EGap~aTXiRcrkt0=}9I5W)NVO(Msy@QLLv{!H=p7|J*$R2-#{kU? z($fUZ@u%l63_W{;_kPFduk_e~ar%wXB2W>(FW-QkMsS_xJeN15gSQl5oaVEc$)Pv+ zATw1*Ix{)-2POnwX6iLQsbhur>Xdtp%fk)Ro+EUy zQ3`O3ta03+-6v?*S!n?eyxnl0EdFG%N_23XSv$&88+BX7DFD ze(=V$)fs<)AN}ILaeU6%Eu>*FRzJuLoZEYS-uHQz-~RmhR{*nk5JQK+oLlwm-NUcV zeXCY3RcmtBDtUI*t(%^-DyBS;u2(nLxz9V6UCHlT?w(v$w=qNnQq|g?xzl*`$o70$ zGkA*%44rz*TW(1@jkXP!od*0gJl_gJ>^&2Be6(3p$mf7%Z$IMq9hmQn9MX+Y?xt7C54|KL~el=d-a9FqToX=aJ`KQ@9?qoEhsfr6xxZ_rCXLYfzf6ZOVvt+5Hbn9 zu4x%c$LC9q?b_agKxbxrLm-l`mSqeBVfAV%LIV95G%$n|JsbBEZ!+y;Y=c42k!O@Nv@*FiCPQFV$o%oY1p9Jr^lvgt zpc8{}TxG>y=#Df=MmnW;WZG>wP6BUWJcf)w-w7vHcOH@wbpu&UkUll}Rl}~ym8!c! z4S|~(zW@%Wgz3xXnr_y-n(gl8#+$AJp*W@lE@@h}gb|0yHoFt>G_6TfZ;|Q2n|LdR z>ojo^>Ir=fPP-cdF}uE8dF&nP&fiYp9n8gW^LctY*>E4+{`TXA~`u$0@il#Nzb1Z0%Mu+_H5-up^7e?z#=vN+d%H4vFCVd z$e3zBt%jAAc`Tpt^l~H;xTtba^SP-)0<&$?37H&Z1&uXLPJuM-wE4jG*!AG!D9fta zpBd;zLcpjiaP?PHefuKpLr$ii6A#2Eu~u!=O0r<9uj)Y9r+Qk!hu3JglfPYv;<6gs z{5POOx#5~r4X0PO8)Yu&w_e_}>GVBYlWT%nuOLNpGb~9#kI}JIiqU1Cb*XlDQQ=ZP^XHtHM-8XT2sL9vlO)J_2t!3W$Mfz&zlYJl&f$QuQa z$yK4ymHi2~zvHGEni=iZSMCbj3Veu_5ap#-<+)JhReW@e@W-bjxZ7%EDb&a(SPO}u z(5ietM7bO5_%u)+)0qR2A28giyQ*~+q5>PN#%Z)RzimNlJ;a^B7PbTB1tzWxMze!Q w*gR>&gudNkaksUFlrME$=BQ?XD%0o3p-=N9Xe%uA2TgHAj;r>Cj`qvH06Hh!>Hq)$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamClaimChangedEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamClaimChangedEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..512ad8bf05cb427daf742b1dc83219504f54b6b5 GIT binary patch literal 1858 zcmc&!OHUI~6#g!4DW#Q1DFq55VAZxf##dYbLQI2k(YS$-xE!XpWn?;Irc)v={5S4> z5fV-O0sbiCckdvUQmDp-UG$!N&Ue1^yz~9Xmu~;w=Sz&N*za3AnW;cW3P2^UukZI}GYLG_n&!CbsRmYX&W!QOjLH>pgO@RP(|l);7pE zux>fFYX=(wkwS4-AX@gSGLA8UnX8&Lh&0Ai$YO+DTh|N;2u!9BL%+aq#dhWMR%1{4 zJLaClbkh~jGM!!1x7Gbr`MS`%&piq{U5rbb+qFk)s?K-+CG_8or?@+a2*y=oZ=?{% zfRg4@NMKM&H&aL=#gPU3Hn*l1_f=1bn~*&}prcp6hLotwAl!L@e4*HTV%#da=3AWNWWD5#Y+YjN)t=6mF~qQKUk8D?^R?@C8f^&nF!|eu0~y@*TD~Qp z+G_uET|ZqbstC+;m=S&pqsXb}Ln*DMtxwKcpPV#N*C_X4NLz<7Ld_^Oi`1!K@+;CW zPLTP8i4VN?VT%9#1S!It)_}JxrfCbQW;DTD-lMc%k6Xl$NvEhHXVkjt1T$(~$#t7rRgAJF$r7P_2L=AC zVhoiA#`1*>7CK2DbsL5wI)OaEZMs|d(O<9nemUGU%vy`!NUSF3_E@x#qryB_P`1IZV>Wg z$CV=RBU^H3X!A4f%gFB1z8!K$@~6sBK#rmH&&-6AXIKux6Z>d%dMae>+HO0(%RSFI z@;F0r;P`!yhY`bS=MU)f__8A+xyvx?#!TL4V22F(i2HpWGOVSUZZI4Y&2Go*fyNNK zxaWGp7jmB=Yg#>qTs!FV0M0qk2Ffs~ z7;+$}2T!JCIe9p!x`kwj80;x7#)VQ}Pq>WR#IRvn)0H!nMU;$@8V2g;p%P;nm_>=f zh`3B$=gdRZ?+S%U^_8LVdn~QZP9aEE`HDl;DIEl((B;pBn%vshAJTf`oH@8lX=Lf0 zq3@!a5c=^lDl1y6s?@Y9>orseHAkl{x>ry68|GhMp!ym0k95r7CVle+0zq$S3+PnC z?S%M>Fj=yfn_CxHY;K=p<%(F*S2fC`PO%rXgGLO;9W;nWM9Owe2Po^zGPGaEM&jP4 zRRy1Ee!l4WqnhANILaCbMn@i`|ywX(CR+BVY z+QUMOy3~``b*6cunra>*>cHY*=i&6V0Z!;o3tD$Ueaid$xtq42JMiDEgc zX*+hX#Gs_ob%sdZ-4QViYG4@Ak-&9^Xs+urmMUKLpc;6#vzINT>v8hEp<@uy7*uJD z=}-}svs*f1h*PMd?TB)_wJp3F-);(qWYM*Fv(7zR+To%G1tUZu*tdPkdc>P;L6ePC zx^ES0xQ7QS?lUBMD(U!vXz6%}8HPCbJl?U~!wy5Hx8BX|17QW(LQe~RFHsK|)R6Dy zF2nm?Shr2-ew~?YQcA}oq#0iHCdxOt?`M11U1q+jRO*)GrB&UwXNfgi9>nYtYg zYDLxFb9m79$m?xSU>POXuX>iG+zXB)ys!Y_t9Zun>OZd%-O@jA?(zbuP@zA9vOFOb z3eZU61QL@{nzR$4QNs}V>10*Nme2fGutxHla*E*-Btzq7Bs4|`ztNU*jAXSDImT%9 z1mm9xF@OpBYBb9K&mET?(v?NL-Z{toE z{*sE2@UdfzH#U^ac_Sy;l$5D6+@1SGI~O!AqOnT~aZ=3VZj221$Xr^IWzO*AJJ`Q* X3Nm5LSw;Ta4pEKmFbJD6zt literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamDtrChangeEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamDtrChangeEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..7d99265457d43dde2560b56ac53b72fc0b7f7fb7 GIT binary patch literal 2226 zcmb_d+inwA6kW&H*ck#fkc;C&05`E6$k3LS20}=&36MI8RA?mfb}}BEA!Y{6jH%kE zzE$cERP8q)^=g4Y;sg3oRo6Kl65|*wp<0^kbK7gLz0Tez|NQ&n6@W|FOd}?6+4Vx_ z!FS)AyV7r1o^L;pR_J(cV1~AQWZF+`Hw?^s9M?j>x+~qLeN(Nakq{X7{HD3n-rIA+ z?nyJ+O9>PX?Ny~~*{zn`Y1slJgle>GKM*)oKXmkVceCyU;Z=c*)%CO+0%BVrX~}j# zjNA41Bwu7M-#l)}(5@;Zh8Xds)95n0G6XdU{k9cqd4f=e?ZEsx@+How=Q~Zul`Tdf z*_uGgwZGMqktM6;xK6k%5HFRt1QJ!RVW%-ZNUI(JvN(xJ15-FouqBOkf&BFZ)Fk3q~d?Zz$gqg zI%nVr#?>L(K%j1whFnOeEeM&>Vz&+$bXmkIMwK9OdNU23k& zaM!>huCQNxukEsTl-C-GJ3-Wns-YNYTPeP5AcL%eS~2h?Zg5BLP zkE41r$fgG+QQB4|tmBh62VN*R}m> zO9p`*q_Hlr`v1HI%;C+)0cR*qoL>?tTUM~PtY5v)>ZKj!=^T#J z`vhn6^i#jlmpFO<87BTh{tr%LDDZEJhrsgxP_KZqDV&NNe;|Q0*YlNUI9-|VV5V}u zgR_-#2gS-{vV++JoIH_$2_!H{l2fFWCxK~>3L5(o6Cn~xDATHuNIGj9P}n|S_kO@CZiw%=W$_x^Vxpqa|4|hpdu;(O@?|M zx%gXO3JA6-yEBChtjQRG^mEe#JP=EWcv&Ij)cW{0oxtr-`TBkN4EbVh`6sgkIHW zM4n(Z+>F4NNkCOxsxsZdwSyAr5?y9W*L#Sj_KBu+b@TPXDsDwsMNJb({E2-3wcXGt nDiZ%E?|Uq8rcxW^ajPeVL=-oMJ3Jl38or{<(zniUV`b_;JBQcG literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..aabceda5a1fa6fe617cb23ab6ffc945ef3b861bf GIT binary patch literal 994 zcmb7CU279T6g@Xz+s2qSNt^gl?bgpEV#lusA>xZz5JG%t3D~#EcA8GR-NoJ6Lj6?= zO2r59*&ij|*0ldIN2L-}r5E{LI`biwfXwM5HwJ$xR z!ypz$$z!2TRA6GU!|_`iIw%p^VKfz!)gBNk zuXLczYr?bcoZQ}+P7f|P6x3UAdo(y;2-j*Tqe563>OhT>M-Fb~+8>x_d$;;)XSjW#_$t%eEYeBE-HbL9Z_UJ8*uWib lO}LADc^kpIZCvhuMdvdI+0>O3Tu%jSSwSvHxSv)%_zS(a@aO;l literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamRelationCreateEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamRelationCreateEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..e60c351df56703c0f88623525130baeb128b2270 GIT binary patch literal 1754 zcmb_d+fEZv6kVs3UWa=vSFs>!I|W7*H6rpLk@(OUBZNfW4$}jS3^QitlmvgpU+}?O zL!yZv;71wvnHivzp?z_h=G^vLXYaN5p850l=WhVZc#=kfVbyV^wRiH-IN)C0bUm@h zO=-D~Z%Dz93~?+R=^I-#e=BURPS!oarFf|h(nvBCU2osmZ5$q2GBh`$vlPSBm9us3 zn8LRCt}Pfc2i&RK!t)uXYgbHPg@-lEm(LioW{4DZ2DZb{=L@GUyp7OZ2BX$F5_$4L z7;kKTB0LohG4@IB?F)I%kny4j8CJTG`O<5cGLXoZTsC~;OdaCQteUpvSaOY_r(D@) zNUpnekwzg-kCq^F7(r3PD25nPs{un64C5No$S@4lEJwU<9PLs7p?t$N*W~s#_bj!J zHb0fS_}(tW|26NROl3QV9u!qfw>0FTso9K%zHoM1Lq7&cEqP#3L9BK0t8-;i8U`u1 zo0n^3sa)y8+AdB=vvs*p^2B_WZ|b0~q#ZP2$XkBY6RNVQV0M%&iyE@XF=)P!Eyv07 zjw+~B*b5B(NR_CRKH0>=g}%99_bI8o5-=1)t8-0LSfXN} vS2Z5sVZ=2@qk59xFxDQ#^MFO&#OQl;hFGMP!o(q7w0NF87yJ=fC-C?mG_HhR literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamRelationRemoveEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamRelationRemoveEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..1e00a17493a7acb8aa892ed3241da5e251f810a0 GIT binary patch literal 1754 zcmb_d+fEZv6kVs3UWa=vw~BzM?LZmvf{8TvfEphfV}Ovz+hKZukzvNnoRZ+L_zOOG zYe+Ql1N+HSu-ZQ`d{P+dn5uT)xV5m8+wDwOw7>C?zn64-G zxhXBz@eL{Xu^~=`BYk6==9|Li>SR+KyC>p>I!GhQP;|WmW3PF1WXaInh|W?BrE6y! z+%bi1^F3QIWDdF0u!ZL{%+#-$z6uZPmM_;BvSx@B4FjdOK~H&Zih%dzA-LtnYF z!;su?8zPNDoE~jK<}ik$hH;EAq-p^}77UXb(#S9j)h$Q7ZXWMZ0HJ)Nb=Tzf4)-jz zjy6A*d-&cd#Q!z#qD*BchdvZlOt&=Tp{d!NhJkQ)Tf-oRNG*A2Q9-Qt@T+@eQW}OS zw_8_hWTjl`!P+TKNV9#lQ1Zllo^R@)o}^tgVaQv4)Dx<*sbF@MEXx|Q$T4WXkZs4w z@~$eVRM-m)gXBqD1u@K$Gd&tfc^_d&=G>Os^i1*6QvF!^N1rdh<0l+*lCC)R7#(2p?axrF4$com1_Y*F|@kSG=&u^ x26|QF0UkzN3pA=H`4tnLK|Bjs)J=@ON9TxTS}9B%;(43r$qT_BlXU{Ce*v;EgvbB@ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/TeamRemoveEvent.class b/bin/notifyz/hardcorefactions/team/events/TeamRemoveEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..ca25d45e01ec05aa3a4bc58eb53525d000c9a70e GIT binary patch literal 1383 zcmb7D+iuf95Iviuxtg?uG(ayQw1viLi2+r-wCYO)0x3c&jUv%E*V#5p9b2-UNbpTO zaH}eT#0T(Eh}pH3m=F=LWbf|mIWu!+#y@_3{SIIc4>L$G>^W{A&fdN=`li>jT#uib zRv=u*Hv(=B3_jvc;2Ryp2g?HZg3~_4&#f3c`=ZNDc$_^F)fNYsewb zp!qzAU8m|Nvfo7t6YDEO?e|zpn-N2htipst)yW^bL(k&Rgq+;+)F0A(V~$MRr8JWC zF3@*HP6+*Y37HkGC0S}(rS%$$gj%H24&BSA@C{3^uTc7o<&Shs;3j?31Oh>CDGTUS z#_foBM3^Mm3yqyCtTc8nu|6Rd)m54DSf-1j0wRYD_i%p(dHekod2=RNMq&vJJ;!f*GVBRlXq*VW7aulMFIpEEcVnb%3y2+oTu=IK848rsNH^$q z3A4B2v1ww6wt`S~l<#=ktVv*|@!Wag*q-Be>}C`yzr&ckFMo)S$2MF~`6}8J$W&`B zf$Ub$mU+w#t0+aYfLRnREMS`aHcWrOfDA5Z`WFSRy)TJcOP6}d!UQZm`^dr> zOzPQX3uiG&5u-iDPTx4Cy5Sbo{Yk7UV4sp=P$0UeBcs?10+nj*bj8>$LLMD+%^ZP4 zd{bcH_FL-|da1>H^<=!3`5M;p_)K7GFq?(zxIyp8@B5BNt&SylwEJAT(Rz*MKhumH zcmJXDU1FID)k_{M{dmx`J6ia43*#uz{N$86&Q^D{rzc4}1TOv;GMCmYr`ed$nZDH?+5xR;Hzjvv*I|Ttzt$R#q85291Dz^!ZcAc zTrD$Re5c{@*8|uUpc^1{mKE# z^-}f#m7^TRIEw!Zyn2ydEn%M7b|=bw6?37Anz^%R$ZKjv?Q<5XXS#qa&+DWe z)3-Tlj-&P8vGg-1Y2sybi4_MRzC>UJSB8MggW#2+;MJkv${_gqP_T`w$;~bD)WuCN zlXvA0eEJGw_2opjjL|->d6PPP&34@~35zi(DTQ#Oh`{GeMH@^p`xp2!xud~gElr76 z+sBh@km&$_qih4I81-e7j4U%*+(xvrWcqX|7gn;hrtL`PU!~&# zqLKLQA7%V*snD4Cv_ACqd_CXk`R+aa_50g7faiFoVv3>cxPg5z`fT*Lw{N+gIN(-b zyN+)Jf)5OFES$hMEI#ywQR{PiQ0sB$P}F2WMS@}Gh#zyKPer5d3={M7u!89-7=aV0asEi#Dn_(NW3m zSl3a+6NVRYbxNe~mt&SLKX)~rOeKX$Gu@$QiPyH=@`Zn+ydn8Cy=fmhJQ#Y!*@?+Y zjmktLY?Z58{ZVGOUu#uO0{HA#O&!9D4noZrWTsQo2L%l6zDOWik0>AYK!o?6P%86K{G qp*I&cF4Wkig$x~WDbgqrN9t=?RyxDlPq6>@O<^O{H1ITBH~#?j5iorK literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/events/cause/TeamLeaveCause.class b/bin/notifyz/hardcorefactions/team/events/cause/TeamLeaveCause.class new file mode 100644 index 0000000000000000000000000000000000000000..13ee04f335b95b9683da3a95fd4755e62ac126cd GIT binary patch literal 1237 zcmbtT-%ry}6#g#V)~!^)O{e_uH_A4Uicu4@g)qlV779ERmMlJ9${mz!t!cX@^RLqJ z0MST%_Kz~2TPD;8UtAx0?|1s0?|$dp)1SY-UI2K7mntS0-nw4svoO#^8nrEkviaY- zWrn0#uQuxp>Sn`wSKZlUn5^&YZ!b2h=6>B`sC*bpK3%apj_ZW$3`(KcB-1tTP^6L6 zz%ZlZCbA5v%7~ILnAb&Gq3^gy91>mCSyj~{ddL)P?c-f42*kvIx!P%uM&!eb{O3w_?{3EHd|isMwQVG++%Jf-4d zl?;MVbagDDz>wj-&j+^mallZD*SmXgBJ8l-h_&EPh{mJ&hR>}UF+~5D8~$49d=!uoJE==&GLG_E#5n_-MPQVcU7{fa?3e#dD!!bu^khY z3Y9VJua`I0==K%*)e;-Ca!dePX+olvh69+HlcOOSG%S8}`Qc4%CiuAOt%%9`Q r%4hm=Y2#9jU0KM`^_E5&CE`eZEz3&hSpEU_@4N}DMw$j*MC;mbF_tQ* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/struct/Role.class b/bin/notifyz/hardcorefactions/team/struct/Role.class new file mode 100644 index 0000000000000000000000000000000000000000..13de5d87b7224c1338a8033b9a5f69f033ba07d0 GIT binary patch literal 1724 zcmb7EZFAE`5PmMUCD{>4deA@!Z7HR#t-J_mp#_@|V+?h%9U2ACc<7glt%PH2iIHT6 z@C*8LT2lt5oihE*k7C%nID-d=8S+JYx7vMnpS|bq&D(!o1NaeJCZ-q)L72#$y=U%2 z5p_FZtcxIGc8X-&gaJNCvxswwvc#j4(PGe*Hk>5#*<7ai?swpLy zx}}XBh8yE)BLNnUATu?|x{Vqd4422TDm@X$#mU)>k4s%Il6%ez2T{krE!Amd)jeEQ zglX-`-9RLRi2T>bpj2Mz2u-e0k%i4ckjTE@lCdNilmoiTLcao}osVM;64{f9^kY}8 zVz)}d>URBZas496B1Nx^xxS!e4v-}+YfF;Vmb6I`T&YM~(hx9rS}B$G21$DsbAjRoPYijC!b?cJHANsFZo&RIHw)wGyGfry>=9|W69vld{sLxnEw$- zYKTRzogU(x*Uk)4@Y==@7rf`V^cU5eqW2Nh*%WLP3{*dG>%D72zYVuczq3UXWh)eCeDd%;& zq{i1sExtl!`9n0)xo%E9KsEe2!f>cv)qRdL=N0b$5BBlA6q*`g1NXH34Vz>YQ4e?r Dvuk%5 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/struct/chat/TeamChannel.class b/bin/notifyz/hardcorefactions/team/struct/chat/TeamChannel.class new file mode 100644 index 0000000000000000000000000000000000000000..0eaa197a31c5e98989a23b57f55164a2c7b0ffd4 GIT binary patch literal 5050 zcmbVPdvp}l9sY(*vXf;%7%&PVMo2UXOI8692}Y8TNX!GuLTJQRC!5J;V6q!$XMtd! zwrE@XQd?VXi?+6It9`_vO9Vly^-mdiqam&*>l3_WRx4BugHg1AETQ z@7_E2-rwu{efRE5Zy!AYU=98n#4HV0B$B?ZXu@knzbJ)j}j($KWMbxWs)E8EX%+d2(; zLwkE`LuXU7hLWv28rxf&G!!MQ0b7IFKA|w`drl(G`ArqkovquOHs83tp|QQWBCob$ zvNsjtO-0U|3h}0*z#9#-cC~7l-Q2mOqoS*!eMfUt!@6B(@56?e>m(e%UPGX&x{D4p zC3|fh#X1(UBbr0dP-fsfoKHVDQHr8DOWExP>d2CK^+%L*j(4K5;0po zU1T6ApL89|B#h}E*NMr83IjSyq;-jbIhd>AoOUN+ccuq=Y;U{OP!f$uqKGr8X_}7 zW^*2zEqQ2eb<=StVc-g^)lf<`xd9EUso@NFsgq2sGcX%h(ekS5U9B=uXJ7-aCZdyG zuamG`l}LVBg=-9KM1zKTRNItH^f~dgXGy_mSaUkPo!7Rv zMmLWWb-@&dsSAS!ZiYvm^^@(%eYV$RiEm@cESx=UGP~d#NJ~}f{Z^_!N2&W5y||m~ zv0TwGWZ(d9;gEfE+H%Q3r=)!hDc9?GFU`##bUNNI8BiRlbO@!vC^jF z3v`8_6>kgce96Ee+|K|>{UrT7tz30FS~+dbXqQ7k2YT&3DbEKDd{x4?fZOM(w8Ppj z2Zzm28KTtM*OK%|9U5w@3W>u`_>Mmm*-9?Az3FRh6~1oZ8^Xw9erqD-%W))>`G|pU z;#)bU&XHe^sSAiFR>-80KF75qEqt9yl{&sdRvO(6jRE-PR9|hs~oUXDJyPQ>Ue?~u3S}-5*!{g@Fb2CW1h|9FGiGa zDy(4AuoopnZ3d{WVCz%Hr>OxQPZ2Sda-!N^4 z9nX{RRRG6emyci&FKSpeLA#yidVKM0u{1%0-R5OD5OyJZmVH930Y6Q<%OykF*wKZfvMkZhLKo zlgANscC;&3uh--N{0*<_h5I(SRw`8po^eGJS(ICOo!s_*EB6~iDCYMDevF?4@dqYh zVq#}9nvV6iIJVo{?0HEq2tz|C%Bw`omO5mR$Ku;t9)7d;DA&3(>ma zEVEKyxAAgX8Q>q3l8uYxf(uacHmf8rul!=lH4~T@5~nB^%T<=+Azp6J!91>?&)y!c zmfy9J}g5}Y} zsC<-L&BCR8hbTdXE2+Fnjmj6^YeB}EQJ~e#St;nK2 zi^eQAcVw_6*Xzjj=H_}^rFRU`?(isf9Ko)d#}Llq-C6VutIfpOOK1w{S`il0)FoJr z3$Yd#p#kOCgyp;uR`3FJsd8hDinyJ3qX-sa=%rz+X_&3T)-c}Mg0lQrANQY!qLZi! zV%3~EClLygK}!)wf6jI7Ery4#X$NaY;AD|(tLdgAsYkd_+s)Vf$Nv_1kn*k*e_t%_ zAA0Wih(jsSvG`>9h?Zyg#QD6;XOPcpjPx?fHz|)({*&@`%C~_z|Ki@PmpgRIGH4_J zrCf%UNB=`vi^!`k<@%DF{=J^EWzXRkucX`-Huq++|318&!7E|&J*s^)gJ;9$`&2ud z!I7}}0o8segGa*Vt*U)b2KR@}53BZF8QdKSOJ)tbwHPlKq}d|v7`qJ2ov(x!QmgX z-2}Z`P^bsS`Q`wAh#%3)BJ5QqJBzE9vP@p#p4-M-5&|AaCsDydt*qpHUM~2S2t+8w z%VOaWiEoZ7CEZfp0*72Yi}OlL<2FpfJ+1(bXInljAShyo_!6<$@Wj9Uj zCgCh)wtki0qb84#kg3&-;@3|@0kzPI@pbcbX7Z~1x_hZvY`l5|uXjI>qT!vR_}z&o zLv7@mrKH&6Ed>2eb{4TyG}c+pPD!rQeHgC~bCY>kM0$LK^mqxXDQif3YbkSC$pvEK lypUKjQ=5bM*^+R{%#$) z#>$lRjHZPO5eN*I^gyy8lgsPrQe{q{r|pU&uolJl0;62HM3GzATjO-`ZJY=k@%V}! zb=j0ZvPSk7c@QNr>knCK;YOFrXBabyP5vMS(Kx;n7Zb3UECB3?Sq(*U?2=YKRSwn_t+&mVa-f T?{R<~k3;OTQecnI4)#9)v$KSR literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/struct/teamstatus/RegenStatus.class b/bin/notifyz/hardcorefactions/team/struct/teamstatus/RegenStatus.class new file mode 100644 index 0000000000000000000000000000000000000000..d61174f361c1b86eb8bd0d79384fc800cbbefe8e GIT binary patch literal 1864 zcmbtU-E!Ji5dMw@2o%LJ)FzGN{-ljvAU|r_I{g8=cCbv`$dDjI%k)ZM87mQzM-rK# z&(MeHBebNoJpn^!qSHOHQfnM~1s9y7-EY6M`|Y0d*FV3%0`M8W6EVY3cHF=^ z82z9e8s2`-^~?jK7g(<2D}iYY6hH8Wy&&BCfe{RSrD^s}M-TTR5)89Xjpv498%|$Q zo#B8XvE9-%hBa*p<}!oaRBLKoZEo)E)N2f>$D1u(-J*>@8gyNoA*Y?6tOuUu^eO6+ zT5s*%Y;S5URcBcLe##`$m7Z-mR6pC#suIlcaX(UDD7_MGS;K9(c_f0Q@dE`Yb zFwDDNU+E5?J+lI(dT0by*LFP_SMfGOves19IzwKY1S(5JvMA#^mKf53dsZPa7K(4y zE#Y0fFXBChxr-^uxPcEC#OH=RG#dvDD}`8mqx;nC1?7p9S=^Mdj1`i+5^1mykBu}h zwk2dykWoa5pvKXW>FhHs6{>HtM*2`~Su9FmxWiAl%TSm=yc5gwzq2wF^s$U2QfY`> z=TBuCWl}RyYiL{CdtZjgy=m_KQpQ)@D>T*6S&@-Oio@1rT!PGSMY9~UJ{)vSZ_nu3 zCZ8*}XV`7Sv-o#tlpx>%Pqj+znv`m>%{f&W8Ay~%aA^4qnZ6n5(XggM{mHmdC{8z& z5*}e!1l_QBuSb4h4rJ8PpmPn+Ge$l4Xv9#8XB%}pF6?X54j=9(aqw%&r@BF0xF#P# zx{RxF_Ns08etANNVQ>*Or^zFC<3f04s_fUx z8~3QK0zH?>jca`909t9h!j&e8JUQNTU~ZAm6Gzg7UB)cMU7@d2Li68`FTpywIpHO; zoiW}z#r_CYBfZCo;*W+agJL4DTXSi z{-7g;F%-R%7-LoMB*!T0FR=Ctm#P(tso7 z(ygTvY?ki)hOKj!*-)W*Qe%PQ^C3f?;t7xKP$RzMDhb3_!&1bm(8>svEd7eDpTlE$ zQmN3G4Qb>vKtz+lL+p@+3wxi0=8egZvDSGclwNfzyxv{m`YFD-eUXjs9btJ&85+jN e5l4wEJOL@kN~d`8C)oeT&0sHNXrUdh-~J2oYsSg| literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/struct/teamstatus/Relation.class b/bin/notifyz/hardcorefactions/team/struct/teamstatus/Relation.class new file mode 100644 index 0000000000000000000000000000000000000000..be0b0e6983c5773dbf6e5b10aa33a74c469013d3 GIT binary patch literal 3086 zcmbtWTUQ%Z6#fpmOh~6K(iVh5t2R~$wCUa2&DnjYcxx@MMj0g(|HjOC^?6RDxA6Mg;J zbj&vr+loHM=wlvw`P)MutD+aEn;~tx(xa0jv8lf7WI891ocTYXBRvJvunhN-K%k>@ zio8hKb9w}!CzagUCwn3tC-AWI;ZN1`B@bqgdt}bR3rzyg`xPvCW43h92}AdfY4*4NFB169V;=TW>?)GzIkuwNSjrF{NS} zZ;}I~D`i{rMzQS3(I9Z<-&B@e!!%q&FC{ifk9K@r7u;ew3cNM1x`M3#AHGTDtfh) zn>UxTf5Me)U{S#}%FBOhR)U~S$W%)j`XEwD`m7S(_xUYZ3Lsk3)>`7u`o`Q*S=KzeG6y;5@ZB^6~{r+U;JN2?U=2|%3h9!T|pl-c%1L97W8qJqDbY8qD42c zLuc6<6l}8R=~Hwm*?W>u2I#LrxVMGxAAnZ6dgMyC4xKde{Q#cO5!s z(LnOg5Vb(k{290pk#B4agzsVBT{KIoB^Z)atEAdOK}ofTeU2Wel8ceUNak$C%0IJzOdM|yUEyl5iq z%~C^?)Tp9E`bLt{y8!9yBrBdTUlETWtz+xxim&1L@$ZPBPZvFmhoAlTaVmcgXXyOg z8ZI2z=n8UKvL0@5uHSS#A-dm4u%Fx4~Z0~;mYAnMxKQMwa-U|*AI zHr~6AvFsLb-L%i3Ihk$r#OUenTEpZT@+;o@j=yRvl8*!2B-3_;Y{kg(QM$l8$X-`X zsCs=wLAn;_ppy;8Mt?5;M2CWLMWLN}6n%uJXk`=;j>|e0*pipZu-rdU<7>p%EMS4l zkjp6H%ZK7W;^_BVgd1ywL%wi5H<&Mcj+|lln^ti+KOBfZ$oFuGjRX#^!P=wUR z;jE{If8W;;C%EiDv{A&@QTYvGN4bUw{{iylz9GvjcX1WB^1mavGQEzE9{ds=j#Ft< z4TZ+OMR1ykb|S)6qM3-GN96C~)(R7mwLmAla*4|DSn_-&caJ{Xdpu}5 zejs+aqonVJwi3K;tD}yvt1g#q-f+b>xeAMEBpCAh{E*u&_geO=#=dY=8YzZp$8Xy$ z-*36XCbR8(c7un)-U>uhI$Q~cl-iSFVSy^w1}(k9kU8XT;iDh8O@`5$AGGX7bZ{V* z{YLvJAhjwzsn!@?6bH}WpRlyUkf{1ikpV-_LK;Kbx@;kXY!-2hSs2DRL%gU%b2aIS z&8XcF!L}yMfONRK!vkpu>^c*g1BT^+5f&Dy#U$@^+#`nhi#l|)Ze8_ON^covUPqpi zZLuRmN#M44z}rHJVBI4nxKW*9s-~6wWb^+{doyxf4SXewTbNGcHbd!r?RqL(xPuvn zp_WiaBZl!}sh?=gWx>Kd%#w!UL&RMoXrgGq^jm!v2YF78M1Xh3LNoV8pW!;*L_~ILHDjMTOLKh{ptWn*9dFwndi8E zD81H(P_5rHS}O;bc^x!BKrsoPMbq-$4w*QIHuF94yiUV5Gg z=x7*<5Yxn1oSr0N`MjP4AU~?-fIcU2dWK=q?g&{=5i_1#xpIO_<+&5&%il5jm9}D- zpm&M_fp?gsw>|{qa0ORsWm*x6nj$;R=r9Zr=a^ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/ClaimableTeam.class b/bin/notifyz/hardcorefactions/team/type/ClaimableTeam.class new file mode 100644 index 0000000000000000000000000000000000000000..4e632464f331977e0b5be725e84003d2f3c7f16d GIT binary patch literal 9044 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/PlayerTeam$1.class b/bin/notifyz/hardcorefactions/team/type/PlayerTeam$1.class new file mode 100644 index 0000000000000000000000000000000000000000..24582901a506d434d839b39c601077dc256863b2 GIT binary patch literal 1328 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/CapturableFaction.class b/bin/notifyz/hardcorefactions/team/type/system/CapturableFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..107e7066a1272520827ea7c065241653afe34b73 GIT binary patch literal 768 zcma)4%T59@6g?e~mmr9Oua!F=iL+5-GRTI=YJ4OZ_GKtg!gR<`Nbs**nYi!+{3zq? zfJ7uFY^J@pr{{4ypI`4E04{NqgvH>fK+Deb#qRO2?FFIea8JuXjchHrZ|mt$*rVx4 z3*WBsp&p04H4ya~CW$!1_4)*N6QT6{E<>UsmDE*+(uv#W6K)T<>e>w*O4W5vn+)+< z&=wiQkj`QQ35L8Ym3SEYEfGE&8w^D^@c5v~Luu-HGp>7b#Bl4b?`$QSL-LCIk;IBQ z(w$o#YdNs*`7rXEZpg0UG$Oin^9N8_jrgnc*y;;UJ5{1Fd3R0T0z=H_Lz6l(u#jRX zFQ=v_nkT6x}yzJ4u;B3C}{2hZWmE2_PWSQt1;aX)A;l0w_+?A%rF~C7A$4@rf_Q z7e2u!>RNu)BBjcb$6Tl|?puwlm zW!X;Z=;)cqF(W&au(Re-BjKcMD;IH0BNK5(N6biWH0PL^NV{#F$eTH*tDsRgIX`Gy zriL!w}-?`d+_hvH{XbX3q)!EzMQ#a7cfMW{Xhh_>}A<&#ir>vCI zLW1fW2AI8ed&mr+Jct@B)v!ci{&cC*QI4trmI<%sP$d+W>sW!6n&<^YZ=H^S__khZ!%U~` zQ=+m_q*Mut%4QuwQF&adCTp6OXgndp3i)c%5yHGmY{!!tn3>fHI}=ITb~0^7_?fXS z4(YU+a3bBAOx`gD(g~pyDoN=vslHhZ+&PwFaR-uSq5CQUI12Y<_j5awBPDR0JAqg+-;6>K&&_p7j$tvQo7H$1Zpz1@7p`<0N6-Bi476XS~?; z+XYvO%kydBv_w0qu%Ot)i?(4vG@jS-0?zUT8$2f#6Vo`IYEgw3tf!iQg%iAQ7-^du zq{8880cPkforPC%PQz;oRc^qOcb<;d@dnQ*{rK+$c{wW(D$I~uA#@6ncdYbGJ}5}& z+J9M^rhHqPG`yoQZwje3n>9wGshlI8zpLXtyw7A0o1-!DbnYF{6p^*__)u88s8Hi& z(hai6C1LJke5&D-J3F8I-qGw2S z;}U7qw65m24|A)R$Q{n_An*P8SiqHqfLcb|a!N1XfQp9}`Nyz0RC^r{UBxO_Qdc&H zM?&?kBdb!sFO?6$gH%cV#%p|1cv2 zmNSkOsKZKZ!73!tgkdz}EFUN5IbP(O;}TkNh?)x-_b}E`a+tHT%*r#2R^eIBbdH6! zBb+_Q-#qwk;WWxM-r!1UFu*kVxYf!+stDqDQxyuYVTK07jn`m?Ys#)6DK7e47ejOv ze3n(9o@6v&E}a%vR=6aFkaDRKvVsJK=h{srbw{3w8n??9sq zDE?Ey15`+37bRr$4&!90@rG%QGq;Vq=#v1~-hdUC-N!L9f!uYR;v_kaGvj!%6mxSC zX07K?5HI0n&!KH}Uofl3aDbe4|B6?9_yejGr=tj`+AHQD-o#t9uco~ZZ@U4mck@QP z8#o^)=C8P*a2+3%;_Y(re6$S8`_c1e3zH^!UpR(s@!kIL&3Lm^Y>$8G1U_0@ilK@y v^0y-jdl6NJRCofHrio?B&W|r$-@o!=_!{4E9wI^?OZHp(rf>z{@2L3)GpxTY literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/ConquestFaction.class b/bin/notifyz/hardcorefactions/team/type/system/ConquestFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..1b2a452060ef9254f65a2d2866973fa464b80311 GIT binary patch literal 7532 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 PbiMGc5-! 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 ORm*$ub$MoA_5T6Bn`D&$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/GlowstoneMountainFaction.class b/bin/notifyz/hardcorefactions/team/type/system/GlowstoneMountainFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..3c627ba4423a07f2061c132102766fb5b00a0b65 GIT binary patch literal 2579 zcmb7F4O81j5Pb)Z1x6v1CMIo@mXH7jYLo<$CN-r2o3GSh8XMB|iyr1|1hV9j?*7B~co8{ElW;Yo6RD6VfhAxMf#36;r zzmU7vQ7wnk^8#XD4mQ*nbjU>ja zRpP{u42vg7YCFwcQb+-*dW0UU#1e&A2XO$@D0P%x%!p@(p_CRT9GoX&3j$FL7R?>Z}E&;FJE{u zx3aWc*vhV~Eo@~L7Uwpy1=&xn6;1VE9vKB`hQUw;i@rXZb)sTH_H~a;!m4l_UKTMd zVMW0*^>iz;is$%_L3z!Mn#h&pJV?JMsj~W4V>A@jR1D%y4C{EI;Clw`-0+u!`56pF zXWgikbyGzi6k-oGz>4X(+$@s%r>Kq}h(lsp$EJ#x_<;riq4^Wh$7)JZc!-vCLuiZi zXqum?F3?2B%NLBP12xoCuedDKjT*gzfcxF@I)0`_|4~i zs^yVzE1laA6!s{#RTM$pcgwZ8=@{GaeRd*9_~|oO>c?&77>q+G0_Bkgp`l`4s#vwzV!{BVDT8)@rgQC z!yo%bPLQi(qyJSMKb?S|xiok-!<}V1?$u_9_};}++(Qn-q?3^ld!xbLXs{P31?(ri WXn@EO%B?vV57jNws9VL$l=&Z4zrrE_ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/KothFaction.class b/bin/notifyz/hardcorefactions/team/type/system/KothFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..5b3ea5fe6af96426cdadeb102bcff3118dc75c53 GIT binary patch literal 5950 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/PalaceFaction.class b/bin/notifyz/hardcorefactions/team/type/system/PalaceFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..e787dd5c1dc38aa6289561d1bd97a8fa2fc973f8 GIT binary patch literal 6083 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$EastRoadFaction.class b/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$EastRoadFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..77c126a797039ac7242df3363f2d08b7174c8d0b GIT binary patch literal 881 zcmbVK%T60H6g^JT44I}44UoPImAarH;SG_Hf>5OhTBP)$rlQ?C6K60??8xIm3V+24 ziA6u4ABDJ{q-{ty6${(JE8J%(` z#gM!4Nb+=?IyvNDjp!dtvTyc9>Sp`^C5Gmmr~;H3-WeP7UUqt_9FL41s5rC2kHJ%E zl}Ob2#B0yyy1!GsL^70jl~!(#p}79`h@sRreYt@9WcgV`6!D;n01p{f);lNSOz=eL zn0K93I&S%rT1RR5DI4~r{U&nGddEZ}ITADi`O{#@9jlb#edkVc=WnjXP@m3|IhF8_ zVw4Y4>8e-@msygwGY8oHcmA2k=iZ5oTx*YLyz0kZ^%7mnP>j6BT>76@42|0w>Aj~q zo429=*_0vdn#@M>K>1f$ocSbMzBNPjP-|)1iAYmP_gI_zN_Y(#mexJ`r3E?zEYMyd zubKNmuu%^$QN73kHQGZ;03T4sAr{H1QUSs62z5F=#S$Tw$u3|er}{#cuPJYAUZUZd viulX)otpp1nHm$+l!@?of~Umzj4CEweB?Pr3V4z8zr-s#LyCAAtEk)n!5ZVA literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$NorthRoadFaction.class b/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$NorthRoadFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..ee50e58c8059019d9be0ad491f9310c60cc8b423 GIT binary patch literal 885 zcmbVKO>Yx15PeS4Y_kL!QX0M~NE}L$us}pYN>vp_ia-hl5!Ac0aW-x@cI5RUrT>ak zB@X-meiUNt1W4Np>cJl~^XAPwdw%}<{sX{kJdRLe=xO8Bcz((!!j2MS5Wtbws$qu(i`a7GDL= zgiiUuS*6pC&)MiJEf0(7P}(mdkT&}!5!sQT9>`ugD{i84hIjod>Am!J9fszzp~9(* ze-N|KO>Ll3EnHzq+?xx4y~_etJRgV0GI5=KqVckCd)b@xFjFz}B7^q7r5IZ0Mbeiq zg|^Q_|FbAVJTQe#WKa2jX{?ON3tyU{{$6WoyP3#yNe|h$I8As0>Xz0TO=^kG2DdD@d^#P)hU5sxQQm6o??>_x9DENR-pPsH=k48eSU_P wXDZ_#(*YHK8<<)P)RKwtxP!aIc#kp`RlMguc}jQ?_#fgCoiTa5jBV6@1C(s#KL7v# literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$SouthRoadFaction.class b/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$SouthRoadFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..ec86363c583d3db26eeb0eade05217b4fb74f320 GIT binary patch literal 885 zcmbVK%WhLK5Is)P+~yK!NNIRKDs@qcgf~P&N>w36ia-hv5!5X>H_naQ8$0s#MN0pQ zRV5bvfPNHW>;y>L4eG*=nK^T2&e-R_ex3n%g=Y~;3_Wd}8qZJoMA%VctQ?EPDWh}l zq?mFypGlt2b0??#vk{}-BDym$g`2E6B2*aK*W!v$Wq4z3%7?}Av2r{ydaTmI3f~9M zrBxzRCkv~)8XNox4KvA5-B((<1BUYM^FxM8*No&kZZNEcW@D6bvyKS27`Ar%N8-ES znb0X8IIDEp@i`lPrR9fWI+XT{2&B!vNkn!is0Xr_&Wf9;oZ)T%T6(X{uEWq=HdHv3 z@%LgDx~UCRs)Z{oiFFMVl-`a7+q?Pem+B@ME1`8Q!3)Ge(w`l%&4BdpV2 zBdZ;3Alhrjr>Or3fDPJX3IJbG#WytQR;L7l;WnCddWua#+@X63TY>5m-F!}U@5L!v vo~ev~OqzlxmP~}lJ=`b82b8g>;yn+^Q^KRb{}@l`jLG9=JVos{DGTNo literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$WestRoadFaction.class b/bin/notifyz/hardcorefactions/team/type/system/RoadFaction$WestRoadFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..54cef70ec50b9fa30f835eb096bfffbf48ea3cec GIT binary patch literal 881 zcmbVK%T60H6g^Hth74EiEbkyubF)tg4D6oe{8P*qAFYAU*RCeC1(*pbIW754Oh zSRt|K2lS(=UQbdQ(oMy}_I;dt?mf1D{<``B;1!+)C@}16DDDNt*+#W-5`}rY5scrgl5ldwGSwj?Yr-}e~8P>Kt$Kq7* zMCh1zomDz+`I1^kY55@=_N4tHa?X0kL?Ss9Gy?h4V96b+l;LgXR&wWWuEkKF&XYNn z@b_Yr4^!!?SPPd~lJ0@)Gm($IV;Q;D9?^K!_r2;Bx|X3Bd5yXB>sAbnn;Pl8 zr#hQAq5s*GA?%vWM)E-US6QC%oGd)w-)11xZmS<8z zA~ewuPu<@a6CGM6G(&SH87>TDH~1D;bZ(TCyklubDL%N!5J{M;Y8%4nk6)Xdwjv5Btm3VRp;yA?V;i8^Rz@GLFhuiH>D0ryT#DiP|L3R7c}W)p z$}F$A8E?&NC4)Ovi{iQ+P?%^gl20M-_E(kyE%|Oa7fB!ZmcQ^(_Qnbv8r0}L09b+c-T zsmE}MBJ|ZHvChe1-L!~u6lodLn4zh_D;25^!!`d@@Y<`nU|wYig5ez*?;^_}5r4f2 zx`{DZOP4Jt*yaKxd!whxWRE0@_ZZH^L^Q(Xyo`e2i#lfAl)Sgy&SL2GM_R0RU7-6I zHi%}Z)4*0CW$W9ar-H)<MK!I7E1=VNrH+V<5KzW2 zREw@n+g5D}pEINmJ)cM2&{tC2c6{(O$pR7yUofOk2c9!6XZ-+rXHX>J>r=y1j)L$( zk%Vtfoth;zn3{kDm#M?T^nZr_o`-}ey|>a2f)Lth-|pMXv_Bizclh?_=zFJc{~RIG z4Tkgd>?XuX!VJ;cGBo@I7k+a&F4D8jmG+bNRa~NdPhE@9UZ5T6<3+qg7z{7t6%T8~ z-2;(by!tEYgdmVwND2(OD6;z=@lb>x{iJo()qTzNXP)*Ae+Gmeb554bCj6QgR>rXLWL%fE!Ye)^%kf~v|Yn~o8ECd7i z(MQ|YNJAgq$D&KJg!>-JV?^8#lEZ?fGxiijwLCOj!zXp<-?0*c`;lDOMTy9}%JgX$ zrg*h{TKfg*phN&aQM!MotKt`*H_3)KNza=Q9MTP;iY;1u$)C^2w{2>n9a_Jn^($H* L(fXLyZ_)Z6xK<+$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/SpawnFaction.class b/bin/notifyz/hardcorefactions/team/type/system/SpawnFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..ba1ef21a8b3877fe51ffa88406d720feb1bde7c2 GIT binary patch literal 1170 zcmb7DU2hUW6g>l57AR7S7Omgasz7Vkm};8P5Dm6Z*qSWip>G2nU|QHEyMqRPlMiZQ zn)u)k@JAW%%p#%Ir1-Eid+*$P?z!jA{QUL(2Y_vC+K4f{@_Z%Rqp{QF!EwtEM4Pvi z^u5qgg7+OY8VDyGg-Y}tcfdb-`_Zuti{bekxz!$*ectSeI>FgUFueAIj?)~To=WAk ze6KA#!+`6OPACG&dvY9E)!8%m&k-RpBzC1IRfQp5C^i_Zs(&n!SY%i*9Mg#7N(MHv z3@e4&3ID*I9``zqs{-kD%Ed+s3|BK)MvfsF^0pZJ9^tYhhNYVH#KExN6hU3{X2{k2 z7VkAUk<)!dPD^!V$goqJLxX?lS7yj|gqo;XCzTnt3&l&&hD!FNk|K1pnmVhT!Y$mf zar@F~T+GejF78qP?wkF+qr-zeh8O=|pX8Y+tP42r_<-bPNV&4(aWxF6ubsaFb}vq3 z#&g&_5iM1&5R9JVBR$9aH0eGc=;4@QPD?T5&ku(rnGERV`OrCwGNfhrR&dpAa?ji^ zx)N#E9|kS4FZFF$o_z*enhw_JHpS^%pm$}_ZX-!+imVD^^ao^0x%3&W);BDDAv=a^ zv}P#_$RmN9Si~x>>&Pe`E93|L-=MPyYm0V`Wqrl!XWAo-gz>G<B+x5yMSm6SMdy UQ&aaC@q0GIFE-^@GEp190R>1Nt^fc4 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/type/system/WarzoneFaction.class b/bin/notifyz/hardcorefactions/team/type/system/WarzoneFaction.class new file mode 100644 index 0000000000000000000000000000000000000000..f5d4f8e2b0cdaa6bd5aac5d268d978a1d7ec5130 GIT binary patch literal 1766 zcma)6Yg5xe6g^uip*0GWr&^2Rs|6v*OQeWG0l}%jPzFc8ZQD>5(xj87&XixJekhL4 z_yhb=j(3v?ZK2f<-Ry4fJ?GrLk6*vP{{%3Lw+aFb3#R3W!|JJa#O-{}vh_orbA)A< zHAm+~&8e1jtz0cTdQp4N?NiItH#`FcL57L;-W5j}!V!8|+uA2IhR!8n3TK(2Bc3>5 z2&SyO-h~i@;)93Lf$J)+L1h?-r;qt3t{L1cXc@;AW+5rPy3@kcw=2c0ZtwG~p)*9% zR*oA7+!pfeUk05cQD#_7x7XM@!XyFv5@aCSJ6>}6Lm5#pxl^%;d7;T*>9XXyo1N^j zo^z7R1S10-kb(BnV-$HwhUG?kPQ@_T7#5|%4{ff|^gl@%ZWeTBO_WOpuWs`q$)As> zExVv)D<>zy(Q;O?$j!W#^1d0}%f##7VPZ z*~A*fGZoXAp(f&`5~YT^uf9S2+Pa)AKP?2oFsEW3&#B!=f>#0k#Mqojm+ggQTWliv z+l7~0E=ZzSQt?ufbUBu1Pm;@SEisJNhj(?od1dO?!#)-LKN986sf!nvgGPEKLr7s= z!CJdSweVH3fj4p}t?Yf=*T8^ylk&}}I;r_-7z07t zQOD4#&}j|<+5yT~r0WdfFSHHd2CZTG0=;Ay!A;t!o*BB)LnjH*OBNB@2hit2?b1&A zbdHUmpIy@+LU*+7eF9|YUKXZsR~fpJ zsRM>^#wzMPh%iJO_)&D>s){R683vQtWB!qA1~*Gu&b5VEO3TFFtT6SRYB{gl`#f*x z46&?L;Kl*Bh1>^+VfRQl3@h2rGCS6pChS0kEJu6GE1rZ%PLxdUR&63*Y6)1rsJiLo zUH(`vxan1bk+lxWTKnlr%Df^g^9nwrVu+uwj64adTR0#3pQH@eOS-!*oQlC~JG@Nt z7n51bE@}Dd$%$~af>kbav#4eK|D0};@#$1k0f7+;ZZizE`mvujjK!c=h|4;Uh(*FRvGOQzbJc{xg23V5U3r6b5- zL&16{uiE6Q*u-l&owl><8+$t&xg5i6`vz=-LL(%aBZCY2rjWBL-f%joZd%?vwJA*j z8qYwOR`hh}tI%!%AzA^-M6Bl&(J!$ z52r|c!<{-F)-h4X4E^ToSgIranIe7tvOrM2)b2AT&KMI|#S0JrC0+&i)83x0=PTA) QQO25XAbfTMTOQZ;AFR6KxBvhE literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/utilities/ITeam.class b/bin/notifyz/hardcorefactions/team/utilities/ITeam.class new file mode 100644 index 0000000000000000000000000000000000000000..704943720f287fd6bfd6fdc7ccd7cc82e81c2204 GIT binary patch literal 9075 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/utilities/LandMap.class b/bin/notifyz/hardcorefactions/team/utilities/LandMap.class new file mode 100644 index 0000000000000000000000000000000000000000..4fc6a8fa76d0465bd0a7bd91b65e48de68055641 GIT binary patch literal 7491 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 R$~}ClO5%AuCHpEpKL->25t{%2 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/utilities/TeamFile.class b/bin/notifyz/hardcorefactions/team/utilities/TeamFile.class new file mode 100644 index 0000000000000000000000000000000000000000..dd2aa22d44f372e81fc81d5df3b5004b64711b49 GIT binary patch literal 18119 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/utilities/TeamMember.class b/bin/notifyz/hardcorefactions/team/utilities/TeamMember.class new file mode 100644 index 0000000000000000000000000000000000000000..58b8a1241924b23d19dccaa2fa4ea20c93bbdbd6 GIT binary patch literal 3622 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 Q`2V^I)KyOhJ4zq^2aGdWs{jB1 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/utilities/TeamUser$1.class b/bin/notifyz/hardcorefactions/team/utilities/TeamUser$1.class new file mode 100644 index 0000000000000000000000000000000000000000..2b13f7afab00764f1722dd662b919eae96345218 GIT binary patch literal 1373 zcmbVMT~8B16g|@x7M8`9TJftYYSn%q3y6voF$OegQpBWyiBB%uX&G2{$?j~U{3c&a z1V0{(&;BUmo$Zn~@KiV1o!L8c&pr2^JM-u7&tCu*@Ipg^VczwmXni^|cP+nZdp>Vj zwiKQln37uuW+;Utq~L+MNxxeG_X~3xQVf|rt7Dmt<+ja@ojq<#4Z{peE|=zkaJlVU zEg5;6Z8tQf?{&C&=zBJAhCVkpyFN8nzCE=u49i^+6lRH2eNa+WhKY{l6!wKAjt#5B z*R4Z_bUk9Jk}%0YyM~vAE945pT5<3oXV6O945?MG$wxt<3}_fpvk3#E&~+qn(ZCpT z49TL}nyyn_-h>A`+~2fz9L|ufd$#3lTfR{Lu`#8pz_2hdy}}&jr}2;64kdx-ihXpq zwrXqDTIs!xJZ@^Z!Em8h8MSEO7N!_Rq}PzXaNEki)CGt%?pmul?x3LIE@j!%pH$>+ z?i;v=`^12B2>C{fVX|23hlsaT$52FBLy2L$$AQ!_P{A}6>oAlIi!uAY2CMeb>9$X` zA3ipbBw;9;)Sze6XBdj8F|e86(7!+Kv~HGV5IKdQA;W46}nC69db5PTc7j3(FBl#C_sa z=DtH>)LfVQtBw@}Jirw7bdug7Br+M*2l>57s}Je z$dtb!`-PSgxJ2J!+6e4plD^6bNaHfD(8yHDW0-9MQNX$KS7a(DxSs!x+duFiiFc{b zWbb0>Gy*QN@FKjau1}0d-gt2;$ig8Ynu1Veh4x47+cuVKI1+7*s6kYuQMLfL!L6HdUl zRg`TvywFyG-xBtI;5(uo2Etx%=Tv>K@wyviNU9y#%ukc3YQL%~4C5{C=HE%RhDSe1>>0oKO*X zw$LMYV`F8xvRZs=VglC;TxB?SQW?Ey;W}~*gUYX|Kza?GUu*+Joo+`fCT=2c;8r(3 zTGPGM`L`Ly3ae*i4dX6~1_}%#C#=*D3ni4PJo}+ynCs~6F;=BVK-)HzUi40gnh=Jv zPR2ZaV1@y5Mo7hAtK^b12%?gZ>nvQtWd^h6hk+wrNZp;0uJ5O`XojJhYnwGLhbl<1M>{i{az0X6)cc=y1$aU@{q)jc01d1FRT^M z6TyTsB)@-Ix}j&c74xvi2s5^;fcK8R+s Yco>b3@R-H~=I{hhX=W0pJ_~*R0>*w^00000 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/team/utilities/TeamUser.class b/bin/notifyz/hardcorefactions/team/utilities/TeamUser.class new file mode 100644 index 0000000000000000000000000000000000000000..24a55765012b44716535e7fd1768114dd3200109 GIT binary patch literal 11238 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/Configuration.class b/bin/notifyz/hardcorefactions/utilities/Configuration.class new file mode 100644 index 0000000000000000000000000000000000000000..35a091b8ac190b8b8fec59dea310dcb548cb4d91 GIT binary patch literal 26457 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 XQQ*(Wc`hU88%B!!8Tq{0vhMm{&%|p< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/IPluginAPI.class b/bin/notifyz/hardcorefactions/utilities/api/IPluginAPI.class new file mode 100644 index 0000000000000000000000000000000000000000..b11bb662bcc63a431219bb1a3be4c5bed90fd6dc GIT binary patch literal 2837 zcmb7GYg5}s6g>+Dfe?>6q=clU(2!yqib8pV3jqQFVjhiwmcCM17G{HxJhGfg@`w7h zv?XN9On*RsRHt`W#x{=0sQ%!!_U<|N?0w1q{QKA6048v(pn+k`aeaRD`i*{Ucv;i+ ztRutpx$6}4qR(yabE}{md9H8l+Ql4qmUcH3L>RhW7%vUoHk_QklX+p8K0|X}o?sYH z{cp~Bf_sLObx#?hDakF|>(At#uyWrzeVk#K3q#JGmzLwZ-fLaJ^bLVsCYH7W&pGSF zXLM*pf7D?r?vBp)nReV2G@^SxW^&kA^$wrT{0Uy_L4^ zYG^_;LuZOR)^_nUV|jZ<# zAM*l3YtHhoqBj})z%_2FK)O&wsAc#f79#rb10f==p&cCxh8dC}>NCjuuH_YY!56m` zR~L<;;!EfXMj4i>5^uWB5ziGpc|@nAal__sf~S>gTe{k$;UUHt+C3{rUMz3LHVPD= z?pV+Qvc2TqeEdMcIK#sb%FSZNwlqJ@+g8wX zDyA?iDr`ukU|vHjR0Ur%OoZTluk}Hmb!sb7Ofq3qCV5`BHZ&SzZv8Ca#&*u!nt`8>Zoymc3^b zPN*>MUMu&E?V2ZYG?Bodt%7+eDkxrWii*yYiJ?K74A*%z$t{o44x*}>iVQR1_})vZ z2n2CerX|AzqN?hx8;7dUP&FVKrbB9|ovfm!3=N&=3dB@qC&TcEIBN#2;ITA(geVnN z+AVsfwZ_HZ?5w;#M@9W$fKE2jYgmCQhAsVKVn)i9dPJ^N;&P?2C0CM1YlEPtwT({S zLO0=V)00m7;?s5sc6fo0|3L2s5|7BTEH(893QG4OErjeK)=AQ~ zjU9^EF0s;|CSSp3gbd%51Gr8`5x{8TPb{*xc$Q#v4R$RFQKA7>DQj!=B6>nuT(1ga zwB(lI0N)Z ic(5+`XFRV1{-qW?R2Q6qSqGf01t;o)k0>V%$o&UX5V0o! literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/ICallback.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/ICallback.class new file mode 100644 index 0000000000000000000000000000000000000000..7fdff66e59f4f118cb7effe25e57f69a77924339 GIT binary patch literal 308 zcmX^0Z`VEs1_l!b9(D#MMh45g{F2PH$}0Vg#G;hs{G!yf#N?99{JdiQ(vr-a%#zI1 zV*SK|OfV13@pMki$w^8~&Sqy|VPp`Tn*Y{7#N=+_dWME0j&r4-w(9-Zh zm$OC^3CSqRFHcO$NwwAtV`ShA&P>lsEGaDlYLwOp3B#?DD>%QjC^^+FGY6=Y5AGN} zkX?)n8a828NR~jHWNn8j#Ky?L$iNH?2L=X4pf^|<*noU?AdiWG1Bf}nEH0=BHvqe8 BRuupM literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/IFluentIterableCompat$1.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/IFluentIterableCompat$1.class new file mode 100644 index 0000000000000000000000000000000000000000..0ca55febab014be6602ea6d695b7f5015d19d675 GIT binary patch literal 1104 zcmb_b%Wl&^6g`uexUmf>p(Jg?qkutuAWWt1T6GhpC{jQ|t-9-CnoN>G&P-&FD}}ED z34~z52k=pd>q#Pn@G=XJ?&I8Z=H5I0_4~(907rP?qQvkWr^I=k)Fx7K8Qru(-wbm*G&Dngk@X*Br8o>Wc3D7{3!8_Mk z(idkkpVM~XgL#z~GxSz7sAZ$Ij_Sucm1^`>n6VxNc!rQRK1}q4;i`DMtGNP=Fz6~J zl6K6~RHWFU7gnYpjjh-7XGT_uJ{M~guafni{5H=ykOCb2LcGk`&=R50e z9Vilif$#hRzJdfI0tuC`{3yiiz1U8CmV@L-m-Wuf?lbeu?Ck#Y?;n2wcn43@NHA>K zj*_kC-@J!y7{>-0LwymD9RYeJxH!M+hI$f^PNHJVE z;78oFxZO5CYaECsNoN=q2GVE^Lq>+n85XOf21SP1UD>v|>bZhpDaNE!+bV95-AqZ^ zQf)9?&c#?2^L2*nahhPgR;S9&p2#AJ3kK%!GD9+#ug`+vqJcCr4CkxT7N7Py4dK>w z$P`o6X>zO1U8(1xFs1gT$FNhK3ZoR-rIRSnyAe`#IuH?ssg~<>7`~39shFP*7KQVD zY3spIih>d;Zp5L6$(asx6z0;io~>j@)TJjWYnwLZiTkC_ur|eE8xi{}-v5XtK-c}jb;wUH%Q5BsVznahOD&9PN%DZ9NWt6k4TxqxI zDCP1)s{&~;iyR7R&06J{SsY*}j zo{^7P*FVmkPEYBpNgGq^y>oW!pv=>F#BgggGqC^+*U1t$aO(mqAOMtk^h)&O<-n5sbR}o_{ zDz+`$vc)}5c&QaSmPz_vqA#JJ12oQ(VFFpq&^QN!eg~3sm?uet<_Q|Jh2L?$u=X1k zexX?si}Zhv)y4GbDeF zM(qP91V-bP!rx#&k}EI3euD8QmcJ;FTPr`4F6DcqSCO6Xi4p$RQEC||wm_REuYjBM z(VKDpahk-8E{ZqF_0!Ogd>xP}{ECHR+|p1%@B!575L6}%dH|&*I#fm-cD*0q?Gco( zLXr)QvUUvf823&i<%Z}r`t%y~@_m=~AJD6H0lixHp6~yCyx&LvU?Td181(fq=nt_m z7X2YU^wB@UW*`0I5%d!bzd-qP-1pAJa0*+*a{}985$)hH&F2WeLfz5x7H?vs39p}EWzjLGA)DK-DWRF{SE#PU-3!e zgO5J=ql{-~YrANOCMMn4?=pM7GiSb;e*f|1D}cMGTgVC2JU`Oyckk_O8EiRzpxV-j zwC{y>9BEfaT7|akY2z7Z<#{aM$YsCVlaYl{fvFw(wky4kz24eUP9!i^)1Hp%0wd+c zO@Yy6e@hiGf{7yX7!x?s(4Jb0yDb%L$d;=FW*WXD-Ax(j#P0`3qir1u)Eoc9u_{pP zsA#4AB2c07$nIIWF{Hfg$}p^E0?jDUUZ=X)aQv>_@%@ggY?@u)vs*G$_IfXoN4mtF zXzGq9qd4FKbZz5t2IZ+2cWWCP)q1u5N3}Gbnf$LM(+>+cienaL1r`pV$dx+2x5drl zJ{D2JacbafE9do^AFai%D{wi>D&00Nc_>RiRKN+GvT#!1@GzIGt%%b&BVfIeZmibZ z0{60j2aCENrCPu_%v(4waPEM${F1wf3%Dqd^M9{3ApaKtQ|nR@mvMy+DqCqUTrB^6 zqb)27To^K6ab4As?o!Z+yKJbZZyjZNf(@Z4jaj_FbVkio4}rXqE9v$jT7UC-R6AiFA3!IH~ghXThW4UFRu$6`8x?@4+SIE*8lHAOpzX#?_sRsud(*~84MtI1H|IJbwh zyQ_Ox*d;;%Gd#v+j2iqBDS%d<6$->XO4M26CiTvzSg7DCJ)+_ot`lLF-`*hM9Bwk2 zvYO+pTl8-8A?K#W3KO`)%YLNK@E-0nH<=^A0~+a=tbB)dE=g6s!K!?OmGItWAZ3^; pFl!i<(usJ8N6hmRJf?kv9JID literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/INameHistory.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/INameHistory.class new file mode 100644 index 0000000000000000000000000000000000000000..f70c802a53f629f453cbb0e41476e3e8e133ec86 GIT binary patch literal 1757 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 AF#rGn literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandWrapper.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/command/ICommandWrapper.class new file mode 100644 index 0000000000000000000000000000000000000000..98fe8a48c08dd4394d826f0103206c659eec1973 GIT binary patch literal 5927 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap$InternalEntry.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap$InternalEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..706d784cfe4a00a362c2d8f1d7d03f6863c2d703 GIT binary patch literal 2517 zcmcImU31$+6g}&Y*m2!BxJgRNM@>l^f0T%iQXn>lU=o^1XbKG;7-l*s@-|WHNFGV< zG`#SKcz~HU9bg7{=5O#nIz77*vP_y89`J*uy?4*vbN8OREC2QM*WUqL!;KtL0(TrY zu_dpiT^nF=CE~jaoEQfw5kscGjh0q|J*owoAyXkl-_hyn&bLsf5e$3SOnf01>?! zDdH3^j-e_Fq)|mC6{1Q+3A~0&aZ<1Aq}J$Fm~8zK&i}+gn97uPZfp85NH(HZR3lG? zmQZaRhrMzl?Bc(}e(@i}@|-Z88Ywa)sYk`UstLX(VTv>P-%$VN3EudF<7Dbx&9M+- z;>zVCq0}Zua}`>Q#JLiAggVlU6-xIe-r`(Nx!>kM>3Aoio@qS7BFnb;3*JfLN6sV@ z_%@NiOq{?Bu2V!FbE3lp)LexYDCBjH#O#{7d5BS5wTNrF-uM&Z81E^XlJTWGT&h{9HVvW5^l4t!+jLh=wqzWE|VaKPw?rK`g5_) H{w+KMM2A_W literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/utils/IConcurrentValueOrderedMap.class new file mode 100644 index 0000000000000000000000000000000000000000..e1d207f259ed697d755643ecd7eb817af1410154 GIT binary patch literal 3662 zcmcgu-%}G;6#i}!2!wzLf`VEor4~YPt<}n}sx)e)B3hyGM_cO>7Fbz!)6K>y{tJET zL*M$|S36U+)R~S??M(kB+v#`ihE2i`?Spn;lH7C8x#yhkJLjJJ*FV4g4&W5ZNyHSc zyIx=~Z#*v(@9~tzc52dEQ=e&7ka4aie~BYW8&}J2>M8mhYO* zMK|y_rWUSDF61ZA@=u}B@w~NiQDLwqh(d&#Q3a4NQ2+b?pe7Ff*Bqv7*AC7q#D|9S z3W=PzWTg;CcN!h&OyZD2ri%Zr$<43X#aX))ken0_qPrOihtp_5I*FqS$6jH6*(|LR zpA?RSru}K`L%Z;9yVhKJebMq4!lLMy^$MnwH(4kwl8P`9tlA}o8?PNS64qVsaHF{8 z^v-Md78MqmSg``4J``4q?wMkc`zg?4qVrTIU0^utx55GbAy!b)kkgZB!!6zF1~ao!^Dq8mww+YEOh) zhQcdwnB^t>Ov^>_vBJoIKRPdEc_EFDa8Y6G<#xMNenr%RPcW0j<+^#pJ1C7$afJz+ zOQgGNm(z#ui0Rcd=0va2x7NJ}oFwrFrXww{8)X}QWVL~F&}VJMnZA66&GosQ!lr2` zIF{+lxwq2Dqf;`x#iG?l3`$}DR?*6I<+PJQc4E71D)g>Z$m-zEnbUKl><0F_mA6Ya zdw<$x2by}CEA(pXZw)gN8griOmK}#o-NRxMX5HM*d5*(tMVz%r7)s(insl;TpdI5YgOX-?XqMn-CqEDH&@S|%8v~Sx zJ05{|Fv#zB>m@Xe&^NM)ObpLqT+RN0RQ3tp|B27TN8C2F=|T?-P%gRk|4spampsRN+b3HJxLhnlbEC> z3yM2ofafGY6{GJ4YR)`^aeE~D6zAu3sH2<6#U<8>L{H*Rv{Tqi*`*k6szaEK>t#ZH3^7COvJ7;LSmlV8qPy~>r_U`!f}?7fulIV6i@0jLpBGaGzTL#yLYfDS|OXVx5Z`? z)C&xR5%c0?+)~>&`7J5yxHd@-B;-xpR;bo=n@;8o+hUA?jq8BIdhVlJig4dL~J-ocC%S|nGI)X#b%Uo3c0PBk>{|p&oTJ~YkQhfbzM7l XD^PeSa^1n;z9HYG#%5hZ0aE`02Z@RY literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/api/utilties/utils/INmsUtils.class b/bin/notifyz/hardcorefactions/utilities/api/utilties/utils/INmsUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..63906f75389d4b365abe83f1e19303bdb01d002b GIT binary patch literal 3299 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/BukkitUtils.class b/bin/notifyz/hardcorefactions/utilities/chat/BukkitUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..04a3e6502ed9ff3d12fd05a8885ef65fc72d8cbc GIT binary patch literal 12586 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 srqqCn;E6Rggtjbuu!lh8c&%Wqse|V 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/Color.class b/bin/notifyz/hardcorefactions/utilities/chat/Color.class new file mode 100644 index 0000000000000000000000000000000000000000..86fb92385272666d20d742f8b7cc30927f9208e0 GIT binary patch literal 1309 zcmb7DT~8B16g^W4+b#u4DHRnJ5KCJ=77#yMQ9?qZDfm!>k+*5Pv;$?A>`smNQ~U$I z>WhFT#%KSBe?z=8ZE2yrm~3X|-nk#=+&%OA@AsboR`9|=fMMQorPw|CXjQpaF1en) z%S%$Yj&Ieas0k@--zrtPwAS64>lp|#MECf6Zq>L`v0fMV?2=^Y%LzxwRfe8adYd7* z?v`y6JqSn8i#~>-ym0KT`a#k5-tc10W{Bn860dD@PbjodKIf!-`^L+lBjB?5yUadFn(TmttM^Hp$__5 z5hSEDsrBy4S2Sbj70zLuCKcK+>Z%N8JJ`kY=@}Z2<~EJ{U&_C7-V6f;$xHj2{IK~H%z|6@O7@0OkHyrQTTr9IB$4c)2Mk(C zR_LSEAj_hi(cYUmM(8UY0x)S+*FXsUv_={Mv=5LKR)ZpsN?xL96=y_~nG;06(6KY! z>_|6|z%`vdhU*k{L&x6KWxkOeBzyS>#@`*|c0O~8I}BT&F*bjSdknuYyE!{|0(uGGsnOd7*rXqEzTASGjp>HiTvr81D#bW>Qu zd&Uq=riu)8S$o4!(2Uj?S{SsNsPm!nT&Vo5St$!kMFQ6t8q0>aV7VT*bc10$nX1k1 za-58$(5|8boeT|x7BCL5Y^SWPSGKo>rv>uE^VLcuO*_>WrZaI|XXxhEo-jw_WabZ!>OAYs4ZXRH0DtKJqUgW#s(JKYJ;^>AvB5KY#7HN66ppV2w>6(j@ zQgSOr4YIfNj!5nPN*s+)X#N3i$@1Q(@3 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/Cooldowns.class b/bin/notifyz/hardcorefactions/utilities/chat/Cooldowns.class new file mode 100644 index 0000000000000000000000000000000000000000..1dd9c1e59031298c29e8075cb3019dee35123037 GIT binary patch literal 2885 zcmb7FZBrXn6n-uN0$~Xyg+gBqg-{Y~m%eEWSS?U&XpmY;Du^%3<`T9nySTeS@T=1q zXZ-3Ho$(Jib*AbJpv@W-h0n^Ud}l;fBo~@?*MLKJ&HPp ztCsB<%UfTlE1FZ#ZHF&wx@XvytCl>&G(3a5s=lIm>bPy21^aW$jiR36#8YiUQ%%h( zsxwPZx$ZGE>GA}_$(+9}GN|`8cV${zA7N;oHHwzzl^o8nSbJhLSn_kudX8ZgM-DyY zXP%qOPRJvEP|l{1JM<4T3h1IV{OSK@`;?SYi3?^4DswQ#t=ap!FVf%%Wyq+Y*&eNTz9zU z@v_kjoddO&r1OIASq0~Co}opzEl)En_W|EJa6Tx@NO~cP*BCBV>yo=SBwye;*iscms*B%97hag(9z zpig5Z!z^$ohBt9Lid*}}GRUf67}Q$P4b3d^ndSc`EXl;^g6M4m%}-mhU~@M~4IQ+C z*m+06U5wGRXzT0TDllArg&tXq&^$}JBO=9wf_s>xN%iailA&XuHiXXJ$5a&A{o1x% zkFP0sfE*39UUD2V?6I-Nrw!8-14u(Z)j+o#y&^AL@DPupc%QoaFpCw;;xUaA)pX7> zJ}dDoiAt3DR9hm3JU)ox2@Pwt7UJF!KF`y|H!u~};NM8p2;0Mr`OGff z*uiMxt!=!$jd7uL7w?{X)`4k58>_My{1r0{J-e9Oul|&uxSJTAMha)?x;{sj$a$Yx z#&;$wnGrk|@S!g>i$#1yqK7EzV|+rYq(3R*{V6ob`)f)d8eyX1%g8}Sewk84xpsrh z%Wq@poA1$3|2*=X@&pA7OiUt4?Kn!G!o*VnPKD}(q$+4Nfc=dzBF3>Si4`TW-a}D| z5&x<^^3oKzLEi>erATr=nUtd6_ON~AAIv+#X5Kss}DztqxMtr-uM8f1vHUc+tb%BthT6&}MO$0J}V KqGI_%?0*5`&ZtcQ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/DelayedMessageRunnable.class b/bin/notifyz/hardcorefactions/utilities/chat/DelayedMessageRunnable.class new file mode 100644 index 0000000000000000000000000000000000000000..fbcbbc09b7c73bdb391ca817cc6b2f3850416496 GIT binary patch literal 931 zcmbtSU2hUW6g{)7U||cELanV|wQ6Afm>1t#8>7YtgQjU4d>)o5j4ZRw?5qj?E0b2E z5B>mul=03&BPx9|B+I>b?z!jAIrHP^x9Vc6)*^-FD)o$&qqY=@yVo)R$BJMYB@!DFEZ{LmVu2XtKARa)6ShJ)7pl#@6c zD9v-gYeMbk`ObXHpG5!8Zg&~{7fD~1QNVJ5B~%#-t#)?_3|9hNLeWL_03}>5Q`891 z#2RgEGJPb{5yR6(JIz*U&+qcLNDfYyt96u?Z?kbvnj9$e zpYryr^j)JNAb=0&^)jmTYoLa8s)o}6xP}eNXcRVaoyNP!QG0ph$O}}xLC7ifE}gip jYIsVlr&#%ln;w31mUHAPu{Cm@VA?(7VYo|J5BGin`yc87 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/FancyMessage.class b/bin/notifyz/hardcorefactions/utilities/chat/FancyMessage.class new file mode 100644 index 0000000000000000000000000000000000000000..c51a8e512d116962784cb0b9219f1383394cf692 GIT binary patch literal 11771 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 Qknv{XqlELE0tE2lA4t7VEC2ui literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/HoverAction.class b/bin/notifyz/hardcorefactions/utilities/chat/HoverAction.class new file mode 100644 index 0000000000000000000000000000000000000000..5ea0e0fc4490faade42a1d4f9af0c52ae4d92875 GIT binary patch literal 1606 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 HhkyPLcAsfY literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/MessagePart.class b/bin/notifyz/hardcorefactions/utilities/chat/MessagePart.class new file mode 100644 index 0000000000000000000000000000000000000000..d7af8a1ea0d3776cefb0fafee9d9321bab522124 GIT binary patch literal 2007 zcmb_cOH&+G6#g#LLk~j-$iRT8_{ejZA?XB6OhNz&kA!4^C)cWRKB!Ox+I(G*+YSidz-vy7Nyetxm;r z)<$&z90cWxYnQ2SSEJCC>$b98 zR3PDC?*Z-8cm=PScvWDiuDbs|5DTy4h(L46Eqnfx&Kb=eG`tjARD{PZoWMy|(AT{) z_jd*UABgC+kXLS!Te7n0s?O-MkVIn&$uw-7HE~9uqmHNjDNynC^B)s_uC3FY%JU}9 zJu_T!%UgI;nKeg2F}Ul7W3sBfUbJ8$r4k=h5nUFzlDmCSDpfke7MhS&(pwgqkxt=? zKw8h{#FpzvDU5TD;-?~oyo%teg=?y^O|HKb*HxKcw_wFUMGJ=%&@N8HRFuc6q-*0%DbG zipyhx^@~NBKC^Wd+mDcAdPoO0EjRSkvmQ)vF4znmchXZ&LtEX`d0HijGbAR#N7&?I z*YK<4l-^0Z-buRN$)4WH9rrf%{%~*LYUN4bFr`VJ)lEA89WwdCLu9|zI$iv>Xiu#$ zsNF>E7kJkhYoi-4@EyM-EhGDmATmVbb34Y@_`g&lMiGN3Yk&DDxYI9{1AaN6R|u(xrRvLz_%LYcf@5a%0bgQBK~U?yF(8aGxmx zKjRnnUIL1w8MO18B|V)as0)3hW`JZ2l8#aI;41t3J<5`gSAZk<97pj5j^is%^A9+Q zAJI#+Jbpz1zu}Z7`I;{8?mo%8n8&;Hd=WV;u-FYmKY>N!CNNCATa*lXI*i*SK1nPC jckn*-KG3n5eUH&$;zJ?2|3I?8f81pF0w3{b13vx>kc9!E literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/chat/Text.class b/bin/notifyz/hardcorefactions/utilities/chat/Text.class new file mode 100644 index 0000000000000000000000000000000000000000..b7772326978ba50b90763f32998ad9f3df752f3b GIT binary patch literal 6877 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 HTvfjY;gV|A literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/cuboid/CoordinatePair.class b/bin/notifyz/hardcorefactions/utilities/cuboid/CoordinatePair.class new file mode 100644 index 0000000000000000000000000000000000000000..fe4c703c3e9475db37ac535de822fae42cef6f1b GIT binary patch literal 1757 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 aFlN5Snk>8huuz93UJ?aA_sOq+eD?yt2r6!L zXc#NoRqOH22ayf4lF!+d!ecX6we0eCq*k>`R@EwOM{>2SZRH~~ip^S;f|78i1!{G+@!wodT z4IB!W$FIdT9E&BF7XvF(iRGA~VSMdKVS2`MC97;zCp0*M{VVi-#?BW!==4Fuc^%!j zpusiX6geAA9Aw+5R;==RG~U1BrR+r=op5>J7I0aITYyKv6&)S{UIEv1cm?o_jpgn;WhP6#+D;HHj~aLMXT9bI@y!^wnIE+lK4*+M04 zW=jPPT?sp9mR8J)C0K3x;J|r?THUa=Svq@b%igxCl)V+~KSDMoWz#zRn4#@p|5{u& zVmjtba_sXVia$Bn9)D=wN_O*cW%jPyuJdx%GFyraS2)>=E;)xxHZcVTMqnw5&Vle4#WG=$n4FqM76dmtKb>&ey@ zo02J4E~Xx9NVTgq`}Sy+cA%gm3);TkZhNL=Zf{519NItZAUL_DSUU|H(krK=NuKDq zk2N>g9o+|lN!zI9Hs-8CDIcp;Y~Gfqc6558V)9QD(*rYrSk%YZZzt zwmBmwj~}5{6Vb_Gdh6ijtxukpc?ZZj>WXv973Y8}&e>L+W34zRT5%4u;+$i}Il_S7 zC&?i1mOg;`5SU!g@*hM!C{5o@HZq!6uRN}D!oy^???LKsH4ZoIP2&&GM#nw z85vg{SB;Fjj-Zk8)G=UW{M-tYac`K6nc7yK$mRDi75Wyl;jan!yGN3J zFKL8ylO)Gak`ko5q*>BDDa{af86c^L)JqyBg-HXXAZdg&x=UGy3M$OILTrzdPx9WL zWrgQi)dbGbayQbrNDnUK0j_Y?uc?z8G31*u$ho|G#vQF6y^Z5eGpa9}QQbKd)g-kf zD#=2SG)NjE?MGP00zJJ;S|X)ME2Mk7+JWzV>_5>QLYR8P%*+V=8)Y1CGLBn}W3tWP zJ8k}Y;T~$Z%g{O3O=oYgNK(PGb&O>e9HAGPacQDO$AvvS7?gt>ozN&KzwBy9(w9Z9 zX(QAO*w>|n_K^Px%He<1^Lyk=)X>w?JXsR*MIGyzpW)nH-GlYw2j4=7HDf#Yy{WJG zABSi_kgJ7yi8@;#EU(-x)I;QKfj)wLrBRXdwO$2@JS{LRulCVZqNcsfGpz4&2>k4d zizwm}>o!0>i0jOJ5n~Kxj{G+J#vo7QAv>lBlT;?zcpo2*<-@0^>z-v99qz-M@@BPMXK=7-+X zgF}1Q2`XhjaGyHm(DQ3`yAgU-FZA5HU2c?ouVODLRq)G>+>j65zzO|8hbGYd%z5G1 zRj0ONua=&<X+RR(3bp)Yaot(6TP@15YJ>c zQV_UmLPt`fArmPW5{;PnC_>jvm@o`{f}1*S2wXh9bTOfcFdkx02*P)|{d^km68^=CqtjaVSM|hBT9Meb=e4xXn-z$N7b|&?)Z~o&8Qq zHMQ8E$)2r3r*r0XJP_zTQ~u71fn|InOY*J2m2)b%yu2*Sm#nsXP#}G705(G4KKEac zGUGwB?Cz_M*0CZmep<6fwR&TJ-w#5!vbryunO*(wZUaU13tZ+EPESO=J!i12Kbg3X zCHi0U8$sE9=*jvFp8rH9r3Zo3nzvJP!bZTIcR%zRS^o1{=Fh#|!W^zMgE&V52K$FC z%NN}v8&+wytI}*%rP+T`mBi- z2CShL2Cd;1hOM;L!l;!_3{~FXy0+cIxRvf2?o6^)T2E`8*+hIcX~kQ}NnuMd^_z-1 zLpjSg0>;!BGlf3BlYaRyF~IK@u3`p*Si}(9V;FgiUpcBYT8ysvO6}5fa+#_-k&AGjY(dJakhfYeo**$u6or;s%XuCQ8ZpJKjg;TzQM- zE&3bakYT2_Us4Wp*b0pj<+fj*;9LV_@0%E zp+Kv~SyA0;y3JkkEs9$wSpAc$u`~3{o}nihMd)56D?hYZ8KagoCamA_qfGnkVWAF7 O(qc?n%5^+adgC8|0$d{i literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/cuboid/NamedCuboid.class b/bin/notifyz/hardcorefactions/utilities/cuboid/NamedCuboid.class new file mode 100644 index 0000000000000000000000000000000000000000..3d42a914bc524acb231fc7541b02691009107adf GIT binary patch literal 2990 zcmb7FYf}?f7=BJ5*?_CWNKh-@FAWJAp?HmA1+}G(*b0?ed)p)ntcGm5*{IO#hyH^8 zl6JUYv85OT_=V@y7bg~ zZWU@)eW5Vpdrp0!sF1kf)E$4ElCq`UA{U1q5q#3E+P&z)9up?^DkK+df6n!4RfYcS zP|5Wc3gy6O=+up2IuIU816|45h@*J6m zi{1XB(^R;!i|j;7#tg?@f6?|7Mt6Y_R8E{<1er{4jYQ$lrua$}FFnMnND?kc5(*0E zw>OI7MLb!)T8N{N+17}n<{hu;vv->1@zi(!7QHRzo*N&y2HBxBQmJ%wFv< zxUsbrBP$QePwk3d91kP8Dv^vO5#NI%ZW_3uuvd5TI-QAe+*0Ub<0+gAsdSr%NJCq} z4ct~pb#90rC`_7&BSE+&t07&oiHao|kaTTy$#P@8Q!Z^b-C>LhJx!Y(S94aFsQuhA zorG69*LH|3T~IRdKBgpb(ocGlNW!(Ofsk zL~9WqIkNTQm6}^8z%@p;^Ft@Ptt7TjO?-mK3S+xMX>YBh?*@_#e6Db?GmwdvQ>)ru z5?`|2BGlJU^x_G=mY$rIb}5^vNW1jtohpX%-8M0g1#S_m(XeHUa2s|q6r<@4q=ckJ zfp7%ksls4(^1ls5L7!MJiFIA9r~cpifVd1K!4oNVb6h5e)CB)_F{`N5-^?o2$B$Qaw8rqGA| z8uejd-$qR#hdj}UA(x%zOvxRm!%NBa#t`KzZ#IT1BVKAcs2c8FkyHQ0&3ECM#F!RU&2IErc5 zG5%j7Tnv|Wkt(6qOpa2ozwH+c7VOo;L>U6_3ue2~E(Wnzv+)Mwg+8Qj5L zlH8-0bOIRV9lXbplB2Cn{DCGehs6E4HGEhiZ|)T)UgLfj=JLOG@SY;?X{4!Sqbd4B z-Z;y;nKxJoct6HNvP(BgK1EYpc!VJ6xP)HJYT!V0JOoyl!EER}PHU-XB9{--67APv z$~zyCmT0FW!7sv~WP65Kqk0Y`8Ti~As7@^-5iQBK7H;&={}(1s0$KbMPadbgSi@J0 z$XZ1;HN1*Nj-RcfwmxN^|87tgKYWv8>!&P=6tSz%JYWhmWr`A%19XU;VLL09m{e*wjhd(8j< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/freeze/FrozenInventory.class b/bin/notifyz/hardcorefactions/utilities/freeze/FrozenInventory.class new file mode 100644 index 0000000000000000000000000000000000000000..7d4a4066a2a6b0e21d4cece672ac1e1d5bcce3cc GIT binary patch literal 2412 zcmbVNZC4vr5PmKR%?nF`00pbXrB+Q+$%>+FO{D|^5(x<Fhqw*$loyOO8QKnpRQCRu2v|ThUsYO4~-1;aXX*7Bz!mI(ell%T3>wn!c^oRfO_G z&Cu*whMC|iYlpTN+zV!&`{6>r1Rt(5xPqZAA1E#f9(esk1tbiMlOb`FrrNv>1H(X4 zGkB_6%5rN%&FY+_lV(oUw^U0L`zF(E?`ai==+!R%7uHcf-oTq4++~;;TpHYE0Flj(4;UPY!D#=-#>ZV=v3_C$5FqgcGWmAA2O}y-TSLQC!BxD#K zN$ABj4`K}WuPm2N%{k22ywr@^p4 zB$HHH&cIs21o#{h;)Q+5Fy0k=TO_pQ1?l%+oaQc0^)|wDNJ&UzjiE2ERm!@0oKj2l z&Qi{5X{YUVW2FSHclEM{MK3lO!sOAmS(W$HLoR1IH{?ctle5RNDpzc^P>@Spw19{R zb4$Wk_?n869t8QB4(?o*!`F7yi*Kk?l1qt#d`w;uC^^$GsPWdfN1Cpalk&ys452t5 zOQja$BpmVLTZT!Z)^xSP<(7(V%4XG)H@I5Ll(~A~!}s{XgI$Km|L{;0P(|4ks{|EU zYBC#(vDM7lVr)fp!b{%W9P$!43Jkqj(O4L6clV<1Qq0(D?jYKSJ?wj+F-$lr(IMHI zD-sT%)BCJ&J3)oaa3`2>)}up(jvK~B-O=!wAZ!RRk?6c>*o|zrae3rLnOX(O#LXi^ zH`TnX+63~wqobpUP3TnwdXb!2Qu0j!>h}`0T*t7uI?|T^G|>DRN=S|`X=0d+w6z-( zHzE+lBt38!P4FK2=#|$gnpO07(TNXYX!X%9RhIy+htDB}?>@x<5kpVv@*}hc;HGtm z)&OY@qaPy}CC&}fBQ5%m(O*!)IwLO4!KUrMiO1;dmvHzu4Ad~r2B)55V*4EO876CZ z{|t9)h}7^=;1gPExc3bA-FS*wlAj$MeU7>9Gt8f3Ij~a0s{0Q--gX5tnHn~m^tOZE z>Ck8RPHbw(Jwwrjy0tNfwNl5L=@fi1>@iGZ96!-i{TVmwVM~pGnqf2i2&);aLVpo# auej}3B6Krv0DqMD&F)ItQW1RF*>C22=bZ1%{QULp2Y@GdWWr#0s)AUKKg_);4@Z6wiZSb(@9sl2|3y9|}SoG2bApu0_H z42Aq!Sy;(XiCZ)#AB`BAdE=>QyX^xSKS?AVyXR>c zoJ1{@wZ>fs_cUQC6i2}^O{@THVeGoX&UD_D|q`LE}@3UZ!s?<*}*H zK^;}B(4Ld^povwg7%t;V&bLh(hDLNgqp|T7R}H*ha9Qb@OUjLuXEnp-Jev15?hq3_ z!oM=EU%z{YQY C9=%!s literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/imagemessage/ImageChar.class b/bin/notifyz/hardcorefactions/utilities/imagemessage/ImageChar.class new file mode 100644 index 0000000000000000000000000000000000000000..eca723a86aca69b57cd4746fbaedf97f833ec550 GIT binary patch literal 1474 zcmbtT-%}D%6#lNj!s3cTh50M9qyWv$Qp+GlLrO-FnO2!$dZ-mwT!$acvN%J}J@i`r z8$A@(=+xx&+#l6+?iH13>LqyK?04?D-~G;a&;9x9>oI^iB;4p>Sgh7;bEo-A-PNt_ zV$Cvk^rCIns&%ztn`P5Bjk;=9^pa6A>U9cgnu8=&yWwQ;?dkivTGp#2HC1g?7+jAs zx#Su{Ec4&QF$V9-^3%2F+UoL3ib2VyR??fvvaa3*Wph6gS$7%nKdh)WDoyj?OF&YZiU*_K%? z#nQ=0UZ&zf1ujS)xH%YB;O4-?!I%OM2Qmj&708hI*EIzS`WX5%X4P14RJIIjL*FVJ z41r9osF(A)WpXT%UN~@r%el!A{F{ms5fKGm^imi0u32YrmkgU-jj0(=61fnh#f zgk3azKJ?T60Ya|{^WTeaV1BK?yh%U9@KwH2*W-br~S zIyHKTP;~4I!sokvqHErvOkH^eLr^d(h>Ct`r|8&0d{dZiv#JysvAUw45&j^K=QJ~NkN-N#x2ZHhMTlNCULWaEld>F9MR)KoOhdbj2uCo{`dzQJ8Mg(;aX^OL`ftU Y;0>_o5$^o}`}e*cJP@2Q#6^7g8=oUjxc~qF literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/imagemessage/ImageMessage.class b/bin/notifyz/hardcorefactions/utilities/imagemessage/ImageMessage.class new file mode 100644 index 0000000000000000000000000000000000000000..3544dd9fbeec0ada050b320b6d79bbf89c70628c GIT binary patch literal 6440 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 W?6RpYD_gAss+xk7GAY8P=KUW!PyT@b literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler$InventoryState.class b/bin/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler$InventoryState.class new file mode 100644 index 0000000000000000000000000000000000000000..7dde8b0424cab58b180215dfdc38221ff56eb748 GIT binary patch literal 2241 zcmcIlTXWk~5dMzub=2B5P0A&06A}{3cB68qIB9Xylo;$b#7Uqn3@G+#tVWT7BzGqK z3tssFJmmpqXi{K?fmePL!>}vKY8rb;AK<~#+4b3PzrE_uzkm4+z+3ntjhH~ovOVL$ z-ZxrTcRFp`kq`8?XV{jj^*qBgJVUygVLg(TXFGdZy?{ju|S*AulkpCB4On>QqrZ zku3WuD0qRb^JHBk=1w0X3xQDu8H@=m6;H%E@d8JeYZ#Wi-P_re&YHeyN`XSdZtLcT z?iehG%7oW7DBJ6e|DnoMp;J+32+TZRX--ixE-FYOMdo3qdJbzR6{K04l3(|9lUR=y z8^?R7s@~&lzNTOXQ`}IxwZyksc_s@L-zNwgk=<)gz1oZ8eP#1kOJt8mMpd46`Gh z3~mTqi3aA`X`YMp{xlc+Q@fDGb=>4eCN9quCv>T9aC9FkSOzimqg#te&JK-kkT*N| zSV03#-T=G1(&`9YKH3U>Zv(braMcX%P;*r#g8i|O!6%eEm4RCd7H}<#IMz818YHR- zJ+m!ZG;Mjy;7J;f;y;!bPA0`ww=C%_n!4*sH;wxOH~)+2q6Uuq`gz9$HFca;bqocb z7djPqLg<~Le=^{q$&ys3TQPc{EtP-9hyXp$3LN6xkED#@JUz4ig&E{Aix){A3k>iQ zUM7i5@e0NXjus2u31Br}29l+paN!5K6hNg&4P5kL6#twIVFXXe5aWsGGkz6Qq4Brm ziUY5eOWz}z*f0M9@g0)!{qpY+%}VJ2)4oWD*$VxhpxBq^NS^D~F@zvBAcLhTTXfwNl&_^5E39wd@GUtA&a0IUC2wQ^K)`l^L4nqfS-(jnGL y<;S>CsyxQT(=+NA@2kk^`Lp literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler.class b/bin/notifyz/hardcorefactions/utilities/inventory/InventoryRestoreHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..921b5970715fdd4f92e0e8d33e193c80e2749fdf GIT binary patch literal 4666 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 J5%nf~{5{*M@(cg~ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/InventoryUtils.class b/bin/notifyz/hardcorefactions/utilities/inventory/InventoryUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..bc0ed948a335d22a1264a888bf188e69caeda18b GIT binary patch literal 5258 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/ItemBuilder.class b/bin/notifyz/hardcorefactions/utilities/inventory/ItemBuilder.class new file mode 100644 index 0000000000000000000000000000000000000000..bea416a1f40fdb51967304e176221f4199b923a8 GIT binary patch literal 3846 zcmbtX`*R!B89i50yo$Va5}71Uq8J0gnTiWtyp$}-?8JOXx{0cK*$7R|dVWxjmr}TWgYkB2ICqpJP^6tIgJ>U7x_qdyX z|MwsN0&oGV8X^i8ZO654t=!2k7>!EVX_&W+vTHeZGv9Kpn&nz%GjG|;rtLb7mHfDC z)<;`btztGb#1szRHkOTi&9JNa>!sUf*;UxrbdB<&!oY;nsOC$p#YM~AhENoXf-EGIk z_`rl^n^UcN$!y#(N;OjeVNren*FfxWw>;jwf-2 zE~}<1MIgeLQm6lpALt2c(?GRcWp2F zWGF*H@a&%&CzG_RFqqIWi75qb!Dx~-6=Pk`%g!@8p2ZKi!{Gd#Bm?tmQKngb!fLt& z4L6vFt;H*ihOr_$2^5j)#th~(%#!$)iR|i_$8%)awC?yG$Hnvo9Y4g6$iS#nq`t;O z?EQ(zxuk&-heo9zmb83XM+Jn7Nqh>|)6a#@KX~c|n4+;7=Sg6@5aioA?^c#JXWpr8 zwj(=fT`nY0gRP;y8Jj1urzYougC!YOO_5IFbVp#D!fbO=kQ6p_G{F-Z%f?S(Z%{8= z8I(5b-9;&$GVSt$A+28O7>&WQOo3+ps&6ANh4BYyEJ@&sj%D0oBJb1P`~&!7(}v=p zsMM!@!-jS`Bjk--GnY+H_LuRhhF5rN+{ZB;zm#g1DKTlhG~ojbR z%g1^21P=23h;N2NNb-#b(2Iu%B49lM*fqpFr}1nq6S?P#ZX>a>S8;M=v);sF{+ zu@A@SOK^_|xX0#wU8wJZDRfS9(R>TA_|q{YdE8IomGZg36adYY%H}rEGV26m5WcYj(+1Nkv;#@RW zTtjKbqZ{+I>?cv+27hmo?kwrf@qZWdr1m_f@j^(`**5iA-14ZWsQDyBpbPwxtYCo> zSVYqqi@$O^Q27G(CI5qCYD~k-mn>Xg?iVTfjOflabgV_VrtqphBufhzvyF#^ucx;3F((;drJ`K9pWhb5q}Esio_Fn`XpVS`_akc8vZ;ZE<{GZUwS-w fSDB^1vk%|*JV*iYY~VrKlpWH`#lP|~g1`L_Gogw1 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/ItemStackUtils.class b/bin/notifyz/hardcorefactions/utilities/inventory/ItemStackUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..883aa99238fa2301c95143e119db2d2b18262d17 GIT binary patch literal 21829 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/Menu$1.class b/bin/notifyz/hardcorefactions/utilities/inventory/Menu$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d6ddf9dcd0b33aaf989156286cf754b6b36ea883 GIT binary patch literal 3236 zcmbtW*;5op82>fQ?zl^fD59>3qK23S#1RjSEKv!ftN}zpOvu^nHoGIk49 z`+6{yr=-ftQ>x5C)KsN>@*)3Hs*-#&!@9F2#<1C{otf_buKs=JAAjBY9l&0ErJ{ym zk7>F3)cgglDC~UBvgMS>xw>UKn&;|f3~L6hoG`|Pt^4c6 zO~tNN>a5x9+^`Cfqmk_3u#6SF)wZ3o^2eDpoM{x?7Men*j6ce30#8PZ0C3kX@+{@ z?(=M$P|CV;=HK|~c+?fS>43kDqa8cQF~omLoF6qTH;9O=Z`w`{4HUEqI_wQngMh2F zD-84{tPAN$$8PLZv4>%E1cV5E$r_G*=weVw)!6(jh2Q#0MMJ`s6p2PAfydFU;s8Tq zL}KZfBZD5gL2vdHLsQf_B?>a>AP%cI#L&6yT;%A*lME|FE+?HJp{vWti8>s?Q5F67 z#ibPe9LF#a;xa5|2$!{lOS%4xy0&f>f;%1OcnX7M<2o6RRaGvQ5=lF#@9&BfiFGI41CH zStCVZb?yqX;dzc1@FFFuL#ZaroHPu-1}N!?)^T5(;Fv^?vZW}TQno1RY-07#HF%J_c1utx%B_QL`^jo*vqi%KiwhH zPAP3?gFeKtv4Xb(T7sVtW!MrWSqfvy1)TuBKjmGtiP8x=4a+hx!LTDL`$6zi9}XHA z#eOiAsQ8efEm9O7Ab`5vsO8x?c~tl3oPtvttP_?)4R zQocOQQ3^zq%^F@oH?<)1j+2m)U>%GqJZsYQ*JlXFk(5Bma&Th{jbgR*kAXEb_!Ak; zr8V?VAW6G*!IWAP>?GUTe*tg%74_Exn$`4-6AiEjYv{>??<5+rmR3}Nv5xrGFH&uw zH%Vg`iASaH-`W?Dx{c-`dT$-3$D`c}JzKkC^z7)4r<6OWPbmxN{1N-Fp}y^B@EdsI zYbe({ZlaHH4mPq27`lqtj&L=)fHPMy*%S+xPd6lrO8z^XY$rL-`Fl;V1-x_>+rsmF zQ|tzc3oviP-O-U!nqsN=P0Ym?WnZ|1^&#Pfic|mkweYXsje2@^5or6dlE#5X96*Y8 zo2mI9Ko5N#q_TGi=WrO8sAGSFK3t=Qdy9Ih57|Hn#Uf+`3SPx!f^G$V!fSY);9H3w z@CM!_eU11YZ{ckyq~Tk@d1$h k6JisI`G^Q>@G(B2w?gK9iZAGE4ej}!^nWhxei={v15!P@82|tP literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/Menu$ItemAction.class b/bin/notifyz/hardcorefactions/utilities/inventory/Menu$ItemAction.class new file mode 100644 index 0000000000000000000000000000000000000000..b2bd82312af11dbdea29aae81d293827109f4c97 GIT binary patch literal 399 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 F{SUE#DKh{7 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/PickStats.class b/bin/notifyz/hardcorefactions/utilities/inventory/PickStats.class new file mode 100644 index 0000000000000000000000000000000000000000..66435628da63a7cc7ab6b0b8a835d1ae7a6b24aa GIT binary patch literal 3239 zcmbVO*>h7>82_Dg$!d!YNUKyyzep{TUmtYHxr)2^OQ8&*PKLtBa0UO>_I5|S54!Lw)pO9bZcHT9Hj zC0b-+^s|PvyG+_$KEqrg33Hp1nkzN5U=u6mB2Z$k zks?syV^KfW3#|BWp&)L=Mn56~3rhrhb=P1JNewq)lgxE&Pj7$U-g^(mx(@6)+AYvj zdiS(6Yr76xBxbe>EN-hP(mohs3b$+6ft>=OY&yZKq{{;9$}}nk6f1lbf=#8=QhG}z z9qH4}8ai={Kpk@^@9H&NUEqefGMFMeGA$Ra!ya_`aT`-!lA+>NWzrh&Skk%NBhXWmr<%9fApaU6ZT$IQ4P>_dG3cL+rC6Y=~+YJ>OT!-@RF zmRo8K>3%yNz#-0q{KU|7Yo*jZ z`KvAYiDB6#hh=TM7u^`Ce!_>hR5(Y!ynZ% zUb?xjj!Vvy8lJ+_USqP^#U>50kTW-BwEe_vn$&$m!<%xORCE8PLfo2fYj_72IPWr~q}8^R z^Jlj9>}KLneGeD?cwb;a(Sexd8Y2c*?g#jgIXR;zvqt~$9A1`OQ_xdJKi2RGK4qOu z%N>*k)XM>}S7TZU<1BxbS*{*cqFy~+SaZ{3)EjM~0Xyr&jeVxvfb*`srrao<#VQW_ zD!%hDbh$Knszm^P{tE>8v=csl1L3O(9lH$e66WX7)ELfTX$~vCN9%WF`ml!IwNwG> zalN8QlYBQRn2GRLa%(y+pB&2Sw#yAV}|x!63z;#X8t5}4}9VfU_JICu%IlepD~ ztJue2Z{HOPhZy;{X5v literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/SettingsBuilder.class b/bin/notifyz/hardcorefactions/utilities/inventory/SettingsBuilder.class new file mode 100644 index 0000000000000000000000000000000000000000..895aa882cec0cd6c4af68d330bcec6bccf994f0c GIT binary patch literal 3857 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/item/ManagedFile.class b/bin/notifyz/hardcorefactions/utilities/inventory/item/ManagedFile.class new file mode 100644 index 0000000000000000000000000000000000000000..f75dda62434820710670e7116b2326b98ffae1dc GIT binary patch literal 5285 zcmbtY349z?8UMdzli8h2+9c)Zwoua3T+PbS0=uQyT(He1txX%;7KO>~WHaq%cio+B zlZtrXH&sx?TPSGJ7GV(di@%!u}waYKPipl-LmSNFyBM9jBkXtxou1Zp~V^z?LZyJ{e~vs*v}1!_Af z)6x^xpdQZ}l|Ul|T*H(hupnehFq1whGayjC!AzLeMuCf(oGn}UfR#2Au|O!9j`@bN zd-j-?FBQ+m%!JQo-%KmE+Vep3AZ2$ZqlSt~EYwhgI)Tcj=0ODw0$Qmy6{q101*Z!v ze@?j?&ctH65;LqW-O_uK@u-oe|4q&14ydTd5~+2mz{&;5D9+a4fhsxA z(HNWM41zIcW~_{D_)Y~Y1^f*n`_jItB`y zRtR6YK?3VFT!@PV>Lbb2_%xcV-X`IYhGYs$V?dh+0h{*yD#lx?47Ygg$C3IvL%v5jX|Td_Rw>7pO4Ch~FX(N?fC?+5tU`t6}Os$ZoH9)B@clyyjk+L$+x#^c$+-Fs)pm)%!qXT z9U9(=cM>)rNIaS0*`B~{DsIPT6?~@9(CqV| z*z7bM#t~M&9*quUQ>ip@YB1W1^UBMK*%@VKZsP@kg!W<6Z+E6@nIm~{ES>Evv&HMQ z2=sNBD_?AJ0)Eou!(e;%97l31eS}olhg`piAKLywY-Uj@Ef=sEC(x zN$k!)FDSRexGA01$7L*4Jc5Nacoe@@@GIWQ?W`6ft>HKLEhE56I_ZY!T=@gdJ5@Y} zKPdRUz!^3#BUr9m!{heVPnMHRsbpXQKZ!pnI8GowkIRIfGJQeklD}zdP{W_`7w2$t z)&$lO0{^odrsYZeO~c>u59fBjx%ep|u$mH|^UHt|dhwKor=^1`VUq8rD*lE4DEK#H zHXF~*WIWEVB>9o0;Tb$c4~)^2WoLoS=~S6xCyYCVQ0I^olfyD_$t^~{{I)ipD%{vs zoy0P4VK~k^NgFWtQy#yWf^=xW?uJf5)|GtzwM(b4oEHUt(4hiLP=#vF6no~zb@H2r z?{cjM8lSbCJxnSW$IUGhSkN+s`fytgi&`h(y$ffx+=;VtSau`Yr?4Vi=bOZ;3AD84 zur`Nt<>n;T9YlRUSuVZi5!;KFVHZ+i*7ZEaO+eIeaeX{t9fs zN?xbepr14?juqH~t(?&wycpXkNxltWJN?-}dv{=vGOyt38K{_{ib@4S!D@waIri4l zM}DS|`X!`sk-t}ZS#bls)Bq6>eWHH~;c$a!$zj(W&?gY{yC$*QUnTt2!mmsr5uQRS z%m}2tRTIei-BTC~d)+qee!r)_5%*U4)q|+@dc11o=`}gL((Cf7IlLykzUHQxC%m49 zH{|dpuP2AMc-@sbyxr@rTbaYVy_9qy?DAIS@V*Iru&yqL4^wImAIsrpujeS1NS<2{ zqQPG+r*3=dt)BL}k7B^<&f(Js(d$>d)yJTE6@N8D@2&PKH*>}zheMLkZ4;8~SqUlB zbrkJhR}Oa^#F{=ibKA4F>HfB3aIfv7hiz+bhP#bPJ=8XRgdyzUP2?5^_5$362RJTg z6M0-FL#X0R8E~;mtm5dTeIpj~y_u8XNmpmc<-AC}(;A&i)f0IDE28(96so5y1S8%)i8&+_A;XR>XOu_xc;t6v%}VJSr1$^=w%eys?JKBrrJqw+qip2W9_>`DBP z#r8;e0>ALPWWf;ocjK28xPp-SUD#iBZ05Mvwe~0!&Yw6OD!jE$_q7s&Z6Wfswh@A@ zY%qsfr$dwYV-A0Hnhm?qKl#@^i4%uuqnFK~i$D9(pAeEz+~|1971^P@Hr!?y{uNlkNV4lw ziYh7y)GDmUg8bVs11`Ik5He9RH4eRt^fEQW5>l&CZTB$;dygr2lnBeiZPC1YgxI4q yWOtSF<$>pR;58!?%x$|d!Xv7L%&koQDvt8U#a?!ZV`=7h*uGY9Rgjr`!u?;y8gWMe literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB$1.class b/bin/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB$1.class new file mode 100644 index 0000000000000000000000000000000000000000..561dc082b3ed05b36c63961fe4f2aced6541d6f5 GIT binary patch literal 930 zcmbtSO;6iE5Pj=}xVWZC_~`cs1quXcEvnu?QA^sYky1FM;=XZ~WRbIr)*B@Hn|kSm zN3#zghqJ`|}roH(2-KF}zjU%9D$)(U6;dtc^I~v6Wh- z(b&pFS}D>NHW!h!Via}d=qwR!O5Y!>?fNJ))K2+1j}op1(NXVI#MVcJVKM7E zo~WfqXWVciVW{j&C2fX+W1bvy zBVC<0%XTPJhJ(&c9qcjqarS*AwXxax@1<*vRD-?ioklyr0+xI%UhzJ`hq#M-WHS+J zV27E_HiM^kosnzg?&S59?qr5V-Mr&;8J>iwq0SI=_1MJXqjWQ>7q8`&lVOVAs2+<%iMRQ;ghM5i>4&%zFM-^Ut5^Jb%G2-`{t(@J=niWJM_twb?H z|7VGU{syXMDT`=lw9jn)K=7Rs4W1ZXD{*8qlic376CT1D2N3b%U ZW}?r?r4xUSm8`o;>kA5Zug)Po{{VS=-HiYM literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB.class b/bin/notifyz/hardcorefactions/utilities/inventory/item/SimpleItemDB.class new file mode 100644 index 0000000000000000000000000000000000000000..d35422b217210e92bc9f18a3e4d64bb0cf8dc06b GIT binary patch literal 11695 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 C-7FaZ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/restoration/InventoryManager.class b/bin/notifyz/hardcorefactions/utilities/inventory/restoration/InventoryManager.class new file mode 100644 index 0000000000000000000000000000000000000000..3e13bd7b49b1e91e9d9e9f54d58f8d781fa95486 GIT binary patch literal 5859 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/inventory/restoration/RestoreManager.class b/bin/notifyz/hardcorefactions/utilities/inventory/restoration/RestoreManager.class new file mode 100644 index 0000000000000000000000000000000000000000..ea7f73225acb25a9a95c3accdba5be846675990e GIT binary patch literal 8516 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/user/IConsoleUser.class b/bin/notifyz/hardcorefactions/utilities/user/IConsoleUser.class new file mode 100644 index 0000000000000000000000000000000000000000..54df39b5a44c49a6a129e9eadf68229b246d28b5 GIT binary patch literal 1209 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 C8?871 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/user/IUserManager.class b/bin/notifyz/hardcorefactions/utilities/user/IUserManager.class new file mode 100644 index 0000000000000000000000000000000000000000..3fd57b409ceed5f8879795a200c14d3d864095f0 GIT binary patch literal 5093 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 Za(?e$%83%SOx5ry+5SmZujS>H{{^;7r@;UK literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap$InternalEntry.class b/bin/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap$InternalEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..d562f54dbacb78ca6ccc715c7d59ec6cb4f8c36b GIT binary patch literal 2760 zcmb_eTT>iW5dO|y*k!X3LI5RV+(Z&)A+l=XjRg!KD1iWS*-BF7!!VqXAdGunC$VRc!4TV?o=tfRf7xFlZmlS$dY)7v) z4tBJ=C5M&M)GV`FFe@BMsAFB)c*Fr)EO9iNFvQ@nQuY23)ez`F_q zC-_L-ikvHp57%cmebai#$&UKHYft;jGTZ$|G1dhUK4;k|1~Z+dU2xfOw%ROXZ4_Ed z$rWZLr=r5ulX5y9NL)V7;}R~*YB7&#@M6fCmZd#!!})zgpWNuwoZ%-kfjnj2 z>rJ_byWltA9QQ(tKAflKE6Pd!_KZD4|Je9bygYX8DTaQaDv4M5?n8?2Px)RV#4SQD zW0;yk=!VyDkrDx-@UoJ?3B2BBRS=`VD$k@ss~%b@X=-Ar#(~|D@ zT*RrG3vvj_Pe(aOyq2awNy*L9g#G9k?9hLL?VXhynBYQek?>N}?y>PdppI};m`eoA zg+*0CrZl13CCr`VmOjF~WOAC@G`R_*UEy!Y$q^P#cgf-tHu;M#tn!O4i_eoIxl2I? Zx1t&>V})`bbIRa0*1F{1)jBqi`xkBbj0yk% literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap.class b/bin/notifyz/hardcorefactions/utilities/utils/ConcurrentValueOrderedMap.class new file mode 100644 index 0000000000000000000000000000000000000000..69522ae319e19acc6309acf127320bc240b8bab2 GIT binary patch literal 3631 zcmcIm+fx%)82_Clun>YG2o}5{O)Z3AY}J-qRg7Axh}O_}>2*mKSXg%HX5$oJ``G8c z^}Vllre3Hs9iQ5n{!O;i-*-0T!bP1aon&_ReCNCWzVCeJuYZ2~9l%+X4MY?!xn5u| ztUt^wnSQb0`PPD22yD+SWy*o=*nw?@U!_dea|>nPx7;9aI%VsoU$lIyc*9&X5L4)0 zHXoQ;CNni(3VdqOTg?jXwJl9*QRvbn$8;AnS;uoNbKbEG#1#(e4cp7)EZ;UA`=RV8 zw0L68b{7@)&(zfAtYAW+HD@onW>EIYxYD>gIrHDcOHR9i<-4YH#SQ%R$+_zjbNPw$ z{3$d$p0`q7Q%KgCEmZSVmof%U{_o#_O$_|cUQgPt9h_H)4i4oNVp*?f#SukM0-fkG z@RmZVmg616$*tIHGj=H;0C5~bPb(A-C(wq3fujm1Un73aEG;o3aU2On`xDrY4#C!T zt=aPGyyee@z<17g1=Go!ECv=rg%}H#?2^LeJxCKl>1i~vzP4#*W)JjN%Z1rqv;t;! zFsuPx`#0y8twJy{R7c8st81n&!P2!uJ2A8R+Axd}18IeU*JPSmPT*afA|^ZOsxw^i z#lUHWTYKF#ab)m*0%vfRy=)c=R;iRcqp&=<2Ptms&)t(5U9r{`I=6>RXgsH=aC`5a zQMkY7O6y9hJr|gT6=JL#!@%U`0UDmH)ly=FYh@PS#T{y(E+2KZw`)nZ4TcBc5X(?d zosvW2lEUzttIkXLUQXa6Tu~T(wcHLJQX#eBV@w;k)-Ydq9wqPzt}|e>NJzVP&^~lu zL~kT8D}2qqwdy_Ku{+QKz_WQSgYO1a6H$gvhG4sZJxSqW_k;`@nSL&@@~155WmE<>so%+F-s+@WWe9N z*EHhC>d-i{P#bO%IKhNO`D=oKRz%oGoS&q%^LiG+KCU?wtLp>g;qiqoJ`a+kKuN{- z;nY)fr=H``y{G7Xj6QxI;pef(IQ|Q_qcj7G#VXH(RN9R`QU*v7b5w!1k>vZG2FgjU zlmJU-LYIcL;UBn;id5=X93S35DuNft+(`d{c={RM`CkJE z61wo8!)=X{Nam`NV^zs9hAW9_gZdk3CWe0sun((w34!~GYXL5)v$27>DsWvAaXJiM zFnm;pV2=)EgeaV1(PVHGry1fI9cGATvKnTxie}F?G=(cfQ}#B|Y=L@-fzV@~oAg_1 z`wrhynA)!m!UJ)61NRhaHN8&7`|LF+#(5ihOY(ru!DpP#H`jeE!(UJg;qMI{e3YVU6ofI`=K{ ME;YC68VV5q7pcX60ssI2 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/Config.class b/bin/notifyz/hardcorefactions/utilities/utils/Config.class new file mode 100644 index 0000000000000000000000000000000000000000..79241e34262ad848e685afe7dae6164b049b6e26 GIT binary patch literal 2842 zcmbVOYf}?v7(H(i*pM!FK?JPgt>gj`?+RKqigFVaiUzcG2^&}mNlZ2j_CIu{U-bu+ zFMOyoHFWAsr~N`_`d|7F+S2pvE_WQ;&M@qId2Z*N=Xv4xzkm7}zy&O6@F~QzIonFV z`Z_*u6lPPof|)i_ww22k<0ae5Shi)lt71Hn%ciY44FNjk3Ul$9(!zpe$5YO6sbGj# zJZ)vnc+yzRxYpjWLQpOq7>lMt!|)4Z$%to+>|A`@E?C*QUWLkhrZi_|6;2NCi0vN6 z9s5B#jX6eQ-e+Yk`-Z}m&VOOQKVf)MA&|(;nn6@^)%|KQ6M{mmjw;kC4F12U2j{6B zwzB4f(&CI+m@sBC4gph9|2CO260uy;X61uCT>F6p=|yoOQ*)3D8cHnBpr^zz+h z+sqc(^4yQxMrvWi$U91EV1IUew22iynKNw(=uSlycW!$toMvGk4M0@aa8t)E+-3>% zzGK)%e@>*Oq?^#JTwHSWYPh4IJ3@O$AtcZ*V%_7=d30`C?_;u8q)T8x#~_BNgSl)K zZFVdBZA$7G(eVJIE~ZCjF;^<2NL2X4DlyYQHea%-g=s80SRU$lgmG3`G?vWmAk7B^ znUZo8zR)p=$DCjBP^jO7!Zk|jm~xCVIb$}2r}$FCGljG(>-uFdmN zVr3L{qF@M+%CyI8jmyj?PfRVnpx`r?*~L3(+lncVmHDz{WXRU8nb;g7@^=*TI!vU6 zNlt^x?S3RZO9pb^S~l^#QJk0O%TZuJBII=}A}bN{G%T3KQpRSe0ru{=BZssB1#;iz zZb6R@a_HyZ0v{Tr;kjy%XM^7$Z>l(Ybl`3X0mrT?5{)(JYp8kaIMwrah|WMY9ct(d zJ{%IT3XM3#udE~>$CxWg;d27ld4bm%IKaD}$Qqg=(RXNxyhm#?_9NQYa3a=K#_87x zHiTCY;5u4H{2k8I_M#NvhZNAvus|Kd)H6i`VoZIO$)%Wx8+@yno~>efykeLdS6G%G zS80D4z73o}K!eh7O~XtA8_Byv6;Ovw4$#qujMu+_*Gq;rS`S5!rl2IvR4R=RkW!!&* zF1eGVGKSaDu(|V>F}8wWghmtc>&XiBkgs#X8*!h0%S1tpVVqOsvVV=T1IKvUfhJPd zj+12l6fWU389hT>oqRUJ=;!GWqV(;;1iJBr8f`0-^q2_ZA)dovmL~LKhASVf14v<( zD^ciERQ!dj8WQ{oXdBQyc@m=7(*QjuH|fB))L5FaLqG~0?5%A+2y{2B7PM`_a+~Tr zVO>NE!L*a*<1Api!#lQ0KH`o8 zYV;SV5m9IzhvXA;#F~4Jx)s#Q<~LNXh@rq*N27drOoY}O)c99ry)O5GRfczE>UUc3 zItjVK5x7awZgFH1q`9Bi?opik6lReB6b=#T2$7D`YK(9CLr3n%lp#rKxA9MJ4b?PW zV8M~B9~lmwD^v|ME%+zeIU`l7SzZ9XP9F4cXd|zN^deDK%cqPShuq&+cdTvR1t!M? z^-_+X_qA<a? zToy8ug%mR_k9)dQ#hw`Ji7?Toi#kJa%qKj~xEjVE`^O?JTr?QM`R`t-6z^w(p;3%v z9zCOk$wC=lGc+eWixeLdTA0jp>=#C=A=w*mq>{y3hNQD#j=xbK9WvB=dLWj-(Dvb? zX|+`!OYl56xagyWH3p|+UE7INVz(Ukg*lk@9VR;E*&#R5zN^o=9R|bJVr52~)U0Dl z<>5MRy12m*pF7j{6|LJ9t)H@TD3y;}xJ_d;Q#yAe+30YRRDH->EdyIgzm=ijf|;h!|d+TiO5i%f|y-Uuz&TelpuR2LFRn!t^qp=OV`) zqQRka0kt5oyZ}LHS)t{w(P_aa>oRFu^ma(LyN^$?(tUD@p!*Hsm#O1A-3@XC1zw`t z29YZ+;|fWJt5~aGUXrx7X7?+C@3=OP_ofM#sfd*`7|ja9p;B#08@Nldj(fO|hopHG H9;tr-prh_< literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/CountRemover.class b/bin/notifyz/hardcorefactions/utilities/utils/CountRemover.class new file mode 100644 index 0000000000000000000000000000000000000000..f8f6c3e39735dd02a6db6f8478bd4c4a0697b623 GIT binary patch literal 1082 zcmbVL%Wl&^6g`tBHFXSm&?Y=mpb)@Gq2?(TK`aQW2(kb*RS*jn6K9%CwYR_s)3EeayLMzW@004Zs83(U4+zsJu|_j6YZd?)Mze7dzYu zrKbWb3Z*MUDW0hx5UWX7rurxLw=XGgz;1uPlJV38qbOC?@Lqpt9`dDj&TMcZ?@+u^>9_p_hra3BMQNA`a;*I>x@gv-a% zW*JsY`>54+=u6da)H*r}IIE$^Q1JY|)s2Qj8Cp*hXJ8pC3`SpsZD$~Qkt=)#)2!KZ z(BSZ77W50*&{4*D4d)oFV{h<$#`oro@7HeBm&(8eTx3|H!qXoN_o?bXW@%_xCHjty zI%%}kyE-bk91rXYgKZvP`=l(5KQms&RRh;hB_+hv?(tF6^W2{IUL}%gWpM+hhMNr4 zzaiQ{4Rwa{;UwB)5=LfczP;5n^po;~=3EX%TI$sr1QNUE~iJKfX$^*3M7w_l&X02oKbLW1F<^0i!Ef8{iIP;>o2 zEOS>&UxiMjr6;u%TUO}IaLw;>Rr5rUAG45R81{p@vlOkaO6`PhL)0SjIk)14$B|Ne z$rB7|-H>5^luA`QsWrurS>s;5>G5?DFbr1PstTp0UUweFK8j3VkxJ@o40DCfiv2rz zae*NmXkrGGB}7s76uu{JE7Rd5Dqi!=B_Kk_^9r5NMEtK!q<2#9p^r8 zPIcobj$1g!Fz~NavvC5$4Bd61=aqaJiAs$jS7^^PKVO-lR3~xT!YLyEj~X@#DAIn{ zSDH%|-V^H#eT6L`9#?he;nIq5^;GehNl~_O24{&js>g6@r?~A~EjSE&r6M0hU1@1*8coIOxxGvbZh)WC>$u|-Yml^sCl~!NvY2wxUN~<>05mhH&L_3wV3uJMTz#c?P@hbGU}Pr++C$JYY8(m z=SP7nW~CY7Y}@RQ7#c|5x0UPpp;YzzLO1-Hjal3w_>K66U^ra(|0vlNr9?38@h}u2 zj?p9~=~hZ)vu3b>Y|f08S)qRyGUV?jYm&ZATyLqo0lRc&1A9szk$o2j?xSa#0zusE zr>7m;z34+feK8zBu9fCHB{7L#mfpkugaLZ(*~AfsP2>}Jjpy6fO9_0%$Onw3YM(G( zEtB;IL)+sf5_tL+gMT~9o0v-CsR5dV0eXb`14(xPMe3@I8zjpGoW&v>G)YpXf&ML! utp+A>3D+r(;U@XIk@$&43nM=$EQwpRl)yA*=$)e5;5P1(WoR>e(C;^c(2p_z literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/DataHandler.class b/bin/notifyz/hardcorefactions/utilities/utils/DataHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..e1e3f389a5d5d51c990772eee5d02cce50aab384 GIT binary patch literal 3662 zcmbVP`*Ryt75=U)du@5sIDW)+k~V1)7t1d-Z5m1x46f|NYWtG~zxzFaquA0AQ8;QBU2A3YsYKpzma|32Trsk)RkTZqvTGGA*E0Q4DKTca#)M%n z7feS(RH5yhv0)?%hMh~yES)p6u0qp#p`5d9g(H*Oik%4boDB5LdPkB9u?@3O%z7FX zc20WI#fHR`vCid|jFqzux9pfSx_ByPl@Der|) z;f}t^qLWK3l~-3SH(}bYGvnMAf=5m>glX%d}QxTFBB&T#tOZGH5=2~&X)G$jtZyAxy zy0JE9y5y|!4Q74}k6=zihN%@wc3-28d9d7Dn5BMkC=3R16JQb^-_+S$UrI5|;8DSQ zQQ^)yzw7s<;|pTOV>&*Jk1&NieS*l8VH+ecg+nZ@ka=~m1)B)XSr{4~SJ?kww(3|y zmVS|83LXdwd+W^;WD?#I`9Rz-b*v!AinmHB!_Jz8g2{>}@12Q}(JUS3#L1SDX)lj5 zWPU#oK2g{cw!GeP(n6J%Q^m5)Qyrlqs1_}E1?^!o*wtu?feOcOoe8fCJK1nY#x=65 zB%^>`8?yz|puHV8hFCbiT(;i!{-z_YxG)M*YO2>QHV}DpIf9= zyXz#SgYT5{44&2SC31L8PIXnsm+=(>V4F`8^3JM+Ff}*hYs4*|T^Tm)4bl!vY}k-A zkXG`Xj_2_W;+;22v!=6Vl}e;bK`0dKjO$o-E*U=~H2i{&Z{gdd4&l$UQ{$P;=qXZG z`;GgX@e=*(ot+$A9Dk%&v|Z5g3ckZuz#^J9)=2L476*!A_#S?s;rqnf^VsvoU(@kJ zyh;I%xn3}`6fhPxG{w78#$?B15rpp=b>G9SCs5doAM={iTkQ_LV!%(NZCw;3>Y7z> zLcIBzj-TTfEITQzDYH}}9c+Uf+x9c~m5yIanQFv(+KX3nwRG5r)`^vo%~H(adlXLn zpB*6FL~cJEMdW70 zuPxp<#yRgtp?M?6I(G1R8+R;wCxHX~SFp4H8rm1Hpz|`iYQygSfy?N5!;`j`&)w9+ zu7oIdVJGind(egb{JPIui|}~>ci>LGWh6EcEbchKCpD@Uc~T_2)&C~C2P(Krp@R2B z@COV{4gM9a(W^*IUBr&TE!-DcjXh*l$rnfgpF_PgsM^z@Mk= zB1a88zZdIxg3vp(sS{0aW50%>mLqRtSl<7n9)%KIKS;>%w1l!d03-lW;w8gcHrz(x z;0>acZEZJZLs`)Mu3_CMV}pVt($@k7e+;r<_9{MB!N(;BKEoCiy@+Fi?9+<*aBzC4 z{i_vxJ%X2UVCWLQ+5RH+zpSu@@3#MF-&MTEK?OgRC{*xEg$wWer3SyBrx{u?$7{|! z0nEq^!n3fS+Cgipc{&?FC*OWU=p$U|!|Q~z!2_%dk$0HtjT)4OgJcA<1MY2W#v8a4 pIMmCxqR>Xkz1KO2cu64H4<4235I`gNt@nHrm-&`o|GE1GU{11$-SqOvcX3h~2b~)_%W}8q8vnZka zLQlBUYHOogjP2!xPdhSGW1&l0?HCJ$<^N=7ut=a!3F=r1JYF&XRtZ%oaO|Bjr|m$v z`L9Qj_&zw3nQtc`tkm!l^MvHsPFyArRN&rxBJNfgfJORhGHr9lJd%E7hcVt0cAqN+ z>u_j{bo*N5xy-S~(^UCaKw;jvgayKSD@KgnEY&mLCw-*_Z8a@cL;n6~z^Xtl~`pyo$H% PBfMk#fp^e2l=J!v{@|+> literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$2.class b/bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$2.class new file mode 100644 index 0000000000000000000000000000000000000000..7bbe936f25c62f570c5073dbee4cc5e89d88ae50 GIT binary patch literal 822 zcmbVKU279T6g`uq-FA&ljHy*y+xP{k4_zq*r3rm$EC{JSBn0|6*-VoulNp$u74=u? ziv{`~#<8^8gcMJO>GYUAYjm#@i;+evDyIOnO8 zMrTRxq>@gGVwEL5?!-{e#fh+N`*l%ow`;+mG2{sQOtX zS0k=+>a^M3?T4|Q`0SFNNadWXf>tNOJ%)`NvMabxgkJAGk5R|EXYzm)Xcu5XgMqVB zPdlD+^M99+_&B~0sq4gGcvQt2Y7FtfB#;a}+|RVJgMPKBG9NrV=|+uN#1Qoh$(*ki@BOk`*goie>91WOl7aYRu(js++#y>n4v@b~QN>F_JHGgU!2G%R7wTt?#wD8HC|X1~TtJ8mgnEw< pHm(p}k}ul-z{BgsEEJbQ)5igL6I;PQ!FJf)A^Vhme_0-ezJIjl!TSIJ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$3.class b/bin/notifyz/hardcorefactions/utilities/utils/DateTimeFormats$3.class new file mode 100644 index 0000000000000000000000000000000000000000..0f41078051f533f97b12250bd2b4e23de5138beb GIT binary patch literal 822 zcmbVKU279T6g`uq-FA&8O;fAZk17_@K6H!rK}-lpV?l`ekPztOWHU{sOlDwqR@7hB zzF1K32l%7JJF^u+p)Xz7d*{xbd+t4F=Fi`szX2TLMT8Q=TWy>?{q{YXaXU$k6{kFP z(&#M7omA3EQLM70$DJ6;xi~g<&RzEMb%YAT#u@*@6UFs38P2TWlfFs0Vp#4-EnSzP z+}a&6RF2F<#3*C6iX|*F)cR73Px*W-?2wO@U}%KO5x3IESDO_#lNm#&fBP}p3{^ji z6JK4@6RDhYRnTfjSYz0{A-jTgB6P5S5TlL_&*VNS&?>-!1_NiM zp0+*Z=Kn4s@p*hEQrC{b@UV(|s4>I?liO4rOV7S}P2PP!0>kP+PBnMAr6aEv`YdSO zxsgkksMp@>RGEy1`Y7DYOd@PEyt%EKB;^OKg*{R{%S484qEn{Vgkb4nDUK*g$TRXw zdzVEEJbQ(?bE>AHCIq?cI2P0G5ed7KiJ78SNEg$& zqL#@P^Qp1Cgi{laTUPZ&-Ka1!Qmt}e;yRCzsN;IgK|q>S)e&*FP5Lj5apUi2Af&`gxPiB(@eV^~X z09&ZIOfOA1hHeqaaNaE2x>t9ZgtPb88ui5`V~FuP4sx6Q3U;Ae#>t1Vc{YLp#JD+C!5(hz%)^))ir}0&>g{( zxFF*^nSY?$>1L~rH(Pbes+Ub$!BZHfdMq<9W7j<0HmJUaV)2PB+8N;xMio2_N^h8~ zjXCzbS@v!5cATp(ESMheX%g36osSE3-n6J6>EUZP#UmkHlCYoMpw2(l8YqLjd6%h} zBDjpCj4^U{i-r}XFz&<4d#-5{yyLO9Uh;(_@y((L(s))zhDv**RM$H|!BtH7F*T46%_2p0SP-NOq*rv z)j8%C^f`+X7!^}vT6ax;7QzSuh*8gZ6|+XA_u%}t0xo9xrU_1syv=2NT+_5_`gpHH zytN~#C4()Bl_29435SIPVytB>iGW{5I$W!TVPjE-v%bEB&mzoB!E10ObX=nW z-kf}GZ>cjp+>lYH<+g>r#2fQ<3FZ5gkq`Oapts3gHdrN}iho(}Y(CEAp-&GJsh;#2Nh;XeBsZ2KBf2?3Tmwrlx?Mr)?x%TG@ zc5wNZ5;}#P3%^#-#f9He`u)gD_+G(Igm_ytw+`i!D#%#S^u=b)NAgbHH5i{J)HDD3 z-!aJRkAP=vo4I3_UaPSh&d_B6`d8D19=?e^a05rz zaBSu-PBai-!vJxo8W>!|Y2wZ{Ftmy%RxlEMW(A2=TxmeN18oJ94dj0lh_2DIM|j#z z2^pl-aUO?p5pf!f!x+c3(Bjx>`881t5tT^Z*?$+$ZHfHc777aF@+NZ xI))0x#3RiO*XsB|*77!QlfC8%8Dm-tTt+T{gS8E$7{1s9Q zf(Jf;k3!7asW6Z}p-9fm?94f{=j@N4-@XHQgu6B@hNmh{ES-+h?f0h=-z%3KktKpvh3_bo&cnSaxs;H50iGY+SBWwBn$R zRoYl*>WC*}hR5@Enyu0;@A9`uW}Gg!)RRiQ%_ak(kBqoRgE-((pKEFIS+SaqWWw;Q z_n+PwISb*)!t#0-s7Z3rRU6pCwvC$%YZuw*;1+fm8i`Qn?}ee=nXh^MFwS%!UP*J` z&H1nFp)nTQBzlG3t_9b)L6K{`$SaKeGNv>rn@~rU{@dOcINtp;EO`&k(DLqm#+7%U z^7gCrT_q4;nOa*k?4pSk`n9n}Rj&ZRIyNXHC~V>y!JEiXTX|&2D^$Hsvjz1YotUns icS@|MXnn;E3%@z*`Q$nl3D@vAMfZ${;WpJQ-1!Bng6m8G literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/DurationFormatter.class b/bin/notifyz/hardcorefactions/utilities/utils/DurationFormatter.class new file mode 100644 index 0000000000000000000000000000000000000000..937ee6425787efc4f17cceb6c40255b1d110e117 GIT binary patch literal 1856 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 KkN6qD$NvW>Sj}<( literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/JavaUtils.class b/bin/notifyz/hardcorefactions/utilities/utils/JavaUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..54fb0728411251383dd946fdce5592533ab0d20a GIT binary patch literal 6255 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/MapSorting$1.class b/bin/notifyz/hardcorefactions/utilities/utils/MapSorting$1.class new file mode 100644 index 0000000000000000000000000000000000000000..0cc8ee563ce906ed0b54e4f58f57f74775db2b3b GIT binary patch literal 1209 zcmbVLO>fgc5Ph33lhh??+JtXfAe4MaSO^e@RFP2CN{ECWQuV%Zw#in`Ze*{K!jWGD z7Z4l}XMPl7>;#c0mZ)lJ?V0h++xKQ?fBpXc1HcQkETkA-DsANX?1MAr{?OIFIOndB zS_MvMq$iCOb1QIqeA?H(k!n-&^J)Q4GUF3SN8XZX0@weEjLYr%H)94{$h zeYXxBckxKMo(^c{d%}$M(84~$^D7J-gZ)M+;U9WD2t;6^!LYe<$~2Gh++mM;l%|!X zTbiatcY?e;Sq^;}eY4H4D10U(1)JWvI9S9c+4ejE*HI*o?kKh>s~qQU#~?k5rpUKi z->}2*iOlp8OgV_Y+!Ws;i)mW-d?Q@$(0e8#a0X literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/MapSorting$2.class b/bin/notifyz/hardcorefactions/utilities/utils/MapSorting$2.class new file mode 100644 index 0000000000000000000000000000000000000000..a201b24c00b6110c20e623463a47ffde328a10b3 GIT binary patch literal 1211 zcmbVLOK;Oa5dNllxJg~orcI!{TA-9XBrNd|hgOwP)k;VyJp|>xakuGK&TeF{k;0K* z1Q!q-5NCcAV(bKwDwe2fY3-Tu%(ve+JNxVR_a6XWpzUCR@KPJA&c+|Sa}l2UCX{Ew zx60_qi>(TjRdQlQ-mw^UO=y)KY(I05C#+nE_reQ=9(X7H3+Y=2MZ%_UhTg!KK_ERg zhemsS5lQbT)+sQdxTmzT`-EJh*(2l+%&9CRhb0#d773M(((-LQ?91?-=m(Ne?HFGK zJrSzJp9b^xTt$ReoogxBB^1PH6pRVYMkiI02u@UPA8H$pcbk*wj6SX@b=5!%8;8v5 zB(rXBzHC0SpM}1J8g4qM6V@{LxVVK4!s0;Mo(N*zf4z}Ov7q!QwuD-yDnk8oGsmO9 z4c*NuxS|}w&a@k|{mS5124Ty^3RVf_u8Bim9;xJvEC1%}X(FHSalUVz{|wiZ?d6la zqJ;U~_W8gohuRNJ#8ZDP?YTL1utRu$jgcd`Z?u--K_H??Mh=>U(P7-hf754a+VwJP1Y3^DIa?H^M z_MP@OtP?)5nVW&xNMY)elqpQY;WqAY;a$$2Y>`CnfmUAg7Wes2!mr6y33RE|{)yTb pY$o8d99eT30rGf|S`Vk(9$}mPJRbA=39l;G)zCnzSYq(>`2#p_H(&q& literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/MapSorting.class b/bin/notifyz/hardcorefactions/utilities/utils/MapSorting.class new file mode 100644 index 0000000000000000000000000000000000000000..35375e5c52a07ceb33bb011badcfbf12573e52f2 GIT binary patch literal 3024 zcmcguZC4vb6n=)6ELj#pDNqGpN*imS+O^bLOVTK&p+!PblE&g&U6M(=iZrrUjFqrfDiG5f)R#mw&Rg!!4H_msgCEZ#uT8H+<7FeUk@op1xz$^N#DAc2&U`!^~sjiJ@DDUDbCF9`lmV zFqwT&*xSey9&Ts%8J2S;r>0jOr)qJXUTco69~d6jHygHekz|-Uv?y-m?q?Y$QYFi@ zO+U>rnpi0^jAfiMSD-OmA0p8BRTYz%)(}IKA(E2NQ81j*Fph|VvqR#pshGvIKw8kC zAi@yKnKr-Is2y;(U>sPSVK(QK46A6krudeFDn>C)oAMu-9(m3Uu_a2H<`E6NTr{i( zCz$0#PEsNG5+o&8Lf<*l^T{NdH>#GSzHefW}I5xa7EmyLNS?6 zru%%P3WcPc==YTh`KDOnS=)D;oz>~2ie+3>aDm~%QFW9Y%OWA^yKb4gq%#e1yu+Z# z$PJ6(QetI*sQS&w3B$V@-avxkMqlK~P=M`S`i?s&XQMTvE_m%tE-~KAYqK73%W$rD zX=m3AzaEqFz#vS+v55|0cf$_I8HNL0!w0xZQmnX6jUg4zQWu}naxzOY-PbhgDA!4w z{3qX~4kE?LaB(1Ey^;)aHgag#xH>^<%^EPuDca3?Xqd#~-O;+sSgw-ltP-Slv& zA&pO{=WwCXJf{YBhQjSGp&_Z)4Go_mL%{`gmvQP%A;l1RTRxY?GDt?TC!$WfITZrx z`sj{Rl`ajO2uLQXe&kIm_e00B++}&UW0o@NM8e2?>O5Pv&E1S;cpmo@e9v&UTV|c3h+$kFNz`-bib40F5iE+U0KF}WgPfid@>iVg zDt+Ce72;?91t#~OW9lhpUSO8q=AL5ycbXW%Ir={>!D3{xfH^GTH8}$Up{qw5N~b5I z@$uE?c)e>Hk%LpxL<<&BEK9U7N=Mk6)}G;`)jzS$@C={!d(owrg0*PRpog1Jqai{cLMc06w#+0*AO?DTuP*|VoS3WOKlQy%weB#L4P`Ku$y zYXguor$SamKkLN&KqAK_3&7YPm=W;?G6*=hD^W!*RdFhIEcg2@=ld;pI+i2&TB3e~ XZ|S*69Dhg0*uzMaF0{eVZ1DIOh0PCu literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/Mapper.class b/bin/notifyz/hardcorefactions/utilities/utils/Mapper.class new file mode 100644 index 0000000000000000000000000000000000000000..2268a2c8b36d5b0272f7bada0c514b3f9a9cb72e GIT binary patch literal 405 zcmb7A%T5A85Ul34xPUy=gGX=bfr*JXjfsK9kSvgh;cA9ufFbKF8D>rNuRNJ}@B{oP zV=tI^_EKHd>8^D3*Z0RKfJ+>C$Pt7|oSwhDilwx(D6wiTBc~Iy5vkL$c3SP&MhxV7 zt*nOvp|O(BQpD0M#Av!wks~zwcf-+r(0%OngRnci9R!3{_%}CpR-45Yq1It@CykrP zI8|lr5vWZlU2CJ=4IzJeHX#%`$xQjkW4{U?6+%7KMh(-asj?4p8mr7biDW#HR%iOR zS#V3eAzXz2jKzof<0Q3_>gmk9vP;{}0^kIE7XOTJj3P>0JytoCneiSfj8*Q4tpnrN{i95Ci^_ygKXU;+RD literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/NMSHandler.class b/bin/notifyz/hardcorefactions/utilities/utils/NMSHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..1c47333ed9a70ee487d5b0d015b760b7d994d4e1 GIT binary patch literal 2405 zcmbtVYgZdp6y29RCJBQSN}*U3N^P6)NUF6J2~rCM8x5g06)mXkB$aIdHp;g(v)0sY1yO-hd)lFvYiedAw^`ZK ztFAylArH3J?v@LiC4u2$7g2U?!))XQ;!B2UxXS{ObY@E+x@y(*6e8$Xp&%hJSTsz% z)IO-__C2lA)TJ4#sx`MX+mQ2MG3xFbj=;6z3D}cGtf9NBD*_kOM>%FfORG)IafnZr zjfSbYZJT`3FLP#TW;vh28H_0y6&SMYMy}G{-#6UciuX}*7UQ%_9%bD=)NO$?=}a+% z^OtEPf^#Y+@R~qEvX+blP7~bCu1_6<6>ki-nQ61+%6< z+N?`DAvS@jOhH91x zCexX4EuWo~?*kRLF~l6#EnDVT!G{7<-8ejAMFi>_`4I5f3xKwee>_$0(yNun`-RuGHqL-Yk;}t2@9F#R=8;6>!uN!)k zp%;z`{YCHj(1PDA@?rggC4u5g*pgT4rOe5MeyZX#+-DJz_AR~I)NH*L@cu8!*a@5L zYB>*1$#(FCg3o)(st2OtOFR%z4d-UHsymM1buYHLZFyExQ9+eCcXT(rA5Cv(SW-LC zRn$TCB4jFXDV&IZ&zJ&(y`Wnkp^`|}r9A#cjcZ;F@KT2o=Pj`c;#SbT!~OcXBEn*~ z^h^nihfeo|PAj9mUHWnBpH4jzI^?;O`mq<4t+rid4apWi*nL{EG8mlaO^)!9B2Hds zj-nj%f#83VvmC#I-`LDkq<-L_4=VrT-eNxnI97cCUcn$|Nu0tEQNtegv}fcyy6EG4 z`58t!c(sGqJ9wiwJ3Bnn!CdrV2XFm^>%U;({_x^cEd7Y<9o&$6H{`E_)n{0LQWQ@- zKa0qtKzowKC@F*f2Iz5u9`hK%65j&JYRU_186SB;4Iqo6$9joOHc+CiO`;gbHwx_~ zap!-q{`dr}&ynSXd~L{jlB}mrz*?Y;d(U(IiI?l&IhQh~#bR`Bwu7z3*m$gi?QfAB zk3~CpI3AntptczO9x-l3WmY5fegV6bUS@Tg;)AbK1eaM9Y34PJ2}OGW7S51dsHQLyuu YEJ_7J!MuV=Z!IEcyRs%-g8R_^8}~mxApigX literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/NameHistory.class b/bin/notifyz/hardcorefactions/utilities/utils/NameHistory.class new file mode 100644 index 0000000000000000000000000000000000000000..2de151acb8bf16079dff02b3611e0f1e1cb9bfb1 GIT binary patch literal 1715 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 Re`giE_g}IiaLWa|{eSp&8qNR! literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/ParticleEffect.class b/bin/notifyz/hardcorefactions/utilities/utils/ParticleEffect.class new file mode 100644 index 0000000000000000000000000000000000000000..f1b329ab6f8a174180a4f3e2049cb92de9caf277 GIT binary patch literal 9955 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/RandomUtils.class b/bin/notifyz/hardcorefactions/utilities/utils/RandomUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..d070f5b1df3f1c1a1ac39b4c12537a0e453eaa38 GIT binary patch literal 904 zcmb7C+iuf95IvK)HF1{a0&SozmvXfOt%ZpCQq&iu3QJLoxK!eejk8I&a%^zys_<3t z0Ifjc1NbP!_<~vqid0!1&CKpOGka!!{`&R{Nk7q1 zICaxR2RhNJ@TTqy84jb#YtBwh7=-4&Jdkc6!?C+F*jIi+n0*(dV;vG6_0ObzR@T`n z>pagP8w`G;L!E3As13edS8@<2Lc1UNGT4=|&f+p@Bzt;FSU7%A8r*WBdQpqe zu|3b}p9t@Ti5jbT!^F~`fn=2BtSl^|o|)?cH*k|+hUze346AES6e#Mt$Avz z)-nKASm!D)DDlr?v#qet8^E^4(Pkb4qI(3Zdkpaf?a%qG%WUUzY#jy!>bx@ZoD(^h zzydlP5w75B$@QMOW;oaRj>R`eSl(V;{)%f$Z`X}^;}|QS_^5&t+9o&A;;)_4_6lf8 h%OtoDJ1^CN!(N4NH_*icZmGo&dB{0~&sTHSwcqtk*i`@k literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/Reflection.class b/bin/notifyz/hardcorefactions/utilities/utils/Reflection.class new file mode 100644 index 0000000000000000000000000000000000000000..927cb0f4eea4f7fbb97741fe4ac2265736504110 GIT binary patch literal 3776 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 M!jV5YY5wzn08R%5`Tzg` literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/SignHandler$1.class b/bin/notifyz/hardcorefactions/utilities/utils/SignHandler$1.class new file mode 100644 index 0000000000000000000000000000000000000000..b72c8a34ee8e853eb6683d36df626c50dada70f5 GIT binary patch literal 2099 zcmbVNU31e$6g`U_i#SVg9TMUcXb3K`ML+~nN^4q30u+N2C?;u}_C=N#dx^XX`bZ~z z=>OnnbOyIgANm9MH#~Qy)4Q@EN|OvT*34?JcCYR^dv(v%n}7fM8^8j7FmR0FhVnxB zeCHRdZTn5f^Tl)938kk3D+;A6Ln(SzVAW+yJ+M{N6@GEvK$_u#=eMjzw7DrmD{$JP z8PT4#6fZoDl(HMHV911R85FM)RBaHf3PX0=c8goCy(4^vsagV6s8EJG){}UTJV&)> zKtz|@wrUah;y{>1eb!zG3d&=6Uu;V+3K-5N2{c^K*|e7Qy&l@3AopSI9n<10A-KMBbm! zf#M~TmkfO%RYz>@Y zGu#|3Tl4e@Q+}kfxD3m{6^4aDWWsS3^9;vr#}Pp+x1Rkx z3sekz$uRR_V2)e(ifY~$9dDcTJzGjh;&I~zk*pkCDQ}G6HWm%sVVFqpO_U_Z5|$}{ z#5NW(RSHo(+_$InEbieO1NRwnd#dbF;CO&4u@o;O+ojSNKZK>`bRCa4YFMGh6$sVb z>pBdVN=fh!$>0Q0ayD1&t$s;n>t5tL;=a@kIG5<$S2R_s?0d>_y?`3XiU`|YlcSDj z)VhMU_p>f~;#}QF;D3GLKwdONzNUqB!GZtT|pk8Bg7uOibnA*k76kcJL>@zgZ?SlII@3{L4r?el9X&N)T zc$k6)PC)~Y#z|O(g~zyqZxaL-`vg|WYY6Ng+D?&^KKB!H1k%)fo??xxJgsS7`dX*e H?=kfsxD8dg literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/SignHandler$SignChange.class b/bin/notifyz/hardcorefactions/utilities/utils/SignHandler$SignChange.class new file mode 100644 index 0000000000000000000000000000000000000000..df4762aa934236b986a03b7a046037a570198280 GIT binary patch literal 715 zcmbtSO-~d-5Pdbfvak&72Pz+;aL@!6bvSU-KwuMt$wU*DY+^X|%=Yd!JM<(yJsQ0M z{vi*<#DhP;A4RC1C9(%jnn|kO>#3?&Ro#ECfBgoqgS84g!k$j8>VN$f429{%sgZpV zTb1f8$gN70RdS57prZ!*Q0QJF&2xv_L!k$ z=r)W~rrs*8>@MNe#$?8X?mbGIUGBD>_GA?$)O^gMPAF|`c4t6n`gnjThaUQ`ouN7c3UI(@3oeu zoro-xSp`oCJO3i;g#KPDwt3_dzmpOgZUc-OZhrQJ8B_~Tyepsi9J5dGiuhXVC+1sQ zS7@|eUSZ(}|MKvNZ4+g-=WH*yz$NDK9gq2BeVm3xEHMLWg&Y;g33~i3GxM;5C+w>% KNLa-)tlR*IUblk) literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/SignHandler.class b/bin/notifyz/hardcorefactions/utilities/utils/SignHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..6844412d231f47042960054c4b4c2cdf6b422123 GIT binary patch literal 6328 zcmcIoX?Rp;6@G7)xyj5;$O1GIKqzb04$xL@CeT8l5(r^UC z!oSZx3*a97T}Oe2dz^U6-Zk=YXuwQFBk_c_%Z#M#xRVT}Q+CWw*_Qj13~jReomHk2 zjadmDMH(u0o5N-(W;*?$b$z?7NJ@uKLolA`5A~(@?6FfJYuIv9p$e!fvoA)GRUPq&8S6F^w!CKs zi&6u2Qo}263TxtJ#GUmqbHqxlu_JplH07b@5@|@yhumcw(spX4@GC6X1vjQ0(#7hw zlQz$^%%R6kMPm&!z4*J5)W!^#se2MVP3E_mPQ)VnqJ@kPO+(30!j32G)QE;z6UbPf zSwSKC+I5}no7ZjhqY=$Inlvo%@Z@?H7`O`|(!AeFxwa8}dd<6=#-&CwmWTcH&LRVg zakqv*L>+pwncPG4@6AUoZ9_z-A)iHEstx zJz2HQP0}nA;Q-cSqmB(4Cg-wlZr;EqY^JSt%1W52IE%nkQaiV@Ju^-@-FQgH7N(bL zXANvc4>P1=?I+bHk4f;8t%WvL|=+tY&Wn2JE=^Hm4-XKw95IAL0E`BaYKY| zuJaHf1Acvv2(t|ALO<;^MmNh0kyZlay%)t!tCSkW|#Z)mxy zuFQC98Ba2ZxDKgI9=c7m+`y337N46p1oec0q#8LyhNXOxn3@X5dYDGpU%goM?`V8XEJc zn3XsVc#<}H@m49CZ`076x6k9Sad!%P-)`U?;>AKU8kNv}r-66j-EMp?mqf{`m~Wpe zRn5`F_u!z8_mbEi6Fn;o9K!otX`5J+SU+b@C`~OOmEX@odQ((hkdxFWZcl@P@Fo-7&9L5pWC&rPK#SUW5w6ipi7ny5Y=C-yv zukQVC$a+562MDi4`aapi=a^)??v3K6%L7tY^C2QD@ zr)klQ30Ap&7K`(4kRwB5x5%v?i*r!4-m;Byf#2ehJ%;A(kz7W*B74}VFV@PU9=kYL~KHkE3d##s5e9FLSoN-fkmt*fuTkTO++p%JrYnK8zi)VD4(=dDD zo+H<9d>zj+d9ofzv*BXwEzIK^MSs-hA>ndKDuBAs&(6QluQwCspv6GWyV*}u+V+Rc z>~%lXnU2Mzcrq`a#kUQ72j6Ar4x6#G-0^DijLkvJ)eqo#1K*RP=S!;&RRmlx@Bd%ZF;A|!&%kJ%3WO)^3vg%%ASL;9`KCkXr4PqcJ0g2CQF~rM$g=P$i8wpG(<%7QoMUw%>e~Uc3zD{G7zM z4V)|BcV)wAR5YAH^+^O98c$-{(`wrcepaD~pELP6iz4ns1!m(F9GU8F+vb(|_ah6jSBqv+D`9C};)LH`N7w&@hi!>F6$JAz6X zh-P=o+rTNrWXoO+$519uOt(k=^9+^kr$m2a(BC|Y*B2sKat^&)o0?DKEn8axqj;o% z*P&J}dz8zJpfQTa_)vBZk8f>g3ZkEUOL?%o;RL2lEjon{ZQ)e;NemPn zr%6Q+UTxOm`l|XX(~7dWhra`1BZ?aTyCx z&mw#tUtrK3CGWq;U1dC9wRB|+zb{drM35`@%UQWkQSMhbHy6GusMhiHRaEI%ucP}4 z8g%sj3zel;u|vmK`9e$BcvFfS-dAvW*$2IV|QNxH<^H~AoZe365a5IRKsD841qNy4?qa5q`uQn0h}Jj$C%Lh_U( ztmUH+PDVy?o>wQXB=h*GSa(5U-zCL-Wy*GH+QHHZybbH6%z zgL{tb(L0n&C3==92NiJleC3Qn1-C&f+_|S{gMeI#!YcwVv8_?qPURB*4wkVyAf#|D zSGH>oX;Q+mLoTc>MJ@*4&tT9}d<=uZ;tUEGTYN#^D1InGc{#`+_{m|claZggVX8Ns zM^#YIgz6Faj$z@9!93DYoRp44{2@gzFBn4VQq~=-QXX^iVcn4rK%85Pren5F{SO zFYzmSp$7XE;>Fap9lyqJ7& zU(EO?$}39nJN#aG4VcGo3EX1AT()_+JY5}LSYLoYsLwy*PyDXsF)!lJ_^Yp!jja18 JQS&#{{ui;h*tq}z literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/SpamDetectEvent.class b/bin/notifyz/hardcorefactions/utilities/utils/SpamDetectEvent.class new file mode 100644 index 0000000000000000000000000000000000000000..50dcee3e1ed998ec34f19f76876c60310912aca6 GIT binary patch literal 1319 zcmbVKT~8B16g|@}{agVHw6qi`TD2d-s`0@n;RQ94G{gkcMBbL|Ku4BcvYj@mzsU!` z8WK(X0sbiCo!Jf4QeNz)^Ks{%bI+VRzyJLB1>h;3BoSkH=J`?_4?kL6JLoumz>jT5 z3g7EleJNZa1rJv}>)_lzd&wnt_Rsl&_ub+MdH* z*FJJNL#k_g9hV0^hPBqU)HmT_OZ4OmhO`qRd53`=G9=Djd&mQZ(mzN~3OTgi>N7&6 z2Hf=>3K3|Jw%d*?JRx@&;I}mCg1=ngfOWmutGl*kJ(XN?DBcoOo6IqyQb;ral%#vW) z6=c`**8ld5Ov#E~)COfH89{cMJub(BM(t49lRn`x^pXs!)o+$hq?FpeG@D4tZWW7M zB+Zox0{vFTOeSTsR{+&^hRlKA4;=nlsOPdc@%*+v*aI6IRs>eFvcUL?!ert47}kjNr(s=U Ts~R~SyQ#6tABIQzLXZCf=Zf{6 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/SpigotUtils.class b/bin/notifyz/hardcorefactions/utilities/utils/SpigotUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..908940ff44b88332101e2f29b0714e43a949e7f9 GIT binary patch literal 6008 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/StaffPriority.class b/bin/notifyz/hardcorefactions/utilities/utils/StaffPriority.class new file mode 100644 index 0000000000000000000000000000000000000000..832b7f3a909e96c0f5fa1062fcba23812b855da1 GIT binary patch literal 3372 zcmbVO-E$LF6#w0PZIUi+D9|rj1gSMiOJgY@kWvUVh0r9eO(_Oc+@#xdX_AebO||%~ z_^r>*_`*2j3@8GZAQ@Sm`ryV(asljo(ZuBgRwsG=)*MOWn7S2>i@rTO_OO;I&PUl!nC zXud8jNuj({%!Q)GN`b*Sc{v%KW;h;iOlz3Ib0HcTi;N{=Nd_@B6B!>*M3Ry7T&vUE z_9Q09qSKL?NxnBT9gD;n9LdRKl;GL)wb&SgKb}(}Cu`wGLmnj`c9cw7_n>_9U^OI#_+$x0z3Ycu@9Fto_JW%b%LDq3Gq zDBU)d5)kGIXt4iyaTPBMc!{BJdvz${6L(4yARx=ozGbz>lX+j6!< z5*s2aSfb)skjhiCR#3`i8c|R1_6qq}GB~8}_GEq;e3Z2MJTn_F^+#&GUZtF%NjS40 zk&Upw(P9daCr(vg;9crnyf5HAvT2Eaxva|t5g*_~nnIGMNy}Naw9Id-g(I_OVvpIP zrc8I$DqK%kqaO3S_A&2hpD-M?Dn6H&%4KVJ+O)J44}SvCEc2$+ik6kf6{BC!ZQgn` z402(Hit0QkE2tfD=deAt6Fl4u9mFj;ZZ?w=39(ybkK zpKBGJ_t9g(ryOnr?KjZVPQgG24fKqwCfR2ozu+|f3mB;1?J&@Qfd+jpy8%N!;b*d9 zuc9ZFc2u!Hm3CHfFqL*y(U(dKRRmILcNGJvw2!tzsrwjufZ_Bij!vxM`SeN0`l$WX zZFF=xx(~;L{ofd5 zRZMhIkSnL9*4F+|liOm!3{I_gZ4IlPWH=u9gP zSeQHt#|BYLOlox|H*nCv0&Uc|-5}4c5}bu)+%V$_(aPg?2Fd3;^id%8BUX2 zhBxt+c{oneHagS75A&eEgVS-x&eha{tEuU=1k$pZqZYiqSrT@z9Yiy|*i6mGh-7|e z+o~8!PuPR&=@DM%3H#nPyfg4<(wJd@d*Y#vb<@-lG!yP^Wx+Lk^q6FCowMUpI&H&e T<{keWUl8UG$zgg2d5H@1R85m|%+DhRPjm4_k;F(wY}ExkCMX=bJvee#$1 z>Z`s0(dZBGmlz-X3F5hQfFa_8iA{6Py=S}M+2-4?PhSB{VNFAbVa2jNQGWd+2dn>!oEw#gavyj?WRO~VoL z?h93~B3y>m{C|L&Wr(`mTeF?2K?sM_`7_vlTG^3+tl&Aq+R4U{K)VK=A@PTO934n9 zM1AUmRC(l|kE+ zk=Dx$o#|W<&k4pDuA^VWjdOKxM2=$sgH-&opW|FGM?aruffO6vx+v=ih8ZBA8j-k0 z8HR$f{_Yq<3b$mF#~6}97ytQ@%?L8oiQ~K_kq)=xn8Y0dZq#brDlv>*e0K*wp49K{fyLBQhkRmy<7bPWlKq_hv+RF z;@W$J^`S$g4{%c-4v5%<_^pZm32AVYqeU`AyLB~A0kwrfi@d!)U zCN5D=HIU&h*+|sS$u3K{b!=dPP9gHjlWmq__G5)Svruu5Y{w8f!hM7_BpCe=ilCqV dN924eQyMaj>KYDhhoapsri(8!4g@${#1xnJhD3rzl9Mq6uXx<6d(TXLifqFNUBu8-lH7bc#n++^PM6%8XNn0+^?382SLC8{ zEQ3DjIKmsVx$g^dbkmNv1>K;_2WE=VjNT3UuhH6|k<>s#-xnl5(IiH0L$D2uVjs=* z5I|!Stx{;l{wVnetyD7atE1&J4yEfj_Vztae?!;8I!>zS>sDmlI{Mae=?kuAZqzYc z$DNOAOQFKVu^{msl9`DQXvpLva3KV*qxg{yi3h|E5qBU*6vokyJO(j|Cp2ym<(Nf@ wFmv?FBHq7&4ls@0pLimPLHgSu&Osm%1vL6n4D*DKp^Qf~rWJ%5{xMR&0hKd_qyPW_ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/TimeUtils.class b/bin/notifyz/hardcorefactions/utilities/utils/TimeUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..ba35dcc416b49fe05efe01372abb4ce94ddc452a GIT binary patch literal 2027 zcmbVMTT>iG6#g1!8Fm=Lbs+>2B$8wog++{L03&1pSzI7yfrP|MhTUNqGCQ-(&JyuW zOYnN$H z5*Tt^-&))LGQMtj*^KL%YevSmT&EZ>`Ic?@mRX(^>Z@daweEXVS13RFj9%K}Qm&6*mj5!MkxjX*=na?JTse%16AjaAzeXim8q!(KK# zORg(Q#b39I0@qWo9@!}4%9;M8nX&SQJ?(mVgK>36W2qoo-~7UlpV%B#(In7*#%?WI zNM>+gP(vdkl0}<9Bw7XwsHc6;a&n`RZm3{*MRNMj{aFnc(50gDMB>V)bzHS;3h^?7oDI>lnmaL^BEn)5!{SMH7`2o{nKudU;!CLlLaj zDyB@I;1Xt7$GdosO5ZIr6=;1~ieoqg7{Qnd7O&|j%%tO+IT_^pU`N#k$))a${3bOB zjO&=dEi%fu&X(!XHWW=JVnOaFbxdKJlx)+<`RhTFlQgiLLWzdWr)x@E&n%W~?uuD1 zoS<<9I!>8Zioy7WMIo%nP!e=f^gV(4v~Oe{%^8KD!NXX@vWg{vive4C&EkwWQ}R61 z@ypkY_ejTG++!gpCsxt|-DR(58IOi|rTK}xM)*&3e2UM4#Lro_EpL+&osG>_jBrWD zu&N^?9fW2UmhPmb#?-MUHR@b)era(k(5>sR0$qA4u`oZ$NJ3kNU1FarB?c*=rQMR3 zF{dqgpU)k>5d)H&fSz<5(@WS!v1sz$CYtx`dfmGc|9aVgV?9@4oI?XO z@^D`TQhSERmFDJswEjr#aReiZ+1Jq+A^3Qi6%w1X@Cdw6GMq=pdR;e2;T%>i!6 ztq+Vtq;C`vQRpM_{fl3^cNs`^KyZXKK&c~{1~j7yE$9G)Km^y&#=Nv+m;vA5n>3G3 zJU|z_tQ9U^3n<-Wihxagh#8Jec!(rsNv{L<@DWn<(uFkUcvd0a7#47wS)U=&$Nbme z4o|hBrmp%q8Wa^h;%{__zYvqjA5OO$oWLrR|V zh*G3%QMM_g7ry-&=~k@l;eoYVS$ux9&<>}@(KLHB&6TIJK13^L?=o8h=q0bKH_ zTfyKfY-0eA`Q(0$p&(0b<>;}&Jjm|}qq|LRl6@HJn67L5Xk=4S#qb@D&78S3+N6oc H(MR|ntJ2XY literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/Tuple.class b/bin/notifyz/hardcorefactions/utilities/utils/Tuple.class new file mode 100644 index 0000000000000000000000000000000000000000..2b536aa5591ae213ddba7e1c6c4db446b2c2f261 GIT binary patch literal 967 zcmbVK%Wl&^6g}g-Q`3hV%KOm=suNJ%1q(!@NC=5dB3Lx?e&SBkX^mYu<4R$}FM&jb z#G)V2kE*!W4ylUSlto7O9G^M&&bhg~`gH-|HD1(U3G76%(TCG7-jPfWf;dr!GB7%h zCSGcEsEt;6HSvb&X{c%_3oIYYGwFpg8hf8c$0{%ar4uz3a0Y*W*%N5&>v1GankbSD z`@~evWSC~iCsgg~NSmI(wp+YjWZFJiy5uwT_qZ;-NEgmp{Ixwfwh~K)6+k; zZ*J+=&EMGLh{nqFIpCJtE+#^Oy6r63I_dm8Tc$YO=6;+ef%>5Nxy@{cJG>-;Znyuo zXy*Te>lI~Kr(8?)KeFI(%!FzgsuQNL=a@GmXfZY^bHyDjlJYBIzQ5G@Nxzrpa5}Hf z(fUqQ32SsZDATz>CvT50E#e+A&+}`zj|YUv01vZvTybLyk8Y?Q&sB9ABv&;_CGZ4K z=R-ZqhI&UVYbu=|aK2HIkHW7ZGHY+o>byO-x@NeQpaHLK*9*3-|FgBQLFN`VXCZF= E1_x)nQvd(} literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/UUIDFetcher.class b/bin/notifyz/hardcorefactions/utilities/utils/UUIDFetcher.class new file mode 100644 index 0000000000000000000000000000000000000000..2558cbd5f32f772b6a4abfd7b98cbd9a3c363ffb GIT binary patch literal 5756 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/utils/Utils.class b/bin/notifyz/hardcorefactions/utilities/utils/Utils.class new file mode 100644 index 0000000000000000000000000000000000000000..2d6557094bdfe0236b9bba4d988c8ba21830b628 GIT binary patch literal 5818 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 F{ST|gnB@Qf literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/BlockFiller.class b/bin/notifyz/hardcorefactions/utilities/visualise/BlockFiller.class new file mode 100644 index 0000000000000000000000000000000000000000..a74610aa9a04e2fd7603bc774fc2cd67abe484da GIT binary patch literal 1683 zcmbtU%Tg0T6g?dRgJDnkYG%1@lfDyhprCBAbth`idY3Iad2kQL~ABp*vBkYUxiU4GLdWjXK#c9bGd28%LQ=KRB$)ypao zm@54%K3AZ->W6+THFHFTQWRI6a=lhl+VMlJbi=t5$c7)gtv3dWDc>z_F7aYYQA*Es zsU?%!<$6%N`4hm6zXABg;+!U6vcUYQ(L924C5~mIq!P`rTNYF`l)4_XsOOuDIo-C< znf9rs|F8ZT*TPPL{x(JAunU70b_a$iX-{Xc1mhUO5OHx3Lx54Du5;PT~|h zMph~UJ6mg9?<%*rWS~siID@kS*0N0I)2!^VCAQpZDrAA7))(F=aw;eIp>4L+Ksy>) zONH7cfSmi+0SEbGX6=B0{7Y>_-{!H^e$-W)o#hvbjnz` zF0i|$kPVax^p8Wl^y0Ic5sv;{c^bRZ1Lo96+i zp25yF91-}4v8n9D=-6QPH6~uexo_;J1)hETGVzkXXHy7yb_f{WX7CXT&*6H3?PwrP zrg!c-B$E*5a6X0U(r1c*Z2G&HX0;>SU&IWfUZQ87cgFt$F8}npLa(c|4k7c63A!u@ V3)d_RTTE+F%QOnyphpI?-vR3(%);g=K|qWfb;;jmJobL^QE)ohAfm+J^v@hAQ#Vb=|~kW>1MzG5!^w zcuD*KeiY)SOUFa1rfG^2=h)ZB_ndqE^Vhc@0Cv!HQDNBC#;X45#~|iuPncBpxvqB0q@Q)7)VNvOI9#td9I4D&~P$b*FID0tgFlEN~~>?*D79>bL1 z>@YYlO;385!fX}Om|>`eO3OF-aaX4AcsG#@_0R~Oba<)?TuwSRRvE)yc$FMmbbd^^ zGVJ)1i4IEj`=$DJl1ECnnjH@dxap$Kuqn)OK<`N`wfYd8lve!hNy^jHDi(2z1Vz%0 z-FnS6k7UZQW6f_1atvqzzSOr7mP_`;%12q0}}D{@p+>y4avPUO~+(6?s_4617w;`jo<@OG#Zf zHt4(_6LtJoIqD(r(B!F*`>N>H#qoN151tlR0NbGK=xPBKdZ^I}yM&(6$Y`A2`iyIz zM#~<3JqiMKmxDUy=&yPfMB{Zrv$%m;Nx&(lh~4;t`S8hiG~N@_ov&D~fY5q@?vKzP m@;Yq+mg&1f^s8ju+UStR84(`fA+0+!`v{w({2mjo!2b<^bS&op literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualBlock.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualBlock.class new file mode 100644 index 0000000000000000000000000000000000000000..d43715e0112d9c7d7c93bd4b3b0acc2817981667 GIT binary patch literal 2617 zcmbVN-%}e^6#g#R&2C_!X-sI-Ql%DzB!q}og#;+lLd60_plDkjT*8)Yi3ui~YW*J^ z-~9vRg$Fw$bVg?!eW^44O=|t_?k0r5bUK-Vd(WQx-Sgu+=iL1L-><&|xQAbjMR&4q0D;1|;R|T@|xONj}CI&NUBrh=2ULp+(Ihn=<0~&OJF50e>MlDUB z#iqP**+2-L0zvC*b`Nuk4KKE~OD^%ClhC&e^y3Pvls8Lr5-pW)8|Z@3i2w!+^x=xs zy<;GXn3RSMTtr+zlqHd;>$)4GI0kzydxc)ZE*%O4|bIv+8>)KtGb4jzxCrNPiq*{QVtkU;1qqEUZ6gG3>gU|nMMrX zB1K9&FaR4P)CKsTN1CgG+nC2FB^67UVU?0BNs-lkmy(7GE@O<6j`!#@1w+&SL5~LU zFM2fu_@`66=!v0bk*4{G`X!j)-a!MZq)$eFy7;{wpb@=FZ!&rz-zd+F7$rt_+P!dY zQkilo?+fP&BwP=t_MxSZ@WGc-KbTeIL0s`qbXf-PXeg_?N34K*Nsp`UQQz65PJ0gh zumV`cM;K=~DpoK-se`S42U&(1z%`PTqoiOO7cfalb!qzs!IxAhq)iA?#qA~6KNsu%7+D;V8_T-Ex`MNoi9$!w@r7t$o zMBn|RjNj}QD5N}@ZFlE#&hLEZ^5^f5UjX*-EQ2wD{V+26lqzrqgB^C)7_p7bXR%xWOWcke(O*gnZbmB8^ulUxYufFWg}T+8vzq4#X(aiI1A%N)nWRuh33n-97)f@( zs${W(MS&T*RE%n;9?qfa#L8zO8w~%x7aHAGY=CC&FG6N3lRgP7RzJxz=>;-udRIOr zt81B16Io`>NWUepbzO!I&s1ol_}sg+DP^!Juycj{5O#Z=P83teyN-&JsINZzs$;`X zV_RVLh%IpWlkU)fxV9D!Ts*PGdCJn}hlJKltixu~`R#n=T5U#&;ta`l#2N^Qihxs# zda3gk=UWy5c?-7>ea#$W)@o zuON1^_#I1Mxkwe-41in$%%%ndAm@Y5<5=ZAu*Sc&UFX+ke1+@d;Z5AyNZbY<-HO}e zjTPejg!?hK)yL!C+zm_I9AY|`5;w4OE3?cS+mzdxI|(yw$_3LlEsp}#2ow_yyZ->_ C7X2px literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$1$1.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$1$1.class new file mode 100644 index 0000000000000000000000000000000000000000..4c29ecd7ec980ed379211769c455b2f83aa696dc GIT binary patch literal 1246 zcmbtUT~8B16g|_{E?pP1l*C-phD$l|V++-MUY%Z;? z*H%8gtuHki43opT9Q!&c+(yB`ozqY&eO{HG3@qHmJ*t9@5AQeXwKEvUPL4?!MGFt` zkiqD36=kVaT{ba^QlxU3A%E(c2LzTQ?UTFux*4X2NuHL1G@}C73Y;M_5Qf2Q$X?Lq z^a@DW^hq(#eRlVVQ@ZB2JsAqWyT;YF>=<~)@Nxtx4xcH5wdzwDRXsNhd58j)cbq-| zmdQjlPF9SXfiYT7>5n0%SIn8&A24SQV13s$L2OyKGf!aF2% zgzRrje%!~kecbwq`v-XRjoe~50m^Hj!lCm3D2o})YVa%`;|ZOJV@{v6@s!2{D%3xx OmZQDM#%oF^8iD_l##na% literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$1.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$1.class new file mode 100644 index 0000000000000000000000000000000000000000..657731829d37f13e72e492184239925ba4e6c4f6 GIT binary patch literal 936 zcmbtS+e!m55IyO|)w)`(^{(hcAKD5o1wphTq9_PeAC!WR={DMEOk}ea^s5vULBS93 zqr};@Pz7JAyKLs{WX|MFX5K$u-TL2M0gAHZ;%RQ--2pHCDJtf-ia;pq|8&b<~lVPG* zyWlt6Q(T{W$6+A#d3C>3XGrasrpO?PK^G2OhNIsid(+Upi)yLvV3?uWQw?2yp;D-1 zFocmv+$h6l@vlk>71A;QhA|gu^f6>>Qj5d(RYL?PyrBd`u4a6$>O7Fqf5({$ThdYi z|2UUnqgd*V|FeskW77_NK@&kLv)$WSj#^5dUF|Dlsig-ZY?&s5yRWqfb`-Z(*sVpX zI!S{~6-K2KO3>$^pF9JE_K=GA^W~*E_KZyV6+@@xXJns{dx)d+v<}BHTmN)rxIV)*=s@MIv7sVnLFUCO(;MJG5ih9kM$mslQ4| zltdGMfIrH3cYxCJMtPXoJ2Q9AJ@=kF`}g0kKL8f7XduSm_)>|z-dDTr2F->H_@3KP zLi(ZIRl*ZW@X$UGVb}FU$nBc8c6<9gzmP8*NHDy-5WuP@8=bep^LW6JRBaLF%S57b zA&@~94#6x5U#Mk<<-#R!iZzDBnr!kE7_M5lf~1K!#w{4Q#t<(=4(W>U`F8h9od>&a z-Qx_|ifp)E%?(7fKG{q}i7~t$old??iH)_m&jVLc7+I*upk>#)osLj8_mxmRd&hHo zJa7h2A~unHPH~jjTAg)QxsHJw3`--Z(uYXl7G?}gGfWOJ-=b`&RGx*~xWh1B-Cfz- z-dO+iuCh|CGE5ETa_Z}(a1S{H_lKd@dwflLGO+Lf4@tY7&F%N+5KdhjlMwP29%Gil zXmJ(gs5M4cdn4sCxwuua~v;rn^{RH6y5;{WW zH>N%w;^ral{=}mrJo!d$F`NMvHBj!@xet^<33D1egQs{#H{zJrH*GwpZvthSU(m?X MS!Cl4r4xOD|9)v#^Z)<= literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$2.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$2.class new file mode 100644 index 0000000000000000000000000000000000000000..c69fdd938ce247078f70905c7193d2f481162ce0 GIT binary patch literal 936 zcmbtST}vB56g`sB+$pnW@5&UGqST0^jBF> z1PlEE{ZZoGZ6Gc9lDIH?@7y`(&bf2%pQp#)06yV^g9O8_HlZ9`-*`hF^nDYE0rx{` zwDm@zR5FypdRNkpxRO?Q-Pk+5z7*w#gA~KgjC6)OmB|4mNn+$V% zQp<3kVYS*m=U3cQT%UQJFp&DJc~a{#q*|sgGDsrp!hy^1?Iq-N8YXYitaTkMGBl^E zVZtvr%G(*_uoQ`V!?0hSRY|!)S{A^t>>`ahhJ0IU@pW|36TvC(DZx-^8=tE#4`j3- z2UFotS}Ncb_cH8NYt!-n?_#E7Mu9JAB1mO^@;X~lODS@sePt}Q^ot0GrqAG>Xf1-4 z;?@d#@R6!c(qL1CQR(C*XgQdt$O3uCNX6&H`euneAXEQ^-1qte^7knGjL}85+}j()BwOZpldy40L%E^!_2I$K)i|W7IpmC;L}W PiM#?aBMuHga}a;e355eA literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$3$1.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$3$1.class new file mode 100644 index 0000000000000000000000000000000000000000..8c288790a29f7880f42490ee2e67909545d4a794 GIT binary patch literal 1137 zcmbtTZEF)j5Pmi}bIp00m>RY9t<|VW1dpJIY1ECD}mF56_ydRy)`h4`yf zkb;6gz#k>fZEKqPt?|R|&d$z0GxN;MuixK)0(gX`iyT83Ya@5ZpMn8TdXY}VE{}}V zaT<(_RMJS12KzD{aV1j`bgZ;9-V?QlwU!Hq;mN50)|HNiFQrliS(ULgYYc1k|G;T<7@Q5=6Gbqb^>GFT4|$yP;o>|)zMdJB+AFnXuT9nvaU&JEehTQ0STPOXXI~oq92}Eq983)^nk3|wr zzhu#5BI1%7&oc9my9r?o-a9=?B0=3rgqMz+ z?7;`V&q?zlj+9Pi+}{#rpnERr3@bBGbT~c?{$@<&-B3JDMT#YAyF3jhE0?q0BPmDA z#T@C2c3^W><2CPpgV#KO|HayrXfKcr@EB#W`EwnT{<1yqrE|^LT{OjXOu~H0)GGy C&OLho literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$3.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualType$3.class new file mode 100644 index 0000000000000000000000000000000000000000..0140a5a96734af3ab7765da66237c89068794bd6 GIT binary patch literal 936 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 Ul-gc1PXT3*p2`bJ7%K99SsLYF-j0sWJZ!R zeXHGl-}~O%@2&s)^!G;q_fQvbf#HGO_RPcX zAGz1M^QzT$j6=QUnQhz6bv)BDJ=1V=C#KucEz>n}O@Fr6eQOAaGfckGPxPFn+ebOY z?i@47>hscXJ1@(P-7RI8;bHBZ=mmnR)JoO*DU_`4mxGmh={Z9(GM}mJDy2Q;Ww4|w zHKnpwZR{{yRCf03i_KDPUr`wzy%>XySZrCQZF(CFv6W1dAzo>}q9S}tNuD#u#k`0K z2`Nm=xP%#oL@|sovr-!sR`ndyJ}Oi*%_JDUmob5afcY`vu89yN%wd`X{vbo(fY-(V zyemSKun+()$`Co=k7EGd6Ooj#6aZ#rBst)%F#y*^ND@{9z@KDDNbuy>WL$*IFjX^c zW2bX`U^sjFfn_kHYweb9HFd}2-~OV67^dmsz1OBo+B&e>t=}J;mSs2$#g)w2#8n=7 zlhzX_y45iVm2l3lQVB(D2>68|6_HQZ^^9W~zhaZRMt2;&+iJhrB3CTkbqf(Xr=dov@h69h*NFOk z?v}INMubtODUmSfo+Y*2aaso5Fv($Rbm9&tK&4d8BU|@64()D7cydz3b4TCc4`0=` z4aYBl;ci_gHZgjy6Pt6q^8vEdu)d`}^DVW9Z%NfaYMyJFdr%*KgGutAqObRe(+C_5 zkD$5pclyYQ z|A1++9%fZ7-osT@o9N-DswH~JsG872PVFQA7lpcjyEJC0*@zX5mx#^{%u-*^V-1T~ z$1=*uL!m#Tccg(yvfPXR=s^sL=P7+&03o}2Wq|b&aDomXbdvqKfcv}xl;{KeOnXT@ z#G?@AK2?vy%=D1gwqx0kT9M~bk6r$N!mU4PC!iakvQsKaB32GDvUG;Wl+rBw0hNEj zzUr3(rSLfPTc*go`aud$zMKNjJBFt|kt&|~b{jRaS)xvOz$WO`4(vi`mqNQ5*#7~Z CUIZxs literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualiseHandler.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualiseHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..3d41bdd34926d38e9222cb9f5c5711a13ae2f81e GIT binary patch literal 10890 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/VisualiseUtil.class b/bin/notifyz/hardcorefactions/utilities/visualise/VisualiseUtil.class new file mode 100644 index 0000000000000000000000000000000000000000..2bc6566e8eac64f9c1f5bbd0e08f84a0ede43164 GIT binary patch literal 5902 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 QVLspTn}>lJVnKQ2|045xPXGV_ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener$1.class b/bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..438645e9993b921e071f3289fba45ae3c82cfaf9 GIT binary patch literal 1512 zcmcgs>uwT36#k|l&}G{qmbO-{m!buFSGl7 zhwtfzCv3~rd{3Cd6WrC>!u54ixLn)SO|xV>b?#J!>v4-a=|U7?hFRNbXf?mp5}xK7 zO7NCA zj&H?r4(FqoVVL??&Q)B%MTU5Td&hAyOlGowO@M+~T#h15k@lQ-yidgy%+Uq$S5$%& zM=Dd@*W0>g>Q+O0RNLokQ-ll!3M=v5P8}pfL;+wq)8y z>sgT1inJ9}T14?d8Hw^9u{qf(*u#=KXr6MaT zMwtjYf?;Ia(~Z`ae$cHVW!v^0gWngjjVJ$n2A1TdP)%-HhH1OPYHV?@Y1dVhP-akV ztJ91RY+*4hWO@sMx2a3CP9t}FR>C%=x+vXJD;7O8Wm9)u?owsZRnY?$N+e{j0EwjR zlwhVlAbB5QQZJUB_LT!{qn|?vW&s I(s}xR0Sfb)&;S4c literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener$2.class b/bin/notifyz/hardcorefactions/utilities/visualise/WallBorderListener$2.class new file mode 100644 index 0000000000000000000000000000000000000000..defa22ad1b84ea5d04667e8eb779e76e908ce4f9 GIT binary patch literal 1887 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/protocol/BlockDig.class b/bin/notifyz/hardcorefactions/utilities/visualise/protocol/BlockDig.class new file mode 100644 index 0000000000000000000000000000000000000000..d51aa70739c098b49dfee06b8853e07c65b9f27d GIT binary patch literal 4436 zcmbtX>vtSw8UMY>CX;NY6xwdvtxdI1%5IW&+7e35wvl9WTiB#ASpx;MPG%>`G?Uq7 zb~ZF9B2p}%ct-@h;05unEoE!*=;p-ZP6+eb=xYK zTHeihIU{Fl{dUfnAFyT>gakT`+=9j@KW94D*_BP^qUm@AZCp3zO|LJj=RMOE*gTo( zo5&0foE}IG52wb41w=|Vo*j$B0d#H2f7q=3dHLe>-u9V4&WdS zHEVhSdqzVnzAm-%Dy3R}QMU8{GnJWS(+7bJldJ%kKK@nNw`j z@U%(KEgD|YHAizMP0LXXI48o zeTEDfEyro0mFY6tFcRoh@e$l7&|;M{4wFhOo|3lcSCPa(S-Ff2nX`6Nx+=G(;TX+y zYq?4`Ljqf?mZi(d9NLBv+^>MyZD-YL&0!S}fQg`mx_mI_+7xA5Eh~SPrW(YUjIfiW zRTE*s`oO?|bfk}BQo)3Pc9V%wMFtXD`v|Bmy&J{JwIqoCL7YTsB$CgL(sbbCDn5bJ0&2nZlDcD< zwr$dOq1eOH3_1)2(*nmfAg#|sMHb9mDg_M+t?ubeR~s`#g#wY!!cs6NaD1c428cw( z8O&FqlNCo`N3GwE>MZt_Zu?9ZR5-{9C=^Ii@Pn;ihR0(nTrhoXE|^Z%N1B{t1d|@K zXjRZu3|Bo_;n5$TQcz?LtU6)1`ixgDLyLz`-+OwZTPr(8QZ5C-8-|C+Rh-3A5b%N5 zGb2h}o1V77OzBh73Z}bgy4o_SK|ckQGk}!jQz|}-vvjN*tcvIGyg<|ALAu$ux|qx9 z=L>jI!53L*SLNgHR`Df#Ik0u$8Sz*u#q_-DN#FGJm9OIK3cj`$AAh%sZ{VfCY6JR$ zE`27$rfzMcjT9GjC$aj@KyHb9D2$i!ih^$m+`UGT8nR3~+h-VNp)h#XF!QnosCX5x z(ZBO9E6t?GRygD82C=f-u%B%5ODtRHb=B^mWuRj$lq;yfk$MN~R!-Rkv(xs947=uh zxxnqJ_OIIf$^QH-9|nkcf~@Uwal6JRD*?&~2<{8Mkpy}+Qal28U_#CM*`jyDG-S4+ zz-k~;5Ux_&>u{5DYzs7)l>eT!^n4@Zlk;||n3evMsj}RI4zESV=sH?HEbhN1}v@&S!YFZg6 zzr*0EXy^)fGm12wk2If;DCaL@w5O%x684rb9t}lXN|@?tjkf*~&vcT`qtVt9KG_qN zyrObB8ZKc*zU(W=hwvsIZGROHMMGENm9W^;Cdo6 zC-^B%c@8#yhMyx$BuV^&?>6EH;aB)IDgTBT)C$)NH_wh8^6bJLF@kj D=xjFP literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/utilities/visualise/protocol/BlockPlace.class b/bin/notifyz/hardcorefactions/utilities/visualise/protocol/BlockPlace.class new file mode 100644 index 0000000000000000000000000000000000000000..25aa2d8c3e4b9fb7dfe2ca5343aa2fef8bcddf64 GIT binary patch literal 3510 zcmbtWTXPge6#hEd?2u%VfRI2UAeV?6a#@f7k_AJu1c+`zATfyd$!sSXGMQOtXCuM; z6>lg$S>=;eR!Nm_p)hzU6koK;^2HZ_fMr=_`2s({%h$7;%`UPMba!W`r+fOG@0|0U z)93p?zxWD3C*IRgCa~XeeQSL7bac}2lBVm)al`a2*GWe+zGYj!CDYLvE1fZHD=nib z&-Go?wWGbZYfcT>hAB0K1X@jZI?5|GDIM$7;%jn7I(|AjWSCRZ?@1adUwQ)NljgX< z_C!h5hjUmC=CBOenF-5@3554rj^*Dg&>6Yq-7TX6p}3orm8eFI23?@z-(e@Lv@ad$ z4SAO9S^lh!TGSE5;E`hkJqdwriCfzr)38EdV~I^!CymUe2yi9pHLMb7zv;Wp48m-4 z+_vaw9SvA5P~Dq262JfPp+rx-PhfK?kc;|aRVYWJ4h>BLPeu~1HxV7nOifvSG!=M0 znhQWFQMoW*@2}Xyr8X4kZW*nFz*-#@2n*CDEJqGzrpKf=VvN~R;I@Qo8uqB+S?W1A z8S*Esv_NlZ5-gFua+hW!F73-Bt^sWMoNUL4R67g$rUT4armJ{+V(`trEz*+jLf*!EzS zHh1H&%CUaRD$23!`hf!n6p`-7fCko<=q(mU9fLSR8;D|bpfWO z3e$ES(qMIQ(DG`+Uti^M$&U))qdFeLV+^K%o|b;xa7=02 zlDk5Yhg8jzn9#suu#j~F2G2*!uystrqL!Y1I=sG6!NMCcMa(H3Hl|rL)6z)>mc=KT z1~i8CtAMU~TM8%hl6n>GTs)~ECD6Tu=o%?2XbytjK(Qws?H`;@KcGfBJg}6k@}$Ca zSlY>cUrsL+xOGLaies!$Wbl-R8G#))sR{=z3hpsYnNIheGG$6-s*Y2br7uz*Q+wEF z$1&ouJqhxgCx1my2-&GDslsLpJCk}kSLX!oF14{_sZ#w)DpwAh3SD1pI2pm7i$Db{ zgKpXud!=kNuZw*?i~_ZkYs%!pj6j(@C9v~m5O3r+qHIud7LQnVAh~1q(9Hz?<2=|~ zP>pkCH+C;o)C3V3Fj6_mRl{z^Gvz@`9r1OG-DHQV+H^y|!{aS(8|k!6Yj{UsO9@IW zb`n7+L}#iqhMv#1MA*pYqMX^wMnZKM9F=jbVHy7``82|D8SiVhwq8J0=rWd{D8GQ) zhA*j^PjUNPuwxznYXdnAl(U-OHCWHNhU{M4fen13lt2eVNxhr08p<|NkH)oYt@GGC zkCp-6ql0bXdF;4?J@bg|3e|^J;I9u6n)?#nC)z(pk3d^_e*H{as9;>NIKG5KT@_m| z;`Vvm*WSp5p>J_k-AB8^^`TFw^C&N6T?H>?Lo2V{y!sl$wY978&^#VFejZ!ZQ(bnv zzA?=C+S=^X^2Tu8!ZVC`%a8v3&zk z`3N2O7~3$%p5r2R;4*uOE7*l^c)I_HF8qWTe#Tzv>BjHakE<+{Dpbd)g+a)N>Kabt zX@+PS@jQcP>82X|g6Hr&Q8(cSynq)GB8qc(2`|%u)0o989EB;h0&a Enabled' + - '&bClass Info: www.website.com/%class%' + class-un-equiped: + - '&bClass: &l%class% &7-->&c Disabled' + archer: + enabled: true + use-colorful-armor: true + name: "Archer" + damage-percentage: 20 + speed-cooldown: 60 + equipment: + helmet: LEATHER_HELMET + chestplate: LEATHER_CHESTPLATE + leggings: LEATHER_LEGGINGS + boots: LEATHER_BOOTS + bard: + enabled: true + name: "Bard" + max-energy: 100 + energy-per-second: 1.0 + teammate-nearby: 25 + buff-cooldown: 10 + buff-duration: 5 + held-item-message: true + effect-message: + - '&7&m--------------------------------' + - ' &e&lEffect: %effect%' + - ' &e&lCost: %energycost%' + - '&7&m--------------------------------' + equipment: + helmet: GOLD_HELMET + chestplate: GOLD_CHESTPLATE + leggings: GOLD_LEGGINGS + boots: GOLD_BOOTS + miner: + enabled: true + name: "Miner" + invisibility-y: 30 + equipment: + helmet: IRON_HELMET + chestplate: IRON_CHESTPLATE + leggings: IRON_LEGGINGS + boots: IRON_BOOTS + rogue: + enabled: true + name: "Rogue" + speed-cooldown: 1 + jump-cooldown: 1 + equipment: + helmet: CHAINMAIL_HELMET + chestplate: CHAINMAIL_CHESTPLATE + leggings: CHAINMAIL_LEGGINGS + boots: CHAINMAIL_BOOTS + ghost: + enabled: true + name: "Ghost" + mode-cooldown: 48 + equipment: + helmet: CHAINMAIL_HELMET + chestplate: DIAMOND_CHESTPLATE + leggings: CHAINMAIL_LEGGINGS + boots: DIAMOND_BOOTS +classes-messages: + archer: + cannot-tag-archers: "&eYou cannot archer tag other archers." + speed-cooldown: "&cYou cannot use Archer speed for another &c&l%cooldown%" + bard: + cannot-equip-class: "&cYou cannot equip Bard Class whilst PVP Protected." + energy-announcer: "&b&lBard energy is now at: &a%energy%" + buff-used: "&eYou have just used &aBard Buff ðat cost you &l%cost% &eof your Energy" + buff-cooldown: "&cYou cannot use this Bard buff for another %cooldown% seconds." + buff-in-safezone: "&cYou may not use bard buffs in safe-zones." + no-enough-energy: "&cYou need at least &l%cost% &cenergy to use this Bard buff, whilst you only have %energy%." + ghost: + damage-near: "&eGhoster has taken damage in stealth mode near you: &7(20x20)" + cooldown: "&cYou cannot use Ghost mode for another %cooldown% seconds." + normal-mode: "&eYou are now in &aNormal &emode." + stealth-mode: "&eYou are now in &7Stealth &emode." + power-mode: "&eYou are now in &cPower &emode &7&o(5 seconds)&e." + miner: + invisibility-added: "&eMiner &6invisibility &ehas been added." + invisibility-removed: "&eMiner &6invisibility &ehas been removed." + rogue: + backstabbed-you: "&c%player% &ehas backstabbed you." + you-backstabbed: "&eYou have backstabbed &c%player%&e." + speed-cooldown: "&cYou cannot use Rogue speed for another %cooldown%." + jump-cooldown: "&cYou cannot use Rogue jump for another %cooldown%." +staffmode: + enabled: true + scoreboard-lines: true + items: + teleportation: + item: COMPASS + amount: 1 + data: 0 + name: "&bTeleport Compass" + lore: + - "&7Right click block: Move through" + - "&7Left click: Move to block in line of sight" + slot: 0 + inspection: + item: BOOK + amount: 1 + data: 0 + name: "&bInspection Tool" + lore: + - "&7Right click to inspect player inventory" + slot: 1 + freeze: + item: ICE + amount: 1 + data: 0 + name: "&bFreeze Player" + lore: + - "&7Right click to freeze player" + slot: 4 + worldedit: + item: WOOD_AXE + amount: 1 + data: 0 + name: "&bWorldEdit Wand" + lore: + - "&7Use this to change blocks" + slot: 2 + xrayer-gui: + item: DIAMOND_PICKAXE + amount: 1 + data: 0 + name: "&bXrayer Gui" + lore: + - "&7Right click to open inventory with miners" + slot: 6 + random-teleportation: + item: RECORD_10 + amount: 1 + data: 0 + name: "&bRandom Teleport" + lore: + - "&7Right click to random teleport" + slot: 8 + staff-gui: + item: SKULL_ITEM + amount: 1 + data: 3 + name: "&bOnline Staff" + lore: + - "&7Right click to random teleport" + slot: 3 + vanish-enabled: + item: INK_SACK + amount: 1 + data: 10 + name: "&bVanished: &aTrue" + lore: + - "&7Right click to disable vanish" + slot: 7 + vanish-disabled: + item: INK_SACK + amount: 1 + data: 8 + name: "&bVanished: &cFalse" + lore: + - "&7Right click to enable vanish" + slot: 7 +scoreboard: + archer-timer: "Archer Mark" + archer-time: "10s" + archer-color: "&e&l" + combat-timer: "Spawn Tag" + combat-time: "30s" + combat-color: "&c&l" + enderpearl-timer: "Enderpearl" + enderpearl-time: "16s" + enderpearl-color: "&3&l" + gapple-timer: "Golden Apple" + gapple-time: "6h" + gapple-color: "&6&l" + apple-timer: "Apple" + apple-time: "30s" + apple-color: "&c&l" + warmup-timer: "Warmup" + warmup-color: "&a&l" + home-timer: "Home" + home-time: "10s" + home-color: "&9&l" + logout-timer: "Logout" + logout-time: "25s" + logout-color: "&4&l" + pvp-timer: "PvP Timer" + pvp-time: "1h" + pvp-color: "&a&l" + stuck-timer: "Stuck" + stuck-time: "3min" + stuck-color: "&4&l" + koth-color: "&9&l" + palace-color: "&6&l" + dtc-color: "&2&l" + focus-nametag-color: "&5&l" +scoreboard-lines: + bars: true + kitmap: + statistics: "&3&lStatistics" + balance: " &7\xbb &bBalance&7: &f%balance%" + kills: " &7\xbb &bKills&7: &f%kills%" + deaths: " &7\xbb &bDeaths&7: &f%deaths%" + killstreaks: " &7\xbb &bKillStreak&7: &f%killstreak%" + class-name: "&e&lClass&7: &c%class%" + stattrak: " &8\xbb &3&lStatTrak&7: &c%kills%" + cobwebs: " &8\xbb &6&lCobwebs&7: &c%cooldown%" + destroy-the-core: "&2&l%dtc-name%&7: &a%points%/%maxpoints%" + miner: + diamonds: " &6» &bDiamonds&7: &c%diamonds%" + cobble-enabled: " &6» &bCobble&7: &aTrue" + cobble-disabled: " &6» &bCobble&7: &cFalse" + invisibility-enabled: " &6» &bInvisible&7: &aTrue" + invisibility-disabled: " &6» &bInvisible&7: &cFalse" + bard: + buff-delay: "&a&lBuff Delay&7: &c%cooldown%" + bard-energy: "&b&lBard Energy&7: &c%energy%" + archer: + speed-cooldown: " &6» &eSpeed&7: &c%cooldown%" + rogue: + speed-cooldown: " &6» &eSpeed&7: &c%cooldown%" + jump-cooldown: " &6» &eJump&7: &c%cooldown%" + ghost: + normal-mode: "&aNormal" + stealth-mode: "&7Stealth" + power-mode: "&c&lPower" + active-mode: " &6\xbb &eMode&7: %mode%" + cooldown: " &6\xbb &eCooldown&7: &c%cooldown%" + staff-mode: + vanish-enabled: " &6%doublearrow% &eVanished&7: &aTrue" + vanish-disabled: " &6%doublearrow% &eVanished&7: &cFalse" + chat-mode-staff: " &6%doublearrow% &eChat&7: &aStaffChat" + chat-mode-global: " &6%doublearrow% &eChat&7: &cGlobalChat" + online: " &6%doublearrow% &eOnline&7: &c%online%" + ticks-per-second: " &6%doublearrow% &eTPS&7: &c%tps%" + eotw: + beginning: " &8» &cEOTW begins in&7: &c%time%" + cappable: " &8» &cCappable in&7: &c%time%" + sotw: + title: "&a&lStart of the World" + time-left: " &8» &c%time%" + fury: + title: "&6&lFury Event &7(%fury%)" + cap-time: "&e%formattedtime%" + switch-time: "&e%switchtime%" + leaderboard: "&6%count%. &e%faction%&7: &e%points% %difference%" +cmd-messages: + no-permission: "&cYou don't have access to this command." + join-message: + - '&7&m%line%' + - '&eWelcome to %title%' + - " &6\xbb &eFactions Size: &7%factionsinfo%" + - " &6\xbb &eMap Kit: &7Protection: %protection% / Sharpness: %sharpness%" + - " &6\xbb &eTeamspeak: &7%teamspeak%" + - " &6\xbb &eWebsite: &7%website%" + - '&7&m%line%' + - '&m' + cobble-disabled: "&7You have disabled cobble picking." + cobble-enabled: "&7You have enabled cobble picking." + coordinates: + - '&7&m--------------------------------' + - ' &e&lUse config.yml to edit coordinations' + - '&7&m--------------------------------' + focus-no-yourself: "&7You can't focus yourself!" + focus-no-faction: "&7You are not in a team!" + focus-target-no-faction: "&7Target is not in a team!" + focus-player-not-online: "&cThat player is not online." + focused-target: "&b&l%target% &7has been focused by &b&l%player%" + hidestaff-show: "&aYou will now be able to see the Staff." + hidestaff-hide: "&cYou will now not be able to see the Staff." + unfocused-target: "&b&l%player% &7has unfocused %target%." + logout-started: "&cYou are &4&lLoging out &cin 30 seconds.." + logout-already-active: "&cYour &4&lLogout &ctimer is already active." + mobdrops-enabled: "&7You have enabled mobdrops picking." + mobdrops-disabled: "&7You have disabled mobdrops picking." + playtime: "&6%target% &ehas been playing for &6%time% ðis map." + staffmode-enabled: "&eYou have enabled &6StaffMode" + staffmode-disabled: "&eYou have disabled &6StaffMode" + staffrevive-target-not-deathbanned: "&c%target% is not deathbanned" + staffrevive-target-revived: "&c%target% &ehas been revived." + request-cooldown: "&cYou still have cooldown %time% for using request" + request-message: "&7[REQUEST] &6&l%player% &chas requested help: &6&l%message%" + report-cooldown: "&cYou still have cooldown for %time%" + report-no-reason: "&cPlease specify reason." + report-message: "&c&lREPORT > &6%reporter% &chas reported &6%hacker% &cfor &6%reason%" + alert-message: "&c&lALERT > %message%" + feed-message: "&eYou have fed yourself" + flight-enabled: "&eYou have enabled your flight." + flight-disabled: "&eYou have disabled your flight." + freeze-no-yourself: "&cYou cannot freeze yourself" + freeze-no-staffmember: "&cYou cannot freeze staffmember." + freeze-player-not-found: "&cPlayer named %target% was not found." + freeze-message: + - "&8&m%line%" + - "" + - "" + - "&6You have been &cFROZEN." + - "&6Join our &cteamspeak, you have 3 minutes." + - "" + - "" + - "&8&m%line%" + invsee-player-not-found: "&cPlayer not found." + invsee-error: "&cERROR: You cannot modify inventory of player that are same or higher ranks than you." + list-message: "&cThere is currently %onlineplayers% online players out of %maxplayers%" + lff-message: + - '&7&m--------------------------------' + - '&m' + - '&6%player% &eis looking to join &6&lFACTION' + - '&eYou can also use placeholder %playerdisplayname%!' + - '&7&m--------------------------------' + removeperm-message: "&aSuccessfully removed %target%'s permissions!" + reset-reclaim-message: "&cYou have succesfully reset %target%'s reclaim settings." + reclaim-already: "&cYou have already reclaimed your donator perks!" + reclaim-no-rank: "&cYou do not have anything to reclaim!" + revive-broadcast: "&7 » &c&l%player% &eused their Diamond rank to revive %target%" + revive2-broadcast: "&7 » &c&l%player% &eused their Gold rank to revive %target%" + rename-message: "&aSuccessfully renamed item to: %name%" + panic-message: + - "&8&m----------------" + - "" + - "&4&l%player% &chas requested Panic Assistance!" + - "" + - "&8&m----------------" + spawn-teleport-message: "&aYou have been teleported to Spawn." + spawner-received: "&7You have received &c%spawner% spawner." + teleport-top-message: "&cYou have been teleported to the top." + vanish-enabled: "&7You have enabled your vanish mode." + vanish-disabled: "&7You have disabled your vanish mode." + lives-check-deathban: "&c%target% is not deathbanned." + lives-clear-deathbans: "&aAll deathbans have been successfully wipped." + lives-revive-not-deathbanned: "&c%target% is not deathbanned." + lives-revive-kitmap-on: "&cYou cannot revive players during KitMap" + lives-revive-eotw-on: "&cYou cannot revive players during End of the World" + lives-revive-enemy: "&cYou have used one life to revive:&r %target%" + lives-revive-teammate: "&cYou have used one life to revive:&r %target%" + lives-set-error: "&c%argument% is not a number." + lives-set-message: "&cYou have set %target%'s lives to %amount%" + bed-bombing-portal: "&cYou may not bedbomb near portal" + book-deenchant: "&eYou have reversed book's form." + crowbar-error: "&eYou can only use Crowbar in overworld." + crowbar-spawner-error: "This Crowbar has no more Spawner uses." + crowbar-endportal-error: "This Crowbar has no more Endportal uses." + deathban-eotw: "&cThanks for playing on our Map 1" + deathban-kick: "&cDeathbanned for %remaining% (%reason%)" + deathban-active: "&cYou have died because %reason% at %location% (%remaining%)" + deathban-active-with-lives: "&cYou have died because %reason% at %location% (%remaining%) You have %lives% lives, reconnect in %livesdelay%" + deathban-used-life: "You have used life to bypass deathban, you have now %lives% lives." + safezone-enderpearl-error: "&cYou may not pearl into the Safezones, your pearl has been refunded." + safezone-attack-error: "&cYou cannot attack players in Safezone" + safezone-out-attack-error: "&cYou cannot attack players that are in Safezone" + staff-connected: "&a&lStaff Online: &f%player%" + staff-disconnected: "&a&lStaff Offline: &f%player%" + subclaim-already-placed: "&cThere is already subclaim on this block: %block%" + subclaim-player-error: "&cSubclaim requires at least one name inserted." + subclaim-leader-error: "&cOnly leader can create LEADER subclaims." + sotw-start-error: "%argument% &cis not valid duration" + sotw-already-active: "&cSOTW is already active, /sotw cancel to end it." + sotw-started: "&cYou have started SOTW for the %time%" + sotw-start: + - "&aStart of the world has started &7(%time%)" + sotw-end: + - "&cStart of the world has ended. &4&lGOOD LUCK TO EVERYONE!" + void-fix-message: "&aYou were saved from falling in void in Overworld." + eotw-started: "&4&LEOTW &chas started." + eotw-claim-error: "&cYou cannot claim during EOTW." +faction-messages: + faction-show: + header: + - ' %faction% &7(%faction-online%/%faction-online-max%) &8- &aHome: &c%home% &7[%status%]' + allies: + - ' &eAllies: %allies%' + leader: + - ' &eLeader: %leader%' + coleaders: + - ' &eCo-Leaders: %co-leaders%' + captains: + - ' &eCaptains: %captains%' + members: + - ' &eMembers: %members%' + use-announcement: false + announcement: + - ' &eAnnouncement: &c%announcement%' + balance: + - ' &eBalance: &c%balance% &eKills: &c%factionkills%' + use-lives: false + lives: + - ' &eLives: &c%lives%' + koth-captures: + - ' &eKoth Captures: &c%koths%' + conquest-captures: + - ' &eConquest Captures: &c%conquests%' + citadel-captures: + - ' &eCitadel Captures: &c%citadels%' + fury-captures: + - ' &eFury Captures: &c%furies%' + palace-captures: + - ' &ePalace Captures: &c%palaces%' + use-founded: false + founded: + - ' &eFounded at: &c%founded%' + dtr: + - ' &eDeaths Until Raidable: [%dtr%/%maxdtr%]' + regen: + - ' &eTime Until Regen: &c%regen%' + faction-member-format: "%color%%name%&e[&a%kills%&e]" + ally-format: "%ally% &e[%ally-online%/%ally-online-max%]" + factionless-prefix: "*" + entering: '&eNow entering: %tofaction%&7(%deathbantofaction%&7)' + leaving: '&eNow leaving: %fromfaction%&7(%deathbanfromfaction%&7)' + created: "&eTeam %faction% &ehas been created by %player%" + disbanded: "&eTeam %faction% &ehas been disbanded by %player%" + renamed: "&eTeam %faction% &ehas been renamed to %factionnewname%" + member-online: "&a&lMember Online: &7%player%" + member-offline: "&c&lMember Offline: &7%player%" + use-default-help: true + custom-help: + - '&6&m--------------------------------------------------' + - '&9&lTeam Help' + - '&7&m--------------------------------------------------' + - '&9General commands' + - '&e/f create &7- Create a new faction' + - '&e/f join &7- Join to faction' + - '&e/f leave &7- Leave your current faction' + - '&e/f home &7- Teleport to your faction home' + - '&e/f d &7- Give money to your faction' + - '&m' + - '&9Information commands' + - '&e/f who &7- Display faction information' + - '&e/f map &7- Show nearby claims' + - '&e/f seechunk &7- Show chunk' + - '&e/f list &7- Show list of factions online' + - '&e/f top &7- Get top factions' + - '&m' + - '&9Moderator commands' + - '&e/f invite &7- Invite player to your faction' + - '&e/f deinvite &7- Revoke player invitation' + - '&e/f showinvites &7- List all pending invites' + - '&e/f kick &7- Kick player from faction' + - '&e/f title <#> &7Set title to player' + - '&e/f announce &7- Announce message to your faction' + - '&e/f claim &7- Start claim for your faction' + - '&e/f claimline <#> &7- Claim <#> line for your faction' + - '&e/f autoclaim &7- Start autoclam for your faction' + - '&e/f sethome &7- Sethome for your faction' + - '&e/f w &7- Take money from your faction' + - '&m' + - '&9Leader commands' + - '&e/f mod &7- Promote/Demote members/moderators' + - '&e/f unclaim &7- Unclaim land' + - '&e/f unclaimall &7- Unclaim all your lands' + - '&e/f tag &7- Rename your faction' + - '&e/f disband &7- Disband your faction' + - '&7&m--------------------------------------------------' + - '&6&m--------------------------------------------------' + warzone: + block-place-build-radius: 300 + requires-both-quadrants: false +kit-messages: + use-default-help: false + custom-help: + - '' + - '' + - '&3&lYou can edit this' + - '&c&lIN CONFIG!' +koth-messages: + controlling: "&cYou are now controlling &4%koth%" + controlling-lost: "&cYou are no longer controlling &4%koth%" + control-lost: "&8[&4&LKOTH&8] &4%player% &chas lost control of &4%koth% &c(%remaining%)" + someone-controlling: "&8[&4&LKOTH&8] &cSomeone is controlling &4%koth% &c(%remaining%)" +conquest-messages: + faction-required: "&cYou must be in faction to contest Conquest." + conquest-started: "&8[&3&lCONQUEST&8] &3%conquest% &9can now be contested." + attempting-control: "&8[&3&lCONQUEST&8] &9Attempting to control %conquest% &7(%remaining%)" + player-knocked: "&8[&3&lCONQUEST&8] &3%player% &9was knocked off %conquest%" + gained-points: "&8[&3&lCONQUEST&8] &3%faction% &9has gained 1 point for capturing %conquest% &7(%points%/%maxpoints%)" + lost-points: "&8[&3&lCONQUEST&8] &3%faction% &9has lost %deathpoints% because %player% died &7(%points%/%maxpoints%)" +citadel-messages: + controlling: "&dYou are now controlling &5%citadel%" + controlling-lost: "&dYou are no longer controlling &5%citadel%" + control-lost: "&8[&5&lCitadel&8] &5%player% &dhas lost control of &5%citadel% &d(%remaining%)" + someone-controlling: "&8[&5&lCitadel&8] &dSomeone is controlling 5%citadel% &d(%remaining%)" +palace-messages: + controlling: "&eYou are now controlling &6%palace%" + controlling-lost: "&eYou are no longer controlling &6%palace%" + control-lost: "&8[&6&lPalace&8] &6%player% &ehas lost control of &6%palace% &e(%remaining%)" + someone-controlling: "&8[&6&lPalace&8] &eSomeone is controlling &6%palace% &e(%remaining%)" +fury-messages: + faction-required: "&cYou must be in faction to contest Fury." + fury-started: "&6&lFURY &8> &6%fury% &ecan now be contested." + capzone-switch: "&6&lFURY &8> &eCapzone has been switched. &6%capzone% &eis new capzone." + attempting-control: "&6&lFURY &8> &eAttempting to control %fury% &7(%remaining%)" + player-knocked: "&6&lFURY &8> &e%player% &6was knocked off %fury%" + gained-points: "&6&lFURY &8> &6%faction% &ehas gained 1 point for capturing %fury% &7(%points%/%maxpoints%)" + lost-points: "&6&lFURY &8> &e%faction% &6has lost %deathpoints% because %player% died &7(%points%/%maxpoints%)" +miscellaneous-messages: + vanish-place-error: "&cYou cannot place blocks while you are vanished." + vanish-break-error: "&cYou cannot break blocks while you are vanished." + vanish-drop-item-error: "&cYou cannot drop items while you are in StaffMode." + wall-timer-notifier: "&cThis wall will prevent you from entering %claim% whilst you have your %timer% timer." +chest-configuration: + size: 9 + autosave: 10 + silentAutosave: false + clearOnDeath: false + dropOnDeath: false + permission-use-chest: "chest.use" + permission-others-chest: "chest.admin" + permission-bypass: "chest.bypass" + permission-clear-chest: "chest.clear" + permission-others-clear: "chest.admin" + permission-use-disposal: "disposal.use" + permission-savechest: "chest.savechest" + permission-savechests: "chest.savechests" + permission-use-workbench: "workbench.use" +chest-messages: + prefix: "&c[Chests]" + no-permission: "You don't have enough permissions." + no-safezone: "&cYou can only use chests in safezone." + gamemode-error: "&cYou cannot use chests in gamemode!" + cleared-chest: "&aSuccessfully clear your chest." +tablist: + player-info: "&ePlayer Info" + kill-counter: "&7Kills: " + death-counter: "&7Deaths: " + + location: "&eLocation" + + faction-info: "&eFaction Info" + dtr: "&eDTR: " + faction-online: "&eOnline: " + faction-balance: "&eBalance: $" + hq: "&eHQ: " + + next-koth: "&eNext KOTH" + none-scheduled: "&7None Scheduled" + + title: "&6&lMC-Market" + players-online: "&ePlayers Online" + faction-name-color: "&e" + + faction-list: "&eFaction List" + + end-portals: "&eEnd Portals:" + end-portals-coordinates: "&71000, 1000" + end-portals-quadrants: "&7in each quadrant" + + kit: "&eKit:" + kit-info: "&7Prot 1, Sharp 1" + + border: "&eBorder:" + border-info: "&73000" + + online-players: "&ePlayers Online:" + online-players-info: "&7%online-players%" + + citadel-cappers: "&eCitadel Cappers:" + citadel-cappers-info: "&7NoLimit" \ No newline at end of file diff --git a/src/event-schedules.txt b/src/event-schedules.txt new file mode 100644 index 0000000..92fb6ce --- /dev/null +++ b/src/event-schedules.txt @@ -0,0 +1,2 @@ +# year,month,day,hour,minute:eventName (24 hour clock) +#2017,08,25,03,30,PM:Pagoda This would run event named 'Pagoda' at 3:30AM on the 25th of August, 2017. diff --git a/src/faction-users.yml b/src/faction-users.yml new file mode 100644 index 0000000..bf82e98 --- /dev/null +++ b/src/faction-users.yml @@ -0,0 +1 @@ +users: {} diff --git a/src/factions.yml b/src/factions.yml new file mode 100644 index 0000000..10bc293 --- /dev/null +++ b/src/factions.yml @@ -0,0 +1 @@ +factions: {} diff --git a/src/items.csv b/src/items.csv new file mode 100644 index 0000000..56c277d --- /dev/null +++ b/src/items.csv @@ -0,0 +1,7449 @@ +#version: TeamCity +#If you change this file, it will not be automatically updated after the next release. +#item,id,metadata +stone,1,0 +sstone,1,0 +smoothstone,1,0 +rock,1,0 +grass,2,0 +greendirt,2,0 +greenearth,2,0 +greenland,2,0 +dirt,3,0 +earth,3,0 +land,3,0 +grasslessdirt,3,1 +grasslessearth,3,1 +grasslessland,3,1 +podzol,3,2 +cobblestone,4,0 +cstone,4,0 +cobble,4,0 +wood,5,0 +plank,5,0 +woodenplank,5,0 +woodplank,5,0 +wplank,5,0 +plankwooden,5,0 +plankwood,5,0 +plankw,5,0 +oakplank,5,0 +oakwoodenplank,5,0 +oakwoodplank,5,0 +oakwplank,5,0 +oakplankwooden,5,0 +oakplankwood,5,0 +oakplankw,5,0 +oplank,5,0 +owoodenplank,5,0 +owoodplank,5,0 +owplank,5,0 +oplankwooden,5,0 +oplankwood,5,0 +oplankw,5,0 +pineplank,5,1 +pinewoodenplank,5,1 +pinewoodplank,5,1 +pinewplank,5,1 +pineplankwooden,5,1 +pineplankwood,5,1 +pineplankw,5,1 +pplank,5,1 +pwoodenplank,5,1 +pwoodplank,5,1 +pwplank,5,1 +pplankwooden,5,1 +pplankwood,5,1 +pplankw,5,1 +darkplank,5,1 +darkwoodenplank,5,1 +darkwoodplank,5,1 +darkwplank,5,1 +darkplankwooden,5,1 +darkplankwood,5,1 +darkplankw,5,1 +dplank,5,1 +dwoodenplank,5,1 +dwoodplank,5,1 +dwplank,5,1 +dplankwooden,5,1 +dplankwood,5,1 +dplankw,5,1 +spruceplank,5,1 +sprucewoodenplank,5,1 +sprucewoodplank,5,1 +sprucewplank,5,1 +spruceplankwooden,5,1 +spruceplankwood,5,1 +spruceplankw,5,1 +splank,5,1 +swoodenplank,5,1 +swoodplank,5,1 +swplank,5,1 +splankwooden,5,1 +splankwood,5,1 +splankw,5,1 +birchplank,5,2 +birchwoodenplank,5,2 +birchwoodplank,5,2 +birchwplank,5,2 +birchplankwooden,5,2 +birchplankwood,5,2 +birchplankw,5,2 +bplank,5,2 +bwoodenplank,5,2 +bwoodplank,5,2 +bwplank,5,2 +bplankwooden,5,2 +bplankwood,5,2 +bplankw,5,2 +lightplank,5,2 +lightwoodenplank,5,2 +lightwoodplank,5,2 +lightwplank,5,2 +lightplankwooden,5,2 +lightplankwood,5,2 +lightplankw,5,2 +lplank,5,2 +lwoodenplank,5,2 +lwoodplank,5,2 +lwplank,5,2 +lplankwooden,5,2 +lplankwood,5,2 +lplankw,5,2 +whiteplank,5,2 +whitewoodenplank,5,2 +whitewoodplank,5,2 +whitewplank,5,2 +whiteplankwooden,5,2 +whiteplankwood,5,2 +whiteplankw,5,2 +wwoodenplank,5,2 +wwoodplank,5,2 +wwplank,5,2 +wplankwooden,5,2 +wplankwood,5,2 +wplankw,5,2 +jungleplank,5,3 +junglewoodenplank,5,3 +junglewoodplank,5,3 +junglewplank,5,3 +jungleplankwooden,5,3 +jungleplankwood,5,3 +jungleplankw,5,3 +jplank,5,3 +jwoodenplank,5,3 +jwoodplank,5,3 +jwplank,5,3 +jplankwooden,5,3 +jplankwood,5,3 +jplankw,5,3 +forestplank,5,3 +forestwoodenplank,5,3 +forestwoodplank,5,3 +forestwplank,5,3 +forestplankwooden,5,3 +forestplankwood,5,3 +forestplankw,5,3 +fplank,5,3 +fwoodenplank,5,3 +fwoodplank,5,3 +fwplank,5,3 +fplankwooden,5,3 +fplankwood,5,3 +fplankw,5,3 +acaciaplank,5,4 +acaciawoodenplank,5,4 +acaciawoodplank,5,4 +acaciawplank,5,4 +acaciaplankwooden,5,4 +acaciaplankwood,5,4 +acaciaplankw,5,4 +aplank,5,4 +awoodenplank,5,4 +awoodplank,5,4 +awplank,5,4 +aplankwooden,5,4 +aplankwood,5,4 +aplankw,5,4 +darkoakplank,5,5 +darkoakwoodenplank,5,5 +darkoakwoodplank,5,5 +darkoakwplank,5,5 +darkoakplankwooden,5,5 +darkoakplankwood,5,5 +darkoakplankw,5,5 +doakplank,5,5 +doakwoodenplank,5,5 +doakwoodplank,5,5 +doakwplank,5,5 +doakplankwooden,5,5 +doakplankwood,5,5 +doakplankw,5,5 +doplank,5,5 +dowoodenplank,5,5 +dowoodplank,5,5 +dowplank,5,5 +doplankwooden,5,5 +doplankwood,5,5 +doplankw,5,5 +sapling,6,0 +treesapling,6,0 +logsapling,6,0 +trunksapling,6,0 +woodsapling,6,0 +oaktreesapling,6,0 +oaklogsapling,6,0 +oaktrunksapling,6,0 +oakwoodsapling,6,0 +osapling,6,0 +otreesapling,6,0 +ologsapling,6,0 +otrunksapling,6,0 +owoodsapling,6,0 +darksapling,6,1 +darktreesapling,6,1 +darklogsapling,6,1 +darktrunksapling,6,1 +darkwoodsapling,6,1 +sprucesapling,6,1 +sprucetreesapling,6,1 +sprucelogsapling,6,1 +sprucetrunksapling,6,1 +sprucewoodsapling,6,1 +pinesapling,6,1 +pinetreesapling,6,1 +pinelogsapling,6,1 +pinetrunksapling,6,1 +pinewoodsapling,6,1 +dsapling,6,1 +dtreesapling,6,1 +dlogsapling,6,1 +dtrunksapling,6,1 +dwoodsapling,6,1 +ssapling,6,1 +streesapling,6,1 +slogsapling,6,1 +strunksapling,6,1 +swoodsapling,6,1 +psapling,6,1 +ptreesapling,6,1 +plogsapling,6,1 +ptrunksapling,6,1 +pwoodsapling,6,1 +birchsapling,6,2 +birchtreesapling,6,2 +birchlogsapling,6,2 +birchtrunksapling,6,2 +birchwoodsapling,6,2 +lightsapling,6,2 +lighttreesapling,6,2 +lightlogsapling,6,2 +lighttrunksapling,6,2 +lightwoodsapling,6,2 +whitesapling,6,2 +whitetreesapling,6,2 +whitelogsapling,6,2 +whitetrunksapling,6,2 +whitewoodsapling,6,2 +bsapling,6,2 +btreesapling,6,2 +blogsapling,6,2 +btrunksapling,6,2 +bwoodsapling,6,2 +lsapling,6,2 +ltreesapling,6,2 +llogsapling,6,2 +ltrunksapling,6,2 +lwoodsapling,6,2 +wsapling,6,2 +wtreesapling,6,2 +wlogsapling,6,2 +wtrunksapling,6,2 +wwoodsapling,6,2 +junglesapling,6,3 +jungletreesapling,6,3 +junglelogsapling,6,3 +jungletrunksapling,6,3 +junglewoodsapling,6,3 +forestsapling,6,3 +foresttreesapling,6,3 +forestlogsapling,6,3 +foresttrunksapling,6,3 +forestwoodsapling,6,3 +jsapling,6,3 +jtreesapling,6,3 +jlogsapling,6,3 +jtrunksapling,6,3 +jwoodsapling,6,3 +fsapling,6,3 +ftreesapling,6,3 +flogsapling,6,3 +ftrunksapling,6,3 +fwoodsapling,6,3 +acaciasapling,6,4 +acaciatreesapling,6,4 +acacialogsapling,6,4 +acaciatrunksapling,6,4 +acaciawoodsapling,6,4 +asapling,6,4 +atreesapling,6,4 +alogsapling,6,4 +atrunksapling,6,4 +awoodsapling,6,4 +darkoaksapling,6,5 +darkoaktreesapling,6,5 +darkoaklogsapling,6,5 +darkoaktrunksapling,6,5 +darkoakwoodsapling,6,5 +doaksapling,6,5 +doaktreesapling,6,5 +doaklogsapling,6,5 +doaktrunksapling,6,5 +dosapling,6,5 +dowoodsapling,6,5 +dotreesapling,6,5 +dologsapling,6,5 +dotrunksapling,6,5 +bedrock,7,0 +oprock,7,0 +opblock,7,0 +adminblock,7,0 +adminrock,7,0 +adminium,7,0 +water,8,0 +stationarywater,9,0 +stillwater,9,0 +swater,9,0 +lava,10,0 +stationarylava,11,0 +stilllava,11,0 +slava,11,0 +sand,12,0 +redsand,12,1 +rsand,12,1 +gravel,13,0 +goldore,14,0 +oregold,14,0 +gore,14,0 +oreg,14,0 +ogold,14,0 +goldo,14,0 +ironore,15,0 +oreiron,15,0 +irono,15,0 +oiron,15,0 +steelore,15,0 +oresteel,15,0 +steelo,15,0 +osteel,15,0 +iore,15,0 +orei,15,0 +sore,15,0 +ores,15,0 +coalore,16,0 +orecoal,16,0 +coalo,16,0 +ocoal,16,0 +core,16,0 +tree,17,0 +log,17,0 +trunk,17,0 +oak,17,0 +oaktree,17,0 +oaklog,17,0 +oaktrunk,17,0 +oakwood,17,0 +otree,17,0 +olog,17,0 +otrunk,17,0 +owood,17,0 +pine,17,1 +pinetree,17,1 +pinelog,17,1 +pinetrunk,17,1 +pinewood,17,1 +darktree,17,1 +darklog,17,1 +darktrunk,17,1 +darkwood,17,1 +spruce,17,1 +sprucetree,17,1 +sprucelog,17,1 +sprucetrunk,17,1 +sprucewood,17,1 +dtree,17,1 +dlog,17,1 +dtrunk,17,1 +dwood,17,1 +stree,17,1 +slog,17,1 +strunk,17,1 +swood,17,1 +ptree,17,1 +plog,17,1 +ptrunk,17,1 +pwood,17,1 +birch,17,2 +birchtree,17,2 +birchlog,17,2 +birchtrunk,17,2 +birchwood,17,2 +whitetree,17,2 +whitelog,17,2 +whitetrunk,17,2 +whitewood,17,2 +lighttree,17,2 +lightlog,17,2 +lighttrunk,17,2 +lightwood,17,2 +btree,17,2 +blog,17,2 +btrunk,17,2 +bwood,17,2 +wtree,17,2 +wlog,17,2 +wtrunk,17,2 +wwood,17,2 +ltree,17,2 +llog,17,2 +ltrunk,17,2 +lwood,17,2 +jungletree,17,3 +junglelog,17,3 +jungletrunk,17,3 +junglewood,17,3 +jungle,17,3 +forest,17,3 +foresttree,17,3 +forestlog,17,3 +foresttrunk,17,3 +forestwood,17,3 +jtree,17,3 +jlog,17,3 +jtrunk,17,3 +jwood,17,3 +ftree,17,3 +flog,17,3 +ftrunk,17,3 +fwood,17,3 +leaves,18,0 +leaf,18,0 +treeleaves,18,0 +logleaves,18,0 +trunkleaves,18,0 +woodleaves,18,0 +oakleaves,18,0 +oakleaf,18,0 +oleaves,18,0 +oleaf,18,0 +oaktreeleaves,18,0 +oaklogleaves,18,0 +oaktrunkleaves,18,0 +oakwoodleaves,18,0 +otreeleaves,18,0 +ologleaves,18,0 +otrunkleaves,18,0 +owoodleaves,18,0 +treeleaf,18,0 +logleaf,18,0 +trunkleaf,18,0 +woodleaf,18,0 +oaktreeleaf,18,0 +oaklogleaf,18,0 +oaktrunkleaf,18,0 +oakwoodleaf,18,0 +otreeleaf,18,0 +ologleaf,18,0 +otrunkleaf,18,0 +owoodleaf,18,0 +pineleaves,18,1 +pineleaf,18,1 +pleaves,18,1 +pleaf,18,1 +pinetreeleaves,18,1 +pinelogleaves,18,1 +pinetrunkleaves,18,1 +pinewoodleaves,18,1 +ptreeleaves,18,1 +plogleaves,18,1 +ptrunkleaves,18,1 +pwoodleaves,18,1 +spruceleaves,18,1 +spruceleaf,18,1 +sleaves,18,1 +sleaf,18,1 +sprucetreeleaves,18,1 +sprucelogleaves,18,1 +sprucetrunkleaves,18,1 +sprucewoodleaves,18,1 +streeleaves,18,1 +slogleaves,18,1 +strunkleaves,18,1 +swoodleaves,18,1 +darkleaves,18,1 +darkleaf,18,1 +dleaves,18,1 +dleaf,18,1 +darktreeleaves,18,1 +darklogleaves,18,1 +darktrunkleaves,18,1 +darkwoodleaves,18,1 +dtreeleaves,18,1 +dlogleaves,18,1 +dtrunkleaves,18,1 +dwoodleaves,18,1 +sprucetreeleaf,18,1 +sprucelogleaf,18,1 +sprucetrunkleaf,18,1 +sprucewoodleaf,18,1 +streeleaf,18,1 +slogleaf,18,1 +strunkleaf,18,1 +swoodleaf,18,1 +pinetreeleaf,18,1 +pinelogleaf,18,1 +pinetrunkleaf,18,1 +pinewoodleaf,18,1 +ptreeleaf,18,1 +plogleaf,18,1 +ptrunkleaf,18,1 +pwoodleaf,18,1 +darktreeleaf,18,1 +darklogleaf,18,1 +darktrunkleaf,18,1 +darkwoodleaf,18,1 +dtreeleaf,18,1 +dlogleaf,18,1 +dtrunkleaf,18,1 +dwoodleaf,18,1 +birchleaves,18,2 +birchleaf,18,2 +bleaves,18,2 +bleaf,18,2 +birchtreeleaves,18,2 +birchlogleaves,18,2 +birchtrunkleaves,18,2 +birchwoodleaves,18,2 +btreeleaves,18,2 +blogleaves,18,2 +btrunkleaves,18,2 +bwoodleaves,18,2 +lightleaves,18,2 +lightleaf,18,2 +lleaves,18,2 +lleaf,18,2 +lighttreeleaves,18,2 +lightlogleaves,18,2 +lighttrunkleaves,18,2 +lightwoodleaves,18,2 +ltreeleaves,18,2 +llogleaves,18,2 +ltrunkleaves,18,2 +lwoodleaves,18,2 +whiteleaves,18,2 +whiteleaf,18,2 +wleaves,18,2 +wleaf,18,2 +whitetreeleaves,18,2 +whitelogleaves,18,2 +whitetrunkleaves,18,2 +whitewoodleaves,18,2 +wtreeleaves,18,2 +wlogleaves,18,2 +wtrunkleaves,18,2 +wwoodleaves,18,2 +birchtreeleaf,18,2 +birchlogleaf,18,2 +birchtrunkleaf,18,2 +birchwoodleaf,18,2 +btreeleaf,18,2 +blogleaf,18,2 +btrunkleaf,18,2 +bwoodleaf,18,2 +lighttreeleaf,18,2 +lightlogleaf,18,2 +lighttrunkleaf,18,2 +lightwoodleaf,18,2 +ltreeleaf,18,2 +llogleaf,18,2 +ltrunkleaf,18,2 +lwoodleaf,18,2 +whitetreeleaf,18,2 +whitelogleaf,18,2 +whitetrunkleaf,18,2 +whitewoodleaf,18,2 +wtreeleaf,18,2 +wlogleaf,18,2 +wtrunkleaf,18,2 +wwoodleaf,18,2 +jungleleaves,18,3 +jungleleaf,18,3 +jleaves,18,3 +jleaf,18,3 +jungletreeleaves,18,3 +junglelogleaves,18,3 +jungletrunkleaves,18,3 +junglewoodleaves,18,3 +jtreeleaves,18,3 +jlogleaves,18,3 +jtrunkleaves,18,3 +jwoodleaves,18,3 +forestleaves,18,3 +forestleaf,18,3 +fleaves,18,3 +fleaf,18,3 +foresttreeleaves,18,3 +forestlogleaves,18,3 +foresttrunkleaves,18,3 +forestwoodleaves,18,3 +ftreeleaves,18,3 +flogleaves,18,3 +ftrunkleaves,18,3 +fwoodleaves,18,3 +jungletreeleaf,18,3 +junglelogleaf,18,3 +jungletrunkleaf,18,3 +junglewoodleaf,18,3 +jtreeleaf,18,3 +jlogleaf,18,3 +jtrunkleaf,18,3 +jwoodleaf,18,3 +foresttreeleaf,18,3 +forestlogleaf,18,3 +foresttrunkleaf,18,3 +forestwoodleaf,18,3 +ftreeleaf,18,3 +flogleaf,18,3 +ftrunkleaf,18,3 +fwoodleaf,18,3 +sponge,19,0 +glass,20,0 +blockglass,20,0 +glassblock,20,0 +lapislazuliore,21,0 +lapislazulio,21,0 +orelapislazuli,21,0 +olapislazuli,21,0 +lapisore,21,0 +lapiso,21,0 +orelapis,21,0 +olapis,21,0 +lore,21,0 +orel,21,0 +lapislazuliblock,22,0 +blocklapislazuli,22,0 +lapisblock,22,0 +blocklapis,22,0 +lblock,22,0 +blockl,22,0 +dispenser,23,0 +dispense,23,0 +sandstone,24,0 +sastone,24,0 +creepersandstone,24,1 +creepersastone,24,1 +creepsandstone,24,1 +creepsastone,24,1 +csandstone,24,1 +csastone,24,1 +hieroglyphicsandstone,24,1 +hieroglyphicsastone,24,1 +hieroglyphsandstone,24,1 +hieroglyphsastone,24,1 +hsandstone,24,1 +hsastone,24,1 +pyramidsandstone,24,1 +pyramidsastone,24,1 +psandstone,24,1 +psastone,24,1 +chiseledsandstone,24,1 +chiseledsastone,24,1 +chiselsandstone,24,1 +chiselsastone,24,1 +smoothsandstone,24,2 +smoothsastone,24,2 +ssandstone,24,2 +smsastone,24,2 +ssastone,24,2 +noteblock,25,0 +musicblock,25,0 +nblock,25,0 +mblock,25,0 +poweredtrack,27,0 +poweredrails,27,0 +poweredrail,27,0 +boostertrack,27,0 +boosterrails,27,0 +boosterrail,27,0 +powertrack,27,0 +powerrails,27,0 +powerrail,27,0 +boosttrack,27,0 +boostrails,27,0 +boostrail,27,0 +ptrack,27,0 +prails,27,0 +prail,27,0 +btrack,27,0 +brails,27,0 +brail,27,0 +detectortrack,28,0 +detectorrails,28,0 +detectorrail,28,0 +detectingtrack,28,0 +detectingrails,28,0 +detectingrail,28,0 +detecttrack,28,0 +detectrails,28,0 +detectrail,28,0 +dtrack,28,0 +drails,28,0 +drail,28,0 +stickypistonbase,29,0 +stickypiston,29,0 +stickpistonbase,29,0 +stickpiston,29,0 +stickyp,29,0 +spistonbase,29,0 +spiston,29,0 +pistonstickybase,29,0 +pistonsticky,29,0 +pistonstickbase,29,0 +pistonstick,29,0 +pistonsbase,29,0 +pistons,29,0 +psticky,29,0 +pstick,29,0 +spiderweb,30,0 +cobweb,30,0 +sweb,30,0 +cweb,30,0 +web,30,0 +longgrass,31,1 +tallgrass,31,1 +wildgrass,31,1 +grasslong,31,1 +grasstall,31,1 +grasswild,31,1 +lgrass,31,1 +tgrass,31,1 +wgrass,31,1 +fern,31,2 +bush,31,2 +deadshrub,32,0 +dshrub,32,0 +deadbush,32,0 +dbush,32,0 +deadsapling,32,0 +piston,33,0 +pistonbase,33,0 +pistonblock,33,0 +whitewool,35,0 +whitecloth,35,0 +whitecotton,35,0 +wcloth,35,0 +wwool,35,0 +wcotton,35,0 +cloth,35,0 +wool,35,0 +cotton,35,0 +orangewool,35,1 +orangecloth,35,1 +orangecotton,35,1 +ocloth,35,1 +owool,35,1 +ocotton,35,1 +magentawool,35,2 +magentacloth,35,2 +magentacotton,35,2 +mcloth,35,2 +mwool,35,2 +mcotton,35,2 +lightbluewool,35,3 +lightbluecloth,35,3 +lightbluecotton,35,3 +lbluecloth,35,3 +lbluewool,35,3 +lbluecotton,35,3 +lightblucloth,35,3 +lightbluwool,35,3 +lightblucotton,35,3 +lblucloth,35,3 +lbluwool,35,3 +lblucotton,35,3 +lbcloth,35,3 +lbwool,35,3 +lbcotton,35,3 +yellowwool,35,4 +yellowcloth,35,4 +yellowcotton,35,4 +ycloth,35,4 +ywool,35,4 +ycotton,35,4 +lightgreenwool,35,5 +lightgreencloth,35,5 +lightgreencotton,35,5 +lgreencloth,35,5 +lgreenwool,35,5 +lgreencotton,35,5 +lightgrecloth,35,5 +lightgrewool,35,5 +lightgrecotton,35,5 +lgrecloth,35,5 +lgrewool,35,5 +lgrecotton,35,5 +limecloth,35,5 +limewool,35,5 +limecotton,35,5 +lcloth,35,5 +lwool,35,5 +lcotton,35,5 +pinkwool,35,6 +pinkcloth,35,6 +pinkcotton,35,6 +picloth,35,6 +piwool,35,6 +picotton,35,6 +darkgraywool,35,7 +darkgraycloth,35,7 +darkgraycotton,35,7 +darkgreywool,35,7 +darkgreycloth,35,7 +darkgreycotton,35,7 +dgraycloth,35,7 +dgraywool,35,7 +dgraycotton,35,7 +dgreycloth,35,7 +dgreywool,35,7 +dgreycotton,35,7 +darkgracloth,35,7 +darkgrawool,35,7 +darkgracotton,35,7 +dgracloth,35,7 +dgrawool,35,7 +dgracotton,35,7 +graycloth,35,7 +graywool,35,7 +graycotton,35,7 +greycloth,35,7 +greywool,35,7 +greycotton,35,7 +gracloth,35,7 +grawool,35,7 +gracotton,35,7 +lightgraywool,35,8 +lightgraycloth,35,8 +lightgraycotton,35,8 +lgraycloth,35,8 +lgraywool,35,8 +lgraycotton,35,8 +lightgreywool,35,8 +lightgreycloth,35,8 +lightgreycotton,35,8 +lgreycloth,35,8 +lgreywool,35,8 +lgreycotton,35,8 +lightgracloth,35,8 +lightgrawool,35,8 +lightgracotton,35,8 +lgracloth,35,8 +lgrawool,35,8 +lgracotton,35,8 +silvercloth,35,8 +silverwool,35,8 +silvercotton,35,8 +sicloth,35,8 +siawool,35,8 +siacotton,35,8 +cyanwool,35,9 +cyancloth,35,9 +cyancotton,35,9 +ccloth,35,9 +cwool,35,9 +ccotton,35,9 +purplewool,35,10 +purplecloth,35,10 +purplecotton,35,10 +pucloth,35,10 +puwool,35,10 +pucotton,35,10 +bluewool,35,11 +bluecloth,35,11 +bluecotton,35,11 +blucloth,35,11 +bluwool,35,11 +blucotton,35,11 +brownwool,35,12 +browncloth,35,12 +browncotton,35,12 +brocloth,35,12 +browool,35,12 +brocotton,35,12 +darkgreenwool,35,13 +darkgreencloth,35,13 +darkgreencotton,35,13 +dgreencloth,35,13 +dgreenwool,35,13 +dgreencotton,35,13 +greencloth,35,13 +greenwool,35,13 +greencotton,35,13 +darkgrecloth,35,13 +darkgrewool,35,13 +darkgrecotton,35,13 +dgrecloth,35,13 +dgrewool,35,13 +dgrecotton,35,13 +grecloth,35,13 +grewool,35,13 +grecotton,35,13 +redwool,35,14 +redcloth,35,14 +redcotton,35,14 +rcloth,35,14 +rwool,35,14 +rcotton,35,14 +blackwool,35,15 +blackcloth,35,15 +blackcotton,35,15 +blacloth,35,15 +blawool,35,15 +blacotton,35,15 +dandelion,37,0 +yellowdandelion,37,0 +ydandelion,37,0 +yellowflower,37,0 +yflower,37,0 +flower,37,0 +rose,38,0 +redrose,38,0 +rrose,38,0 +redflower,38,0 +rflower,38,0 +poppy,38,0 +redpoppy,38,0 +blueorchid,38,1 +cyanorchid,38,1 +lightblueorchid,38,1 +lblueorchid,38,1 +orchid,38,1 +allium,38,2 +magentaallium,38,2 +azurebluet,38,3 +whiteazurebluet,38,3 +abluet,38,3 +azureb,38,3 +houstonia,38,3 +redtulip,38,4 +tulipred,38,4 +rtulip,38,4 +tulipr,38,4 +orangetulip,38,5 +tuliporange,38,5 +otulip,38,5 +tulipo,38,5 +whitetulip,38,6 +tulipwhite,38,6 +wtulip,38,6 +tulipw,38,6 +pinktulip,38,7 +tulippink,38,7 +ptulip,38,7 +tulipp,38,7 +oxeye,38,8 +daisy,38,8 +oxeyedaisy,38,8 +daisyoxeye,38,8 +moondaisy,38,8 +daisymoon,38,8 +lightgrayoxeye,38,8 +lgrayoxeye,38,8 +lightgreyoxeye,38,8 +lgreyoxeye,38,8 +brownmushroom,39,0 +brownshroom,39,0 +brownmush,39,0 +bmushroom,39,0 +bshroom,39,0 +bmush,39,0 +redmushroom,40,0 +redshroom,40,0 +redmush,40,0 +rmushroom,40,0 +rshroom,40,0 +rmush,40,0 +goldblock,41,0 +blockgold,41,0 +gblock,41,0 +blockg,41,0 +ironblock,42,0 +steelblock,42,0 +blockiron,42,0 +blocksteel,42,0 +iblock,42,0 +stblock,42,0 +blocki,42,0 +blockst,42,0 +stonedoublestep,43,0 +stonedstep,43,0 +sdoublestep,43,0 +sdstep,43,0 +doublestonestep,43,0 +dstonestep,43,0 +doublesstep,43,0 +doublestep,43,0 +dstep,43,0 +stonedoubleslab,43,0 +stonedslab,43,0 +sdoubleslab,43,0 +sdslab,43,0 +doublestoneslab,43,0 +dstoneslab,43,0 +doublesslab,43,0 +doubleslab,43,0 +dslab,43,0 +stonedoublehalfblock,43,0 +stonedhalfblock,43,0 +sdoublehalfblock,43,0 +sdhalfblock,43,0 +doublestonehalfblock,43,0 +dstonehalfblock,43,0 +doubleshalfblock,43,0 +doublehalfblock,43,0 +dhalfblock,43,0 +sandstonedoublestep,43,1 +sandstonedstep,43,1 +sstonedoublestep,43,1 +sstonedstep,43,1 +ssdoublestep,43,1 +ssdstep,43,1 +doublesandstonestep,43,1 +dsandstonestep,43,1 +doublesstonestep,43,1 +dsstonestep,43,1 +doublessstep,43,1 +dsstep,43,1 +sandstonedoubleslab,43,1 +sandstonedslab,43,1 +sstonedoubleslab,43,1 +sstonedslab,43,1 +ssdoubleslab,43,1 +ssdslab,43,1 +doublesandstoneslab,43,1 +dsandstoneslab,43,1 +doublesstoneslab,43,1 +dsstoneslab,43,1 +doublessslab,43,1 +dsslab,43,1 +sandstonedoublehalfblock,43,1 +sandstonedhalfblock,43,1 +sstonedoublehalfblock,43,1 +sstonedhalfblock,43,1 +ssdoublehalfblock,43,1 +ssdhalfblock,43,1 +doublesandstonehalfblock,43,1 +dsandstonehalfblock,43,1 +doublesstonehalfblock,43,1 +dsstonehalfblock,43,1 +doublesshalfblock,43,1 +dsshalfblock,43,1 +plankstonedoublestep,43,2 +woodenstonedoublestep,43,2 +woodenstonedstep,43,2 +woodstonedoublestep,43,2 +woodstonedstep,43,2 +wstonedoublestep,43,2 +wstonedstep,43,2 +doublewoodenstonestep,43,2 +dwoodenstonestep,43,2 +doublewoodstonestep,43,2 +dwoodstonestep,43,2 +doublewstonestep,43,2 +dwstonestep,43,2 +woodenstonedoubleslab,43,2 +woodenstonedslab,43,2 +woodstonedoubleslab,43,2 +woodstonedslab,43,2 +wstonedoubleslab,43,2 +wstonedslab,43,2 +doublewoodenstoneslab,43,2 +dwoodenstoneslab,43,2 +doublewoodstoneslab,43,2 +dwoodstoneslab,43,2 +doublewstoneslab,43,2 +dwstoneslab,43,2 +woodenstonedoublehalfblock,43,2 +woodenstonedhalfblock,43,2 +woodstonedoublehalfblock,43,2 +woodstonedhalfblock,43,2 +wstonedoublehalfblock,43,2 +wstonedhalfblock,43,2 +doublewoodenstonehalfblock,43,2 +dwoodenstonehalfblock,43,2 +doublewoodstonehalfblock,43,2 +dwoodstonehalfblock,43,2 +doublewstonehalfblock,43,2 +dwstonehalfblock,43,2 +cobblestonedoublestep,43,3 +cobblestonedstep,43,3 +cobbledoublestep,43,3 +cobbledstep,43,3 +cstonedoublestep,43,3 +cstonedstep,43,3 +csdoublestep,43,3 +csdstep,43,3 +doublecobblestonestep,43,3 +dcobblestonestep,43,3 +doublecobblestep,43,3 +dcobblestep,43,3 +doublecstonestep,43,3 +dcstonestep,43,3 +doublecsstep,43,3 +dcsstep,43,3 +cobblestonedoubleslab,43,3 +cobblestonedslab,43,3 +cobbledoubleslab,43,3 +cobbledslab,43,3 +cstonedoubleslab,43,3 +cstonedslab,43,3 +csdoubleslab,43,3 +csdslab,43,3 +doublecobblestoneslab,43,3 +dcobblestoneslab,43,3 +doublecobbleslab,43,3 +dcobbleslab,43,3 +doublecstoneslab,43,3 +dcstoneslab,43,3 +doublecsslab,43,3 +dcsslab,43,3 +cobblestonedoublehalfblock,43,3 +cobblestonedhalfblock,43,3 +cobbledoublehalfblock,43,3 +cobbledhalfblock,43,3 +cstonedoublehalfblock,43,3 +cstonedhalfblock,43,3 +csdoublehalfblock,43,3 +csdhalfblock,43,3 +doublecobblestonehalfblock,43,3 +dcobblestonehalfblock,43,3 +doublecobblehalfblock,43,3 +dcobblehalfblock,43,3 +doublecstonehalfblock,43,3 +dcstonehalfblock,43,3 +doublecshalfblock,43,3 +dcshalfblock,43,3 +brickdoublestep,43,4 +brickdstep,43,4 +bdoublestep,43,4 +bdstep,43,4 +brickdoubleslab,43,4 +brickdslab,43,4 +bdoubleslab,43,4 +bdslab,43,4 +doublebrickstep,43,4 +dbrickstep,43,4 +doublebstep,43,4 +dbstep,43,4 +doublebrickslab,43,4 +dbrickslab,43,4 +doublebslab,43,4 +dbslab,43,4 +brickdoublehalfblock,43,4 +brickdhalfblock,43,4 +bdoublehalfblock,43,4 +bdhalfblock,43,4 +doublebrickhalfblock,43,4 +dbrickhalfblock,43,4 +doublebhalfblock,43,4 +dbhalfblock,43,4 +stonebrickdoublestep,43,5 +stonebrickdstep,43,5 +stonebdoublestep,43,5 +stonebdstep,43,5 +sbrickdoublestep,43,5 +sbrickdstep,43,5 +sbdoublestep,43,5 +sbdstep,43,5 +stonebrickdoubleslab,43,5 +stonebrickdslab,43,5 +stonebdoubleslab,43,5 +stonebdslab,43,5 +sbrickdoubleslab,43,5 +sbrickdslab,43,5 +sbdoubleslab,43,5 +sbdslab,43,5 +doublestonebrickstep,43,5 +dstonebrickstep,43,5 +doublestonebstep,43,5 +dstonebstep,43,5 +doublesbrickstep,43,5 +dsbrickstep,43,5 +doublesbstep,43,5 +dsbstep,43,5 +doublestonebrickslab,43,5 +dstonebrickslab,43,5 +doublestonebslab,43,5 +dstonebslab,43,5 +doublesbrickslab,43,5 +dsbrickdslab,43,5 +doublesbslab,43,5 +dsbslab,43,5 +stonebrickdoublehalfblock,43,5 +stonebrickdhalfblock,43,5 +stonebdoublehalfblock,43,5 +stonebdhalfblock,43,5 +sbrickdoublehalfblock,43,5 +sbrickdhalfblock,43,5 +sbdoublehalfblock,43,5 +sbdhalfblock,43,5 +doublestonebrickhalfblock,43,5 +dstonebrickhalfblock,43,5 +doublestonebhalfblock,43,5 +dstonebhalfblock,43,5 +doublesbrickhalfblock,43,5 +dsbrickhalfblock,43,5 +doublesbhalfblock,43,5 +dsbhalfblock,43,5 +netherbrickdoubleslab,43,6 +hellbrickdoubleslab,43,6 +nbrickdoubleslab,43,6 +hbrickdoubleslab,43,6 +netherdoubleslab,43,6 +helldoubleslab,43,6 +nbdoubleslab,43,6 +hbdoubleslab,43,6 +hdoubleslab,43,6 +ndoubleslab,43,6 +netherbrickdoublestep,43,6 +hellbrickdoublestep,43,6 +nbrickdoublestep,43,6 +hbrickdoublestep,43,6 +netherdoublestep,43,6 +helldoublestep,43,6 +nbdoublestep,43,6 +hbdoublestep,43,6 +ndoublestep,43,6 +hdoublestep,43,6 +netherbrickdoublehalfblock,43,6 +hellbrickdoublehalfblock,43,6 +nbrickdoublehalfblock,43,6 +hbrickdoublehalfblock,43,6 +netherdoublehalfblock,43,6 +helldoublehalfblock,43,6 +nbdoublehalfblock,43,6 +hbdoublehalfblock,43,6 +ndoublehalfblock,43,6 +hdoublehalfblock,43,6 +netherbrickdslab,43,6 +hellbrickdslab,43,6 +nbrickdslab,43,6 +hbrickdslab,43,6 +netherdslab,43,6 +helldslab,43,6 +nbdslab,43,6 +hbdslab,43,6 +hdslab,43,6 +ndslab,43,6 +netherbrickdstep,43,6 +hellbrickdstep,43,6 +nbrickdstep,43,6 +hbrickdstep,43,6 +netherdstep,43,6 +helldstep,43,6 +nbdstep,43,6 +hbdstep,43,6 +ndstep,43,6 +hdstep,43,6 +netherbrickdhalfblock,43,6 +hellbrickdhalfblock,43,6 +nbrickdhalfblock,43,6 +hbrickdhalfblock,43,6 +netherdhalfblock,43,6 +helldhalfblock,43,6 +nbdhalfblock,43,6 +hbdhalfblock,43,6 +ndhalfblock,43,6 +hdhalfblock,43,6 +doublenetherbrickslab,43,6 +doublehellbrickslab,43,6 +doublenbrickslab,43,6 +doublehbrickslab,43,6 +doublenetherslab,43,6 +doublehellslab,43,6 +doublenbslab,43,6 +doublehbslab,43,6 +doublehslab,43,6 +doublenslab,43,6 +doublenetherbrickstep,43,6 +doublehellbrickstep,43,6 +doublenbrickstep,43,6 +doublehbrickstep,43,6 +doublenetherstep,43,6 +doublehellstep,43,6 +doublenbstep,43,6 +doublehbstep,43,6 +doublenstep,43,6 +doublehstep,43,6 +doublenetherbrickhalfblock,43,6 +doublehellbrickhalfblock,43,6 +doublenbrickhalfblock,43,6 +doublehbrickhalfblock,43,6 +doublenetherhalfblock,43,6 +doublehellhalfblock,43,6 +doublenbhalfblock,43,6 +doublehbhalfblock,43,6 +doublenhalfblock,43,6 +doublehhalfblock,43,6 +dnetherbrickslab,43,6 +dhellbrickslab,43,6 +dnbrickslab,43,6 +dhbrickslab,43,6 +dnetherslab,43,6 +dhellslab,43,6 +dnbslab,43,6 +dhbslab,43,6 +dhslab,43,6 +dnslab,43,6 +dnetherbrickstep,43,6 +dhellbrickstep,43,6 +dnbrickstep,43,6 +dhbrickstep,43,6 +dnetherstep,43,6 +dhellstep,43,6 +dnbstep,43,6 +dhbstep,43,6 +dnstep,43,6 +dhstep,43,6 +dnetherbrickhalfblock,43,6 +dhellbrickhalfblock,43,6 +dnbrickhalfblock,43,6 +dhbrickhalfblock,43,6 +dnetherhalfblock,43,6 +dhellhalfblock,43,6 +dnbhalfblock,43,6 +dhbhalfblock,43,6 +dnhalfblock,43,6 +dhhalfblock,43,6 +netherquartzdoublestep,43,7 +hellquartzdoublestep,43,7 +deathquartzdoublestep,43,7 +nquartzdoublestep,43,7 +hquartzdoublestep,43,7 +dquartzdoublestep,43,7 +quartzdoublestep,43,7 +nqdoublestep,43,7 +hqdoublestep,43,7 +dqdoublestep,43,7 +qdoublestep,43,7 +netherquartzdoubleslab,43,7 +hellquartzdoubleslab,43,7 +deathquartzdoubleslab,43,7 +nquartzdoubleslab,43,7 +hquartzdoubleslab,43,7 +dquartzdoubleslab,43,7 +quartzdoubleslab,43,7 +nqdoubleslab,43,7 +hqdoubleslab,43,7 +dqdoubleslab,43,7 +qdoubleslab,43,7 +netherquartzdoublehalfblock,43,7 +hellquartzdoublehalfblock,43,7 +deathquartzdoublehalfblock,43,7 +nquartzdoublehalfblock,43,7 +hquartzdoublehalfblock,43,7 +dquartzdoublehalfblock,43,7 +quartzdoublehalfblock,43,7 +nqdoublehalfblock,43,7 +hqdoublehalfblock,43,7 +dqdoublehalfblock,43,7 +qdoublehalfblock,43,7 +netherquartzdslab,43,7 +hellquartzdslab,43,7 +deathquartzdslab,43,7 +nquartzdslab,43,7 +hquartzdslab,43,7 +dquartzdslab,43,7 +quartzdslab,43,7 +nqdslab,43,7 +hqdslab,43,7 +dqdslab,43,7 +qdslab,43,7 +netherquartzdstep,43,7 +hellquartzdstep,43,7 +deathquartzdstep,43,7 +nquartzdstep,43,7 +hquartzdstep,43,7 +dquartzdstep,43,7 +quartzdstep,43,7 +nqdstep,43,7 +hqdstep,43,7 +dqdstep,43,7 +qdstep,43,7 +netherquartzdhalfblock,43,7 +hellquartzdhalfblock,43,7 +deathquartzdhalfblock,43,7 +nquartzdhalfblock,43,7 +hquartzdhalfblock,43,7 +dquartzdhalfblock,43,7 +quartzdhalfblock,43,7 +nqdhalfblock,43,7 +hqdhalfblock,43,7 +dqdhalfblock,43,7 +qdhalfblock,43,7 +doublenetherquartzslab,43,7 +doublehellquartzslab,43,7 +doubledeathquartzslab,43,7 +doublenquartzslab,43,7 +doublehquartzslab,43,7 +doubledquartzslab,43,7 +doublequartzslab,43,7 +doublenqslab,43,7 +doublehqslab,43,7 +doubledqslab,43,7 +doubleqslab,43,7 +doublenetherquartzstep,43,7 +doublehellquartzstep,43,7 +doubledeathquartzstep,43,7 +doublenquartzstep,43,7 +doublehquartzstep,43,7 +doubledquartzstep,43,7 +doublequartzstep,43,7 +doublenqstep,43,7 +doublehqstep,43,7 +doubledqstep,43,7 +doubleqstep,43,7 +doublenetherquartzhalfblock,43,7 +doublehellquartzhalfblock,43,7 +doubledeathquartzhalfblock,43,7 +doublenquartzhalfblock,43,7 +doublehquartzhalfblock,43,7 +doubledquartzhalfblock,43,7 +doublequartzhalfblock,43,7 +doublenqhalfblock,43,7 +doublehqhalfblock,43,7 +doubledqhalfblock,43,7 +doubleqhalfblock,43,7 +dnetherquartzslab,43,7 +dhellquartzslab,43,7 +ddeathquartzslab,43,7 +dnquartzslab,43,7 +dhquartzslab,43,7 +ddquartzslab,43,7 +dnqslab,43,7 +dhqslab,43,7 +ddqslab,43,7 +dnetherquartzstep,43,7 +dhellquartzstep,43,7 +ddeathquartzstep,43,7 +dnquartzstep,43,7 +dhquartzstep,43,7 +ddquartzstep,43,7 +dnqstep,43,7 +dhqstep,43,7 +ddqstep,43,7 +dnetherquartzhalfblock,43,7 +dhellquartzhalfblock,43,7 +ddeathquartzhalfblock,43,7 +dnquartzhalfblock,43,7 +dhquartzhalfblock,43,7 +ddquartzhalfblock,43,7 +dnqhalfblock,43,7 +dhqhalfblock,43,7 +ddqhalfblock,43,7 +smoothstonedoubleslab,43,8 +smoothstonedoublestep,43,8 +smoothstonedoublehalfblock,43,8 +smoothstonedslab,43,8 +smoothstonedstep,43,8 +smoothstonedhalfblock,43,8 +doublesmoothstoneslab,43,8 +doublesmoothstonestep,43,8 +doublesmoothstonehalfblock,43,8 +dsmoothstoneslab,43,8 +dsmoothstonestep,43,8 +dsmoothstonehalfblock,43,8 +smoothsandstonedoubleslab,43,9 +ssandstonedoubleslab,43,9 +ssstonedoubleslab,43,9 +sssdoubleslab,43,9 +smoothsandstonedoublestep,43,9 +ssandstonedoublestep,43,9 +ssstonedoublestep,43,9 +sssdoublestep,43,9 +smoothsandstonedoublehalfblock,43,9 +ssandstonedoublehalfblock,43,9 +ssstonedoublehalfblock,43,9 +sssdoublehalfblock,43,9 +smoothsandstonedslab,43,9 +ssandstonedslab,43,9 +ssstonedslab,43,9 +sssdslab,43,9 +smoothsandstonedstep,43,9 +ssandstonedstep,43,9 +ssstonedstep,43,9 +sssdstep,43,9 +smoothsandstonedhalfblock,43,9 +ssandstonedhalfblock,43,9 +ssstonedhalfblock,43,9 +sssdhalfblock,43,9 +doublesmoothsandstoneslab,43,9 +doublessandstoneslab,43,9 +doublessstoneslab,43,9 +doublesssslab,43,9 +doublesmoothsandstonestep,43,9 +doublessandstonestep,43,9 +doublessstonestep,43,9 +doublesssstep,43,9 +doublesmoothsandstonehalfblock,43,9 +doublessandstonehalfblock,43,9 +doublessstonehalfblock,43,9 +doublessshalfblock,43,9 +dsmoothsandstoneslab,43,9 +dssandstoneslab,43,9 +dssstoneslab,43,9 +dsssslab,43,9 +dsmoothsandstonestep,43,9 +dssandstonestep,43,9 +dssstonestep,43,9 +dsssstep,43,9 +dsmoothsandstonehalfblock,43,9 +dssandstonehalfblock,43,9 +dssstonehalfblock,43,9 +dssshalfblock,43,9 +smoothstonestep,44,0 +stonestep,44,0 +sstep,44,0 +step,44,0 +smoothstoneslab,44,0 +stoneslab,44,0 +sslab,44,0 +slab,44,0 +smoothstonehalfblock,44,0 +stonehalfblock,44,0 +shalfblock,44,0 +halfblock,44,0 +sandstonestep,44,1 +sstonestep,44,1 +ssstep,44,1 +sandstoneslab,44,1 +sstoneslab,44,1 +ssslab,44,1 +sandstonehalfblock,44,1 +sstonehalfblock,44,1 +sshalfblock,44,1 +woodenstonestep,44,2 +woodstonestep,44,2 +wstonestep,44,2 +woodenstoneslab,44,2 +woodstoneslab,44,2 +wstoneslab,44,2 +woodenstonehalfblock,44,2 +woodstonehalfblock,44,2 +wstonehalfblock,44,2 +cobblestonestep,44,3 +cobblestep,44,3 +cstonestep,44,3 +csstep,44,3 +cobblestoneslab,44,3 +cobbleslab,44,3 +cstoneslab,44,3 +csslab,44,3 +cobblestonehalfblock,44,3 +cobblehalfblock,44,3 +cstonehalfblock,44,3 +cshalfblock,44,3 +brickstep,44,4 +bstep,44,4 +brickslab,44,4 +bslab,44,4 +brickhalfblock,44,4 +bhalfblock,44,4 +stonebrickstep,44,5 +stonebstep,44,5 +sbrickstep,44,5 +sbstep,44,5 +stonebrickslab,44,5 +stonebslab,44,5 +sbrickslab,44,5 +sbslab,44,5 +stonebrickhalfblock,44,5 +stonebhalfblock,44,5 +sbrickhalfblock,44,5 +sbhalfblock,44,5 +netherbrickslab,44,6 +hellbrickslab,44,6 +nbrickslab,44,6 +hbrickslab,44,6 +netherslab,44,6 +hellslab,44,6 +nbslab,44,6 +hbslab,44,6 +hslab,44,6 +nslab,44,6 +netherbrickstep,44,6 +hellbrickstep,44,6 +nbrickstep,44,6 +hbrickstep,44,6 +netherstep,44,6 +hellstep,44,6 +nbstep,44,6 +hbstep,44,6 +nstep,44,6 +hstep,44,6 +netherbrickhalfblock,44,6 +hellbrickhalfblock,44,6 +nbrickhalfblock,44,6 +hbrickhalfblock,44,6 +netherhalfblock,44,6 +hellhalfblock,44,6 +nbhalfblock,44,6 +hbhalfblock,44,6 +nhalfblock,44,6 +hhalfblock,44,6 +netherquartzstep,44,7 +hellquartzstep,44,7 +deathquartzstep,44,7 +nquartzstep,44,7 +hquartzstep,44,7 +dquartzstep,44,7 +quartzstep,44,7 +nqstep,44,7 +hqstep,44,7 +dqstep,44,7 +qstep,44,7 +netherquartzslab,44,7 +hellquartzslab,44,7 +deathquartzslab,44,7 +nquartzslab,44,7 +hquartzslab,44,7 +dquartzslab,44,7 +quartzslab,44,7 +nqslab,44,7 +hqslab,44,7 +dqslab,44,7 +qslab,44,7 +netherquartzhalfblock,44,7 +hellquartzhalfblock,44,7 +deathquartzhalfblock,44,7 +nquartzhalfblock,44,7 +hquartzhalfblock,44,7 +dquartzhalfblock,44,7 +quartzhalfblock,44,7 +nqhalfblock,44,7 +hqhalfblock,44,7 +dqhalfblock,44,7 +qhalfblock,44,7 +brickblock,45,0 +blockbrick,45,0 +bblock,45,0 +blockb,45,0 +tnt,46,0 +tntblock,46,0 +blocktnt,46,0 +bombblock,46,0 +blockbomb,46,0 +dynamiteblock,46,0 +blockdynamite,46,0 +bomb,46,0 +dynamite,46,0 +bookcase,47,0 +casebook,47,0 +bookshelf,47,0 +shelfbook,47,0 +bookblock,47,0 +blockbook,47,0 +mossycobblestone,48,0 +mosscobblestone,48,0 +mcobblestone,48,0 +mossycobble,48,0 +mosscobble,48,0 +mcobble,48,0 +mossstone,48,0 +mossystone,48,0 +mstone,48,0 +obsidian,49,0 +obsi,49,0 +obby,49,0 +torch,50,0 +burningstick,50,0 +burnstick,50,0 +fire,51,0 +flame,51,0 +flames,51,0 +mobspawner,52,0 +mobcage,52,0 +monsterspawner,52,0 +monstercage,52,0 +mspawner,52,0 +mcage,52,0 +spawner,52,0 +cage,52,0 +woodenstairs,53,0 +woodstairs,53,0 +wstairs,53,0 +woodenstair,53,0 +woodstair,53,0 +wstair,53,0 +chest,54,0 +container,54,0 +diamondore,56,0 +crystalore,56,0 +orediamond,56,0 +orecrystal,56,0 +dore,56,0 +ored,56,0 +diamondblock,57,0 +blockdiamond,57,0 +crystalblock,57,0 +blockcrystal,57,0 +dblock,57,0 +blockd,57,0 +workbench,58,0 +craftingbench,58,0 +crafterbench,58,0 +craftbench,58,0 +worktable,58,0 +craftingtable,58,0 +craftertable,58,0 +crafttable,58,0 +wbench,58,0 +cbench,58,0 +soil,60,0 +furnace,61,0 +litfurnace,62,0 +lfurnace,62,0 +burningfurnace,62,0 +burnfurnace,62,0 +bfurnace,62,0 +ladder,65,0 +minecarttrack,66,0 +minecartrails,66,0 +minecartrail,66,0 +mcarttrack,66,0 +mcartrails,66,0 +mcartrail,66,0 +mctrack,66,0 +mcrails,66,0 +mcrail,66,0 +track,66,0 +rails,66,0 +rail,66,0 +cobblestonestairs,67,0 +cstonestairs,67,0 +stonestairs,67,0 +cobblestairs,67,0 +csstairs,67,0 +sstairs,67,0 +cstairs,67,0 +cobblestonestair,67,0 +cstonestair,67,0 +stonestair,67,0 +cobblestair,67,0 +csstair,67,0 +sstair,67,0 +cstair,67,0 +lever,69,0 +stonepressureplate,70,0 +stonepressplate,70,0 +stonepplate,70,0 +stoneplate,70,0 +spressureplate,70,0 +spressplate,70,0 +spplate,70,0 +splate,70,0 +smoothstonepressureplate,70,0 +smoothstonepressplate,70,0 +smoothstonepplate,70,0 +smoothstoneplate,70,0 +sstonepressureplate,70,0 +sstonepressplate,70,0 +sstonepplate,70,0 +sstoneplate,70,0 +woodenpressureplate,72,0 +woodenpressplate,72,0 +woodenpplate,72,0 +woodenplate,72,0 +woodpressureplate,72,0 +woodpressplate,72,0 +woodpplate,72,0 +woodplate,72,0 +wpressureplate,72,0 +wpressplate,72,0 +wpplate,72,0 +wplate,72,0 +redstoneore,73,0 +redsore,73,0 +redore,73,0 +rstoneore,73,0 +rsore,73,0 +rore,73,0 +oreredstone,73,0 +orereds,73,0 +orered,73,0 +orerstone,73,0 +orers,73,0 +orer,73,0 +redstonetorch,76,0 +rstonetorch,76,0 +redstorch,76,0 +redtorch,76,0 +rstorch,76,0 +stonebutton,77,0 +smoothstonebutton,77,0 +sstonebutton,77,0 +sbutton,77,0 +button,77,0 +snowcover,78,0 +snowcovering,78,0 +scover,78,0 +ice,79,0 +frozenwater,79,0 +waterfrozen,79,0 +freezewater,79,0 +waterfreeze,79,0 +snowblock,80,0 +blocksnow,80,0 +sblock,80,0 +blocks,80,0 +cactus,81,0 +cactuses,81,0 +cacti,81,0 +clayblock,82,0 +blockclay,82,0 +cblock,82,0 +blockc,82,0 +jukebox,84,0 +jbox,84,0 +woodenfence,85,0 +fence,85,0 +woodfence,85,0 +wfence,85,0 +fencewooden,85,0 +fencewood,85,0 +fencew,85,0 +pumpkin,86,0 +netherrack,87,0 +netherrock,87,0 +netherstone,87,0 +hellrack,87,0 +hellrock,87,0 +hellstone,87,0 +deathrack,87,0 +deathrock,87,0 +deathstone,87,0 +nrack,87,0 +nrock,87,0 +nstone,87,0 +hrack,87,0 +hrock,87,0 +hstone,87,0 +drack,87,0 +drock,87,0 +dstone,87,0 +soulsand,88,0 +slowsand,88,0 +slowmud,88,0 +ssand,88,0 +smud,88,0 +mud,88,0 +glowstone,89,0 +glowingstoneblock,89,0 +lightstoneblock,89,0 +glowstoneblock,89,0 +blockglowingstone,89,0 +blocklightstone,89,0 +blockglowstone,89,0 +glowingstone,89,0 +lightstone,89,0 +glowingblock,89,0 +lightblock,89,0 +glowblock,89,0 +lstone,89,0 +gstone,89,0 +portal,90,0 +jackolantern,91,0 +pumpkinlantern,91,0 +glowingpumpkin,91,0 +lightpumpkin,91,0 +jpumpkin,91,0 +plantren,91,0 +glowpumpkin,91,0 +gpumpkin,91,0 +lpumpkin,91,0 +lockedchest,95,0 +lockchest,95,0 +jokechest,95,0 +whiteglass,95,0 +whitesglass,95,0 +whitestainedglass,95,0 +wglass,95,0 +wsglass,95,0 +wstainedglass,95,0 +sglass,95,0 +stainedglass,95,0 +orangeglass,95,1 +orangesglass,95,1 +orangestainedglass,95,1 +oglass,95,1 +osglass,95,1 +ostainedglass,95,1 +magentaglass,95,2 +magentasglass,95,2 +magentastainedglass,95,2 +mglass,95,2 +msglass,95,2 +mstainedglass,95,2 +lightblueglass,95,3 +lightbluesglass,95,3 +lightbluestainedglass,95,3 +lblueglass,95,3 +lbluesglass,95,3 +lbluestainedglass,95,3 +lightbluglass,95,3 +lightblusglass,95,3 +lightblustainedglass,95,3 +lbluglass,95,3 +lblusglass,95,3 +lblustainedglass,95,3 +lbglass,95,3 +lbsglass,95,3 +lbstainedglass,95,3 +yellowglass,95,4 +yellowsglass,95,4 +yellowstainedglass,95,4 +yglass,95,4 +ysglass,95,4 +ystainedglass,95,4 +lightgreenglass,95,5 +lightgreensglass,95,5 +lightgreenstainedglass,95,5 +lgreenglass,95,5 +lgreensglass,95,5 +lgreenstainedglass,95,5 +lightgreglass,95,5 +lightgresglass,95,5 +lightgrestainedglass,95,5 +lgreglass,95,5 +lgresglass,95,5 +lgrestainedglass,95,5 +limeglass,95,5 +limesglass,95,5 +limestainedglass,95,5 +lglass,95,5 +lsglass,95,5 +lstainedglass,95,5 +pinkglass,95,6 +pinksglass,95,6 +pinkstainedglass,95,6 +piglass,95,6 +pisglass,95,6 +pistainedglass,95,6 +darkgrayglass,95,7 +darkgraysglass,95,7 +darkgraystainedglass,95,7 +dgrayglass,95,7 +dgraysglass,95,7 +dgraystainedglass,95,7 +darkgreyglass,95,7 +darkgreysglass,95,7 +darkgreystainedglass,95,7 +dgreyglass,95,7 +dgreysglass,95,7 +dgreystainedglass,95,7 +darkgraglass,95,7 +darkgrasglass,95,7 +darkgrastainedglass,95,7 +dgraglass,95,7 +dgrasglass,95,7 +dgrastainedglass,95,7 +grayglass,95,7 +graysglass,95,7 +graystainedglass,95,7 +greyglass,95,7 +greysglass,95,7 +greystainedglass,95,7 +graglass,95,7 +grasglass,95,7 +grastainedglass,95,7 +lightgrayglass,95,8 +lightgraysglass,95,8 +lightgraystainedglass,95,8 +lgrayglass,95,8 +lgraysglass,95,8 +lgraystainedglass,95,8 +lightgreyglass,95,8 +lightgreysglass,95,8 +lightgreystainedglass,95,8 +lgreyglass,95,8 +lgreysglass,95,8 +lgreystainedglass,95,8 +lightgraglass,95,8 +lightgrasglass,95,8 +lightgrastainedglass,95,8 +lgraglass,95,8 +lgrasglass,95,8 +lgrastainedglass,95,8 +silverglass,95,8 +silversglass,95,8 +silverstainedglass,95,8 +siglass,95,8 +siasglass,95,8 +siastainedglass,95,8 +cyanglass,95,9 +cyansglass,95,9 +cyanstainedglass,95,9 +cglass,95,9 +csglass,95,9 +cstainedglass,95,9 +purpleglass,95,10 +purplesglass,95,10 +purplestainedglass,95,10 +puglass,95,10 +pusglass,95,10 +pustainedglass,95,10 +blueglass,95,11 +bluesglass,95,11 +bluestainedglass,95,11 +bluglass,95,11 +blusglass,95,11 +blustainedglass,95,11 +brownglass,95,12 +brownsglass,95,12 +brownstainedglass,95,12 +broglass,95,12 +brosglass,95,12 +brostainedglass,95,12 +darkgreenglass,95,13 +darkgreensglass,95,13 +darkgreenstainedglass,95,13 +dgreenglass,95,13 +dgreensglass,95,13 +dgreenstainedglass,95,13 +greenglass,95,13 +greensglass,95,13 +greenstainedglass,95,13 +darkgreglass,95,13 +darkgresglass,95,13 +darkgrestainedglass,95,13 +dgreglass,95,13 +dgresglass,95,13 +dgrestainedglass,95,13 +greglass,95,13 +gresglass,95,13 +grestainedglass,95,13 +redglass,95,14 +redsglass,95,14 +redstainedglass,95,14 +rglass,95,14 +rsglass,95,14 +rstainedglass,95,14 +blackglass,95,15 +blacksglass,95,15 +blackstainedglass,95,15 +blaglass,95,15 +blasglass,95,15 +blastainedglass,95,15 +trapdoor,96,0 +doortrap,96,0 +hatch,96,0 +tdoor,96,0 +doort,96,0 +trapd,96,0 +dtrap,96,0 +silverfish,97,0 +silverfishsmoothstone,97,0 +silverfishsstone,97,0 +sfishsmoothstone,97,0 +sfishsstone,97,0 +fishsmoothstone,97,0 +fishsstone,97,0 +sfsmoothstone,97,0 +sfsstone,97,0 +trapsmoothstone,97,0 +trapsstone,97,0 +monsteregg,97,0 +monstereggsmoothstone,97,0 +monstereggsstone,97,0 +meggsmoothstone,97,0 +meggsstone,97,0 +mesmoothstone,97,0 +messtone,97,0 +silverfishcobblestone,97,1 +silverfishcstone,97,1 +sfishcobblestone,97,1 +sfishcstone,97,1 +fishcobblestone,97,1 +fishcstone,97,1 +sfcobblestone,97,1 +sfcstone,97,1 +trapcobblestone,97,1 +trapcstone,97,1 +monstereggcobblestone,97,1 +monstereggcstone,97,1 +meggcobblestone,97,1 +meggcstone,97,1 +mecobblestone,97,1 +mecstone,97,1 +silverfishstonebrick,97,2 +silverfishsbrick,97,2 +sfishstonebrick,97,2 +sfishsbrick,97,2 +fishstonebrick,97,2 +fishsbrick,97,2 +sfstonebrick,97,2 +sfsbrick,97,2 +trapstonebrick,97,2 +trapsbrick,97,2 +monstereggstonebrick,97,2 +monstereggsbrick,97,2 +meggstonebrick,97,2 +meggsbrick,97,2 +mestonebrick,97,2 +mesbrick,97,2 +silverfishmossystonebrick,97,3 +silverfishmossstonebrick,97,3 +silverfishmstonebrick,97,3 +silverfishmsbrick,97,3 +sfishmossystonebrick,97,3 +sfishmossstonebrick,97,3 +sfishmstonebrick,97,3 +sfishmsbrick,97,3 +fishmossystonebrick,97,3 +fishmossstonebrick,97,3 +fishmstonebrick,97,3 +fishmsbrick,97,3 +sfmossystonebrick,97,3 +sfmossstonebrick,97,3 +sfmstonebrick,97,3 +sfmsbrick,97,3 +trapmossystonebrick,97,3 +trapmossstonebrick,97,3 +trapmstonebrick,97,3 +trapmsbrick,97,3 +monstereggmossystonebrick,97,3 +monstereggmossstonebrick,97,3 +monstereggmstonebrick,97,3 +monstereggmsbrick,97,3 +meggmossystonebrick,97,3 +meggmossstonebrick,97,3 +meggmstonebrick,97,3 +meggmsbrick,97,3 +memossystonebrick,97,3 +memossstonebrick,97,3 +memstonebrick,97,3 +memsbrick,97,3 +silverfishcrackedstonebrick,97,4 +silverfishcrackstonebrick,97,4 +silverfishcrstonebrick,97,4 +silverfishcrsbrick,97,4 +sfishcrackedstonebrick,97,4 +sfishcrackstonebrick,97,4 +sfishcrstonebrick,97,4 +sfishcrsbrick,97,4 +fishcrackedstonebrick,97,4 +fishcrackstonebrick,97,4 +fishcrstonebrick,97,4 +fishcrsbrick,97,4 +sfcrackedstonebrick,97,4 +sfcrackstonebrick,97,4 +sfcrstonebrick,97,4 +sfcrsbrick,97,4 +trapcrackedstonebrick,97,4 +trapcrackstonebrick,97,4 +trapcrstonebrick,97,4 +trapcrsbrick,97,4 +monstereggcrackedstonebrick,97,4 +monstereggcrackstonebrick,97,4 +monstereggcrstonebrick,97,4 +monstereggcrsbrick,97,4 +meggcrackedstonebrick,97,4 +meggcrackstonebrick,97,4 +meggcrstonebrick,97,4 +meggcrsbrick,97,4 +mecrackedstonebrick,97,4 +mecrackstonebrick,97,4 +mecrstonebrick,97,4 +mecrsbrick,97,4 +silverfishcirclestonebrick,97,5 +silverfishcistonebrick,97,5 +silverfishcisbrick,97,5 +sfishcirclestonebrick,97,5 +sfishcistonebrick,97,5 +sfishcisbrick,97,5 +fishcirclestonebrick,97,5 +fishcistonebrick,97,5 +fishcisbrick,97,5 +sfcirclestonebrick,97,5 +sfcistonebrick,97,5 +sfcisbrick,97,5 +trapcirclestonebrick,97,5 +trapcistonebrick,97,5 +trapcisbrick,97,5 +monstereggcirclestonebrick,97,5 +monstereggcistonebrick,97,5 +monstereggcisbrick,97,5 +meggcirclestonebrick,97,5 +meggcistonebrick,97,5 +meggcisbrick,97,5 +mecirclestonebrick,97,5 +mecistonebrick,97,5 +mecisbrick,97,5 +stonebrick,98,0 +stonebricks,98,0 +stonebrickblock,98,0 +stonebb,98,0 +sbrick,98,0 +mossystonebrick,98,1 +mossystonebricks,98,1 +mossystonebrickblock,98,1 +mossystonebb,98,1 +mossstonebrick,98,1 +mossstonebricks,98,1 +mossstonebrickblock,98,1 +mossstonebb,98,1 +mstonebrick,98,1 +mstonebricks,98,1 +mstonebrickblock,98,1 +mstonebb,98,1 +mosssbrick,98,1 +mosssbricks,98,1 +mosssbrickblock,98,1 +mosssbb,98,1 +msbrick,98,1 +msbricks,98,1 +msbrickblock,98,1 +crackedstone,98,2 +crackedstonebrick,98,2 +crackedstonebricks,98,2 +crackedstonebrickblock,98,2 +crackedstonebb,98,2 +crackstonebrick,98,2 +crackstonebricks,98,2 +crackstonebrickblock,98,2 +crackstonebb,98,2 +crstonebrick,98,2 +crstonebricks,98,2 +crstonebrickblock,98,2 +crstonebb,98,2 +cracksbrick,98,2 +cracksbricks,98,2 +cracksbrickblock,98,2 +cracksbb,98,2 +crsbrick,98,2 +crsbricks,98,2 +crsbrickblock,98,2 +circlestone,98,3 +circlestonebrick,98,3 +circlestonebricks,98,3 +circlestonebrickblock,98,3 +circlestonebb,98,3 +cistonebrick,98,3 +cistonebricks,98,3 +cistonebrickblock,98,3 +cistonebb,98,3 +circlesbrick,98,3 +circlesbricks,98,3 +circlesbrickblock,98,3 +circlesbb,98,3 +cisbrick,98,3 +cisbricks,98,3 +cisbrickblock,98,3 +giantredmushroom,99,0 +hugeredmushroom,99,0 +bigredmushroom,99,0 +gredmushroom,99,0 +hredmushroom,99,0 +bredmushroom,99,0 +giantrmushroom,99,0 +hugermushroom,99,0 +bigrmushroom,99,0 +grmushroom,99,0 +hrmushroom,99,0 +brmushroom,99,0 +giantredmush,99,0 +hugeredmush,99,0 +bigredmush,99,0 +gredmush,99,0 +hredmush,99,0 +bredmush,99,0 +giantrmush,99,0 +hugermush,99,0 +bigrmush,99,0 +grmush,99,0 +hrmush,99,0 +brmush,99,0 +giantbrownmushroom,100,0 +hugebrownmushroom,100,0 +bigbrownmushroom,100,0 +gbrownmushroom,100,0 +hbrownmushroom,100,0 +bbrownmushroom,100,0 +giantbmushroom,100,0 +hugebmushroom,100,0 +bigbmushroom,100,0 +gbmushroom,100,0 +hbmushroom,100,0 +bbmushroom,100,0 +giantbrownmush,100,0 +hugebrownmush,100,0 +bigbrownmush,100,0 +gbrownmush,100,0 +hbrownmush,100,0 +bbrownmush,100,0 +giantbmush,100,0 +hugebmush,100,0 +bigbmush,100,0 +gbmush,100,0 +hbmush,100,0 +bbmush,100,0 +ironbars,101,0 +ironbarsb,101,0 +ironbarsblock,101,0 +ironfence,101,0 +metalbars,101,0 +metalbarsb,101,0 +metalbarsblock,101,0 +metalfence,101,0 +jailbars,101,0 +jailbarsb,101,0 +jailbarsblock,101,0 +jailfence,101,0 +mbars,101,0 +mbarsb,101,0 +mbarsblock,101,0 +mfence,101,0 +jbars,101,0 +jbarsb,101,0 +jbarsblock,101,0 +jfence,101,0 +ibars,101,0 +ibarsb,101,0 +ibarsblock,101,0 +ifence,101,0 +glasspane,102,0 +glassp,102,0 +paneglass,102,0 +pglass,102,0 +flatglass,102,0 +fglass,102,0 +skinnyglass,102,0 +glassflat,102,0 +glassf,102,0 +glassskinny,102,0 +glasss,102,0 +melon,103,0 +watermelon,103,0 +greenmelon,103,0 +melongreen,103,0 +melonblock,103,0 +watermelonblock,103,0 +greenmelonblock,103,0 +vines,106,0 +vine,106,0 +greenvines,106,0 +greenvine,106,0 +gardenvines,106,0 +gardenvine,106,0 +vinesgreen,106,0 +vinegreen,106,0 +vinesgarden,106,0 +vinegarden,106,0 +vinesg,106,0 +vineg,106,0 +gvines,106,0 +gvine,106,0 +woodgate,107,0 +woodenfencegate,107,0 +wfencegate,107,0 +woodfencegate,107,0 +woodengate,107,0 +wgate,107,0 +gate,107,0 +gardengate,107,0 +ggate,107,0 +fencegate,107,0 +fgate,107,0 +brickstairs,108,0 +redbrickstairs,108,0 +redbstairs,108,0 +rbrickstairs,108,0 +bstairs,108,0 +redstairs,108,0 +brickstair,108,0 +redbrickstair,108,0 +redbstair,108,0 +rbrickstair,108,0 +bstair,108,0 +redstair,108,0 +stonebrickstairs,109,0 +stonebstairs,109,0 +sbstairs,109,0 +cementbrickstairs,109,0 +cementstairs,109,0 +cementbstairs,109,0 +cbstairs,109,0 +greybrickstairs,109,0 +greybstairs,109,0 +greystairs,109,0 +mycelium,110,0 +purplegrass,110,0 +pinkgrass,110,0 +mycel,110,0 +swampgrass,110,0 +sgrass,110,0 +mushroomgrass,110,0 +mushgrass,110,0 +lilypad,111,0 +waterlily,111,0 +lily,111,0 +swamppad,111,0 +lpad,111,0 +wlily,111,0 +netherbrickblock,112,0 +hellbrickblock,112,0 +deathbrickblock,112,0 +nbrickblock,112,0 +hbrickblock,112,0 +dbrickblock,112,0 +netherbblock,112,0 +hellbblock,112,0 +deathbblock,112,0 +nbblock,112,0 +hbblock,112,0 +dbblock,112,0 +netherbrickfence,113,0 +hellbrickfence,113,0 +nbrickfence,113,0 +hbrickfence,113,0 +netherbfence,113,0 +hellbfence,113,0 +netherfence,113,0 +hellfence,113,0 +nbfence,113,0 +hbfence,113,0 +nfence,113,0 +hfence,113,0 +netherbrickstairs,114,0 +hellbrickstairs,114,0 +nbrickstairs,114,0 +hbrickstairs,114,0 +netherbstairs,114,0 +hellbstairs,114,0 +netherstairs,114,0 +hellstairs,114,0 +nbstairs,114,0 +hbstairs,114,0 +nstairs,114,0 +hstairs,114,0 +netherbrickstair,114,0 +hellbrickstair,114,0 +nbrickstair,114,0 +hbrickstair,114,0 +netherbstair,114,0 +hellbstair,114,0 +netherstair,114,0 +hellstair,114,0 +nbstair,114,0 +hbstair,114,0 +nstair,114,0 +hstair,114,0 +enchantmenttable,116,0 +enchantingtable,116,0 +enchanttable,116,0 +etable,116,0 +magicaltable,116,0 +magictable,116,0 +mtable,116,0 +enchantmentdesk,116,0 +enchantingdesk,116,0 +enchantdesk,116,0 +edesk,116,0 +magicaldesk,116,0 +magicdesk,116,0 +mdesk,116,0 +booktable,116,0 +bookdesk,116,0 +btable,116,0 +bdesk,116,0 +enderportal,119,0 +endergoo,119,0 +endgoo,119,0 +endportal,119,0 +egoo,119,0 +eportal,119,0 +enderportalframe,120,0 +endportalframe,120,0 +endgooframe,120,0 +endergooframe,120,0 +egooframe,120,0 +eportalframe,120,0 +enderframe,120,0 +endframe,120,0 +enderstone,121,0 +endstone,121,0 +endrock,121,0 +enderrock,121,0 +erock,121,0 +estone,121,0 +enderdragonegg,122,0 +endegg,122,0 +dragonegg,122,0 +degg,122,0 +bossegg,122,0 +begg,122,0 +redstonelamp,123,0 +redlamp,123,0 +rslamp,123,0 +woodendoublestep,125,0 +woodendstep,125,0 +wooddoublestep,125,0 +wooddstep,125,0 +wdoublestep,125,0 +wdstep,125,0 +doublewoodenstep,125,0 +dwoodenstep,125,0 +doublewoodstep,125,0 +dwoodstep,125,0 +doublewstep,125,0 +dwstep,125,0 +woodendoubleslab,125,0 +woodendslab,125,0 +wooddoubleslab,125,0 +wooddslab,125,0 +wdoubleslab,125,0 +wdslab,125,0 +doublewoodenslab,125,0 +dwoodenslab,125,0 +doublewoodslab,125,0 +dwoodslab,125,0 +doublewslab,125,0 +dwslab,125,0 +woodendoublehalfblock,125,0 +woodendhalfblock,125,0 +wooddoublehalfblock,125,0 +wooddhalfblock,125,0 +wdoublehalfblock,125,0 +wdhalfblock,125,0 +doublewoodenhalfblock,125,0 +dwoodenhalfblock,125,0 +doublewoodhalfblock,125,0 +dwoodhalfblock,125,0 +doublewhalfblock,125,0 +dwhalfblock,125,0 +oakwoodendoublehalfblock,125,0 +oakwoodendhalfblock,125,0 +oakwooddoublehalfblock,125,0 +oakwooddhalfblock,125,0 +oakwdoublehalfblock,125,0 +oakwdhalfblock,125,0 +oakdoublewoodenhalfblock,125,0 +oakdwoodenhalfblock,125,0 +oakdoublewoodhalfblock,125,0 +oakdwoodhalfblock,125,0 +oakdoublewhalfblock,125,0 +oakdwhalfblock,125,0 +oakdoublehalfblock,125,0 +oakdhalfblock,125,0 +odhalfblock,125,0 +oakwoodendoublestep,125,0 +oakwoodendstep,125,0 +oakwooddoublestep,125,0 +oakwooddstep,125,0 +oakwdoublestep,125,0 +oakwdstep,125,0 +oakdoublewoodenstep,125,0 +oakdwoodenstep,125,0 +oakdoublewoodstep,125,0 +oakdwoodstep,125,0 +oakdoublewstep,125,0 +oakdwstep,125,0 +oakdoublestep,125,0 +oakdstep,125,0 +odstep,125,0 +oakwoodendoubleslab,125,0 +oakwoodendslab,125,0 +oakwooddoubleslab,125,0 +oakwooddslab,125,0 +oakwdoubleslab,125,0 +oakwdslab,125,0 +oakdoublewoodenslab,125,0 +oakdwoodenslab,125,0 +oakdoublewoodslab,125,0 +oakdwoodslab,125,0 +oakdoublewslab,125,0 +oakdwslab,125,0 +oakdoubleslab,125,0 +oakdslab,125,0 +odslab,125,0 +sprucewoodendoublestep,125,1 +sprucewoodendstep,125,1 +sprucewooddoublestep,125,1 +sprucewooddstep,125,1 +sprucewdoublestep,125,1 +sprucewdstep,125,1 +sprucedoublewoodenstep,125,1 +sprucedwoodenstep,125,1 +sprucedoublewoodstep,125,1 +sprucedwoodstep,125,1 +sprucedoublewstep,125,1 +sprucedwstep,125,1 +sprucedoublestep,125,1 +sprucedstep,125,1 +sprucewoodendoubleslab,125,1 +sprucewoodendslab,125,1 +sprucewooddoubleslab,125,1 +sprucewooddslab,125,1 +sprucewdoubleslab,125,1 +sprucewdslab,125,1 +sprucedoublewoodenslab,125,1 +sprucedwoodenslab,125,1 +sprucedoublewoodslab,125,1 +sprucedwoodslab,125,1 +sprucedoublewslab,125,1 +sprucedwslab,125,1 +sprucedoubleslab,125,1 +sprucedslab,125,1 +sprucewoodendoublehalfblock,125,1 +sprucewoodendhalfblock,125,1 +sprucewooddoublehalfblock,125,1 +sprucewooddhalfblock,125,1 +sprucewdoublehalfblock,125,1 +sprucewdhalfblock,125,1 +sprucedoublewoodenhalfblock,125,1 +sprucedwoodenhalfblock,125,1 +sprucedoublewoodhalfblock,125,1 +sprucedwoodhalfblock,125,1 +sprucedoublewhalfblock,125,1 +sprucedwhalfblock,125,1 +sprucedoublehalfblock,125,1 +sprucedhalfblock,125,1 +darkwoodendoublestep,125,1 +darkwoodendstep,125,1 +darkwooddoublestep,125,1 +darkwooddstep,125,1 +darkwdoublestep,125,1 +darkwdstep,125,1 +darkdoublewoodenstep,125,1 +darkdwoodenstep,125,1 +darkdoublewoodstep,125,1 +darkdwoodstep,125,1 +darkdoublewstep,125,1 +darkdwstep,125,1 +darkdoublestep,125,1 +darkdstep,125,1 +ddstep,125,1 +darkwoodendoubleslab,125,1 +darkwoodendslab,125,1 +darkwooddoubleslab,125,1 +darkwooddslab,125,1 +darkwdoubleslab,125,1 +darkwdslab,125,1 +darkdoublewoodenslab,125,1 +darkdwoodenslab,125,1 +darkdoublewoodslab,125,1 +darkdwoodslab,125,1 +darkdoublewslab,125,1 +darkdwslab,125,1 +darkdoubleslab,125,1 +darkdslab,125,1 +ddslab,125,1 +darkwoodendoublehalfblock,125,1 +darkwoodendhalfblock,125,1 +darkwooddoublehalfblock,125,1 +darkwooddhalfblock,125,1 +darkwdoublehalfblock,125,1 +darkwdhalfblock,125,1 +darkdoublewoodenhalfblock,125,1 +darkdwoodenhalfblock,125,1 +darkdoublewoodhalfblock,125,1 +darkdwoodhalfblock,125,1 +darkdoublewhalfblock,125,1 +darkdwhalfblock,125,1 +darkdoublehalfblock,125,1 +darkdhalfblock,125,1 +ddhalfblock,125,1 +birchwoodendoublestep,125,2 +birchwoodendstep,125,2 +birchwooddoublestep,125,2 +birchwooddstep,125,2 +birchwdoublestep,125,2 +birchwdstep,125,2 +birchdoublewoodenstep,125,2 +birchdwoodenstep,125,2 +birchdoublewoodstep,125,2 +birchdwoodstep,125,2 +birchdoublewstep,125,2 +birchdwstep,125,2 +birchdoublestep,125,2 +birchdstep,125,2 +birchwoodendoubleslab,125,2 +birchwoodendslab,125,2 +birchwooddoubleslab,125,2 +birchwooddslab,125,2 +birchwdoubleslab,125,2 +birchwdslab,125,2 +birchdoublewoodenslab,125,2 +birchdwoodenslab,125,2 +birchdoublewoodslab,125,2 +birchdwoodslab,125,2 +birchdoublewslab,125,2 +birchdwslab,125,2 +birchdoubleslab,125,2 +birchdslab,125,2 +birchwoodendoublehalfblock,125,2 +birchwoodendhalfblock,125,2 +birchwooddoublehalfblock,125,2 +birchwooddhalfblock,125,2 +birchwdoublehalfblock,125,2 +birchwdhalfblock,125,2 +birchdoublewoodenhalfblock,125,2 +birchdwoodenhalfblock,125,2 +birchdoublewoodhalfblock,125,2 +birchdwoodhalfblock,125,2 +birchdoublewhalfblock,125,2 +birchdwhalfblock,125,2 +birchdoublehalfblock,125,2 +birchdhalfblock,125,2 +lightwoodendoublehalfblock,125,2 +lightwoodendhalfblock,125,2 +lightwooddoublehalfblock,125,2 +lightwooddhalfblock,125,2 +lightwdoublehalfblock,125,2 +lightwdhalfblock,125,2 +lightdoublewoodenhalfblock,125,2 +lightdwoodenhalfblock,125,2 +lightdoublewoodhalfblock,125,2 +lightdwoodhalfblock,125,2 +lightdoublewhalfblock,125,2 +lightdwhalfblock,125,2 +lightdoublehalfblock,125,2 +lightdhalfblock,125,2 +ldhalfblock,125,2 +lightwoodendoublestep,125,2 +lightwoodendstep,125,2 +lightwooddoublestep,125,2 +lightwooddstep,125,2 +lightwdoublestep,125,2 +lightwdstep,125,2 +lightdoublewoodenstep,125,2 +lightdwoodenstep,125,2 +lightdoublewoodstep,125,2 +lightdwoodstep,125,2 +lightdoublewstep,125,2 +lightdwstep,125,2 +lightdoublestep,125,2 +lightdstep,125,2 +ldstep,125,2 +lightwoodendoubleslab,125,2 +lightwoodendslab,125,2 +lightwooddoubleslab,125,2 +lightwooddslab,125,2 +lightwdoubleslab,125,2 +lightwdslab,125,2 +lightdoublewoodenslab,125,2 +lightdwoodenslab,125,2 +lightdoublewoodslab,125,2 +lightdwoodslab,125,2 +lightdoublewslab,125,2 +lightdwslab,125,2 +lightdoubleslab,125,2 +lightdslab,125,2 +ldslab,125,2 +junglewoodendoublestep,125,3 +junglewoodendstep,125,3 +junglewooddoublestep,125,3 +junglewooddstep,125,3 +junglewdoublestep,125,3 +junglewdstep,125,3 +jungledoublewoodenstep,125,3 +jungledwoodenstep,125,3 +jungledoublewoodstep,125,3 +jungledwoodstep,125,3 +jungledoublewstep,125,3 +jungledwstep,125,3 +jungledoublestep,125,3 +jungledstep,125,3 +jdstep,125,3 +junglewoodendoubleslab,125,3 +junglewoodendslab,125,3 +junglewooddoubleslab,125,3 +junglewooddslab,125,3 +junglewdoubleslab,125,3 +junglewdslab,125,3 +jungledoublewoodenslab,125,3 +jungledwoodenslab,125,3 +jungledoublewoodslab,125,3 +jungledwoodslab,125,3 +jungledoublewslab,125,3 +jungledwslab,125,3 +jungledoubleslab,125,3 +jungledslab,125,3 +jdslab,125,3 +junglewoodendoublehalfblock,125,3 +junglewoodendhalfblock,125,3 +junglewooddoublehalfblock,125,3 +junglewooddhalfblock,125,3 +junglewdoublehalfblock,125,3 +junglewdhalfblock,125,3 +jungledoublewoodenhalfblock,125,3 +jungledwoodenhalfblock,125,3 +jungledoublewoodhalfblock,125,3 +jungledwoodhalfblock,125,3 +jungledoublewhalfblock,125,3 +jungledwhalfblock,125,3 +jungledoublehalfblock,125,3 +jungledhalfblock,125,3 +jdhalfblock,125,3 +forestwoodendoublehalfblock,125,3 +forestwoodendhalfblock,125,3 +forestwooddoublehalfblock,125,3 +forestwooddhalfblock,125,3 +forestwdoublehalfblock,125,3 +forestwdhalfblock,125,3 +forestdoublewoodenhalfblock,125,3 +forestdwoodenhalfblock,125,3 +forestdoublewoodhalfblock,125,3 +forestdwoodhalfblock,125,3 +forestdoublewhalfblock,125,3 +forestdwhalfblock,125,3 +forestdoublehalfblock,125,3 +forestdhalfblock,125,3 +fdhalfblock,125,3 +forestwoodendoublestep,125,3 +forestwoodendstep,125,3 +forestwooddoublestep,125,3 +forestwooddstep,125,3 +forestwdoublestep,125,3 +forestwdstep,125,3 +forestdoublewoodenstep,125,3 +forestdwoodenstep,125,3 +forestdoublewoodstep,125,3 +forestdwoodstep,125,3 +forestdoublewstep,125,3 +forestdwstep,125,3 +forestdoublestep,125,3 +forestdstep,125,3 +fdstep,125,3 +forestwoodendoubleslab,125,3 +forestwoodendslab,125,3 +forestwooddoubleslab,125,3 +forestwooddslab,125,3 +forestwdoubleslab,125,3 +forestwdslab,125,3 +forestdoublewoodenslab,125,3 +forestdwoodenslab,125,3 +forestdoublewoodslab,125,3 +forestdwoodslab,125,3 +forestdoublewslab,125,3 +forestdwslab,125,3 +forestdoubleslab,125,3 +forestdslab,125,3 +fdslab,125,3 +acaciawoodendoublestep,125,4 +acaciawoodendstep,125,4 +acaciawooddoublestep,125,4 +acaciawooddstep,125,4 +acaciawdoublestep,125,4 +acaciawdstep,125,4 +acaciadoublewoodenstep,125,4 +acaciadwoodenstep,125,4 +acaciadoublewoodstep,125,4 +acaciadwoodstep,125,4 +acaciadoublewstep,125,4 +acaciadwstep,125,4 +acaciadoublestep,125,4 +acaciadstep,125,4 +adstep,125,4 +acaciawoodendoubleslab,125,4 +acaciawoodendslab,125,4 +acaciawooddoubleslab,125,4 +acaciawooddslab,125,4 +acaciawdoubleslab,125,4 +acaciawdslab,125,4 +acaciadoublewoodenslab,125,4 +acaciadwoodenslab,125,4 +acaciadoublewoodslab,125,4 +acaciadwoodslab,125,4 +acaciadoublewslab,125,4 +acaciadwslab,125,4 +acaciadoubleslab,125,4 +acaciadslab,125,4 +adslab,125,4 +acaciawoodendoublehalfblock,125,4 +acaciawoodendhalfblock,125,4 +acaciawooddoublehalfblock,125,4 +acaciawooddhalfblock,125,4 +acaciawdoublehalfblock,125,4 +acaciawdhalfblock,125,4 +acaciadoublewoodenhalfblock,125,4 +acaciadwoodenhalfblock,125,4 +acaciadoublewoodhalfblock,125,4 +acaciadwoodhalfblock,125,4 +acaciadoublewhalfblock,125,4 +acaciadwhalfblock,125,4 +acaciadoublehalfblock,125,4 +acaciadhalfblock,125,4 +adhalfblock,125,4 +darkoakwoodendoublehalfblock,125,5 +darkoakwoodendhalfblock,125,5 +darkoakwooddoublehalfblock,125,5 +darkoakwooddhalfblock,125,5 +darkoakwdoublehalfblock,125,5 +darkoakwdhalfblock,125,5 +darkoakdoublewoodenhalfblock,125,5 +darkoakdwoodenhalfblock,125,5 +darkoakdoublewoodhalfblock,125,5 +darkoakdwoodhalfblock,125,5 +darkoakdoublewhalfblock,125,5 +darkoakdwhalfblock,125,5 +darkoakdoublehalfblock,125,5 +darkoakdhalfblock,125,5 +dodhalfblock,125,5 +darkoakwoodendoublestep,125,5 +darkoakwoodendstep,125,5 +darkoakwooddoublestep,125,5 +darkoakwooddstep,125,5 +darkoakwdoublestep,125,5 +darkoakwdstep,125,5 +darkoakdoublewoodenstep,125,5 +darkoakdwoodenstep,125,5 +darkoakdoublewoodstep,125,5 +darkoakdwoodstep,125,5 +darkoakdoublewstep,125,5 +darkoakdwstep,125,5 +darkoakdoublestep,125,5 +darkoakdstep,125,5 +dodstep,125,5 +darkoakwoodendoubleslab,125,5 +darkoakwoodendslab,125,5 +darkoakwooddoubleslab,125,5 +darkoakwooddslab,125,5 +darkoakwdoubleslab,125,5 +darkoakwdslab,125,5 +darkoakdoublewoodenslab,125,5 +darkoakdwoodenslab,125,5 +darkoakdoublewoodslab,125,5 +darkoakdwoodslab,125,5 +darkoakdoublewslab,125,5 +darkoakdwslab,125,5 +darkoakdoubleslab,125,5 +darkoakdslab,125,5 +dodslab,125,5 +woodenstep,126,0 +woodstep,126,0 +wstep,126,0 +woodenslab,126,0 +woodslab,126,0 +wslab,126,0 +woodenhalfblock,126,0 +woodhalfblock,126,0 +whalfblock,126,0 +oakwoodenstep,126,0 +oakwoodstep,126,0 +oakwstep,126,0 +oakstep,126,0 +ostep,126,0 +oakwoodenslab,126,0 +oakwoodslab,126,0 +oakwslab,126,0 +oakslab,126,0 +oslab,126,0 +oakwoodenhalfblock,126,0 +oakwoodhalfblock,126,0 +oakwhalfblock,126,0 +oakhalfblock,126,0 +ohalfblock,126,0 +sprucewoodenstep,126,1 +sprucewoodstep,126,1 +sprucewstep,126,1 +sprucestep,126,1 +sprucewoodenslab,126,1 +sprucewoodslab,126,1 +sprucewslab,126,1 +spruceslab,126,1 +sprucewoodenhalfblock,126,1 +sprucewoodhalfblock,126,1 +sprucewhalfblock,126,1 +sprucehalfblock,126,1 +darkwoodenstep,126,1 +darkwoodstep,126,1 +darkwstep,126,1 +darkstep,126,1 +darkwoodenslab,126,1 +darkwoodslab,126,1 +darkwslab,126,1 +darkslab,126,1 +darkwoodenhalfblock,126,1 +darkwoodhalfblock,126,1 +darkwhalfblock,126,1 +darkhalfblock,126,1 +birchwoodenstep,126,2 +birchwoodstep,126,2 +birchwstep,126,2 +birchstep,126,2 +birchwoodenslab,126,2 +birchwoodslab,126,2 +birchwslab,126,2 +birchslab,126,2 +birchwoodenhalfblock,126,2 +birchwoodhalfblock,126,2 +birchwhalfblock,126,2 +birchhalfblock,126,2 +lightwoodenstep,126,2 +lightwoodstep,126,2 +lightwstep,126,2 +lightstep,126,2 +lstep,126,2 +lightwoodenslab,126,2 +lightwoodslab,126,2 +lightwslab,126,2 +lightslab,126,2 +lslab,126,2 +lightwoodenhalfblock,126,2 +lightwoodhalfblock,126,2 +lightwhalfblock,126,2 +lighthalfblock,126,2 +lhalfblock,126,2 +junglewoodenstep,126,3 +junglewoodstep,126,3 +junglewstep,126,3 +junglestep,126,3 +jstep,126,3 +junglewoodenslab,126,3 +junglewoodslab,126,3 +junglewslab,126,3 +jungleslab,126,3 +jslab,126,3 +junglewoodenhalfblock,126,3 +junglewoodhalfblock,126,3 +junglewhalfblock,126,3 +junglehalfblock,126,3 +jhalfblock,126,3 +forestwoodenstep,126,3 +forestwoodstep,126,3 +forestwstep,126,3 +foreststep,126,3 +fstep,126,3 +forestwoodenslab,126,3 +forestwoodslab,126,3 +forestwslab,126,3 +forestslab,126,3 +fslab,126,3 +forestwoodenhalfblock,126,3 +forestwoodhalfblock,126,3 +forestwhalfblock,126,3 +foresthalfblock,126,3 +fhalfblock,126,3 +acaciawoodenstep,126,4 +acaciawoodstep,126,4 +acaciawstep,126,4 +acaciastep,126,4 +astep,126,4 +acaciawoodenslab,126,4 +acaciawoodslab,126,4 +acaciawslab,126,4 +acaciaslab,126,4 +aslab,126,4 +acaciawoodenhalfblock,126,4 +acaciawoodhalfblock,126,4 +acaciawhalfblock,126,4 +acaciahalfblock,126,4 +ahalfblock,126,4 +darkoakwoodenstep,126,5 +darkoakwoodstep,126,5 +darkoakwstep,126,5 +darkoakstep,126,5 +dostep,126,5 +darkoakwoodenslab,126,5 +darkoakwoodslab,126,5 +darkoakwslab,126,5 +darkoakslab,126,5 +doslab,126,5 +darkoakwoodenhalfblock,126,5 +darkoakwoodhalfblock,126,5 +darkoakwhalfblock,126,5 +darkoakhalfblock,126,5 +dohalfblock,126,5 +cocoaplant,127,0 +cocoplant,127,0 +cplant,127,0 +cocoafruit,127,0 +cocofruit,127,0 +cfruit,127,0 +cocoapod,127,0 +cocopod,127,0 +cpod,127,0 +sandstonestairs,128,0 +sandstairs,128,0 +sandsstairs,128,0 +sstonestairs,128,0 +ssstairs,128,0 +sandstair,128,0 +sandstonestair,128,0 +sandsstair,128,0 +sstonestair,128,0 +ssstair,128,0 +emeraldore,129,0 +eore,129,0 +oreemerald,129,0 +oree,129,0 +enderchest,130,0 +endchest,130,0 +echest,130,0 +chestender,130,0 +chestend,130,0 +cheste,130,0 +endercontainer,130,0 +endcontainer,130,0 +econtainer,130,0 +tripwirehook,131,0 +tripwire,131,0 +trip,131,0 +tripwirelever,131,0 +triphook,131,0 +emeraldblock,133,0 +blockemerald,133,0 +eblock,133,0 +blocke,133,0 +sprucewoodenstairs,134,0 +sprucewoodstairs,134,0 +sprucewstairs,134,0 +sprucestairs,134,0 +darkwoodenstairs,134,0 +darkwoodstairs,134,0 +darkwstairs,134,0 +darkstairs,134,0 +dstairs,134,0 +sprucewoodenstair,134,0 +sprucewoodstair,134,0 +sprucewstair,134,0 +sprucestair,134,0 +darkwoodenstair,134,0 +darkwoodstair,134,0 +darkwstair,134,0 +darkstair,134,0 +dstair,134,0 +birchwoodenstairs,135,0 +birchwoodstairs,135,0 +birchwstairs,135,0 +birchstairs,135,0 +lightwoodenstairs,135,0 +lightwoodstairs,135,0 +lightwstairs,135,0 +lightstairs,135,0 +lstairs,135,0 +birchwoodenstair,135,0 +birchwoodstair,135,0 +birchwstair,135,0 +birchstair,135,0 +lightwoodenstair,135,0 +lightwoodstair,135,0 +lightwstair,135,0 +lightstair,135,0 +lstair,135,0 +junglewoodenstairs,136,0 +junglewoodstairs,136,0 +junglewstairs,136,0 +junglestairs,136,0 +jstairs,136,0 +forestwoodenstairs,136,0 +forestwoodstairs,136,0 +forestwstairs,136,0 +foreststairs,136,0 +fstairs,136,0 +junglewoodenstair,136,0 +junglewoodstair,136,0 +junglewstair,136,0 +junglestair,136,0 +jstair,136,0 +forestwoodenstair,136,0 +forestwoodstair,136,0 +forestwstair,136,0 +foreststair,136,0 +fstair,136,0 +commandblock,137,0 +blockcommand,137,0 +cmdblock,137,0 +blockcmd,137,0 +macroblock,137,0 +blockmacro,137,0 +beacon,138,0 +beaconblock,138,0 +cobblestonewall,139,0 +cstonewall,139,0 +cobblewall,139,0 +cobblestonefence,139,0 +cstonefence,139,0 +cobblefence,139,0 +cswall,139,0 +csfence,139,0 +cwall,139,0 +cfence,139,0 +mosscobblestonewall,139,1 +mosscstonewall,139,1 +mosscobblewall,139,1 +mcobblestonewall,139,1 +mcstonewall,139,1 +mcobblewall,139,1 +mosscobblestonefence,139,1 +mosscstonefence,139,1 +mosscobblefence,139,1 +mcobblestonefence,139,1 +mcstonefence,139,1 +mcobblefence,139,1 +mcswall,139,0 +mcsfence,139,0 +mcwall,139,0 +mcfence,139,0 +plantedcarrot,141,0 +plantcarrot,141,0 +carrots,141,0 +growingcarrot,141,0 +potatoplant,142,0 +potatoes,142,0 +plantedpotato,142,0 +plantpotato,142,0 +growingpotato,142,0 +woodenbutton,143,0 +woodenplankbutton,143,0 +woodplankbutton,143,0 +wplankbutton,143,0 +plankbutton,143,0 +woodbutton,143,0 +wbutton,143,0 +anvil,145,0 +slightlydamagedanvil,145,1 +slightdamageanvil,145,1 +damagedanvil,145,1 +verydamagedanvil,145,2 +trapchest,146,0 +trappedchest,146,0 +chesttrapped,146,0 +chesttrap,146,0 +goldpressureplate,147,0 +weightedgoldpressureplate,147,0 +weightgoldpressureplate,147,0 +wgoldpressureplate,147,0 +weightedgoldpressplate,147,0 +weightgoldpressplate,147,0 +wgoldpressplate,147,0 +goldpressplate,147,0 +weightedgoldpplate,147,0 +weightgoldpplate,147,0 +wgoldpplate,147,0 +goldpplate,147,0 +weightedgoldplate,147,0 +weightgoldplate,147,0 +wgoldplate,147,0 +goldplate,147,0 +weightedgpressureplate,147,0 +weightgpressureplate,147,0 +wgpressureplate,147,0 +gpressureplate,147,0 +weightedgpressplate,147,0 +weightgpressplate,147,0 +wgpressplate,147,0 +gpressplate,147,0 +weightedgpplate,147,0 +weightgpplate,147,0 +wgpplate,147,0 +gpplate,147,0 +weightedgplate,147,0 +weightgplate,147,0 +wgplate,147,0 +gplate,147,0 +ironpressureplate,148,0 +weightedironpressureplate,148,0 +weightironpressureplate,148,0 +wironpressureplate,148,0 +weightedironpressplate,148,0 +weightironpressplate,148,0 +wironpressplate,148,0 +ironpressplate,148,0 +weightedironpplate,148,0 +weightironpplate,148,0 +wironpplate,148,0 +ironpplate,148,0 +weightedironplate,148,0 +weightironplate,148,0 +wironplate,148,0 +ironplate,148,0 +weightedipressureplate,148,0 +weightipressureplate,148,0 +wipressureplate,148,0 +ipressureplate,148,0 +weightedipressplate,148,0 +weightipressplate,148,0 +wipressplate,148,0 +ipressplate,148,0 +weightedipplate,148,0 +weightipplate,148,0 +wipplate,148,0 +ipplate,148,0 +weightediplate,148,0 +weightiplate,148,0 +wiplate,148,0 +iplate,148,0 +daylightsensor,151,0 +daylightsense,151,0 +lightsensor,151,0 +lightsense,151,0 +daysensor,151,0 +daysense,151,0 +timesensor,151,0 +timesense,151,0 +redstoneblock,152,0 +rstoneblock,152,0 +redsblock,152,0 +rsblock,152,0 +blockredstone,152,0 +blockrstone,152,0 +blockreds,152,0 +blockrs,152,0 +netherquartzore,153,0 +hellquartzore,153,0 +deathquartzore,153,0 +nquartzore,153,0 +hquartzore,153,0 +dquartzore,153,0 +quartzore,153,0 +netherqore,153,0 +hellqore,153,0 +deathqore,153,0 +nqore,153,0 +hqore,153,0 +dqore,153,0 +qore,153,0 +hopper,154,0 +chestpuller,154,0 +chestpull,154,0 +cheststorer,154,0 +cheststore,154,0 +itempuller,154,0 +itempull,154,0 +itemstorer,154,0 +itemstore,154,0 +quartzblock,155,0 +netherquartzblock,155,0 +nqblock,155,0 +qblock,155,0 +chiseledquartzblock,155,1 +chiselquartzblock,155,1 +cquartzblock,155,1 +cqblock,155,1 +pillarquartzblock,155,2 +pquartzblock,155,2 +pqblock,155,2 +quartzstairs,156,0 +qstairs,156,0 +quartzstair,156,0 +qstair,156,0 +activatorrails,157,0 +activaterails,157,0 +triggerrails,157,0 +arails,157,0 +trails,157,0 +activatorrail,157,0 +activaterail,157,0 +triggerrail,157,0 +arail,157,0 +trail,157,0 +activatortrack,157,0 +activatetrack,157,0 +triggertrack,157,0 +atrack,157,0 +ttrack,157,0 +dropper,158,0 +drop,158,0 +chestdispenser,158,0 +chestdispense,158,0 +chestdropper,158,0 +chestdrop,158,0 +whiteclay,159,0 +whitesclay,159,0 +whitestainedclay,159,0 +wclay,159,0 +wsclay,159,0 +wstainedclay,159,0 +sclay,159,0 +stainedclay,159,0 +orangeclay,159,1 +orangesclay,159,1 +orangestainedclay,159,1 +oclay,159,1 +osclay,159,1 +ostainedclay,159,1 +magentaclay,159,2 +magentasclay,159,2 +magentastainedclay,159,2 +mclay,159,2 +msclay,159,2 +mstainedclay,159,2 +lightblueclay,159,3 +lightbluesclay,159,3 +lightbluestainedclay,159,3 +lblueclay,159,3 +lbluesclay,159,3 +lbluestainedclay,159,3 +lightbluclay,159,3 +lightblusclay,159,3 +lightblustainedclay,159,3 +lbluclay,159,3 +lblusclay,159,3 +lblustainedclay,159,3 +lbclay,159,3 +lbsclay,159,3 +lbstainedclay,159,3 +yellowclay,159,4 +yellowsclay,159,4 +yellowstainedclay,159,4 +yclay,159,4 +ysclay,159,4 +ystainedclay,159,4 +lightgreenclay,159,5 +lightgreensclay,159,5 +lightgreenstainedclay,159,5 +lgreenclay,159,5 +lgreensclay,159,5 +lgreenstainedclay,159,5 +lightgreclay,159,5 +lightgresclay,159,5 +lightgrestainedclay,159,5 +lgreclay,159,5 +lgresclay,159,5 +lgrestainedclay,159,5 +limeclay,159,5 +limesclay,159,5 +limestainedclay,159,5 +lclay,159,5 +lsclay,159,5 +lstainedclay,159,5 +pinkclay,159,6 +pinksclay,159,6 +pinkstainedclay,159,6 +piclay,159,6 +pisclay,159,6 +pistainedclay,159,6 +darkgrayclay,159,7 +darkgraysclay,159,7 +darkgraystainedclay,159,7 +dgrayclay,159,7 +dgraysclay,159,7 +dgraystainedclay,159,7 +darkgreyclay,159,7 +darkgreeysclay,159,7 +darkgreystainedclay,159,7 +dgreyclay,159,7 +dgreysclay,159,7 +dgreystainedclay,159,7 +darkgraclay,159,7 +darkgrasclay,159,7 +darkgrastainedclay,159,7 +dgraclay,159,7 +dgrasclay,159,7 +dgrastainedclay,159,7 +grayclay,159,7 +graysclay,159,7 +graystainedclay,159,7 +greyclay,159,7 +greysclay,159,7 +greystainedclay,159,7 +graclay,159,7 +grasclay,159,7 +grastainedclay,159,7 +lightgrayclay,159,8 +lightgraysclay,159,8 +lightgraystainedclay,159,8 +lgrayclay,159,8 +lgraysclay,159,8 +lgraystainedclay,159,8 +lightgreyclay,159,8 +lightgreysclay,159,8 +lightgreystainedclay,159,8 +lgreyclay,159,8 +lgreysclay,159,8 +lgreystainedclay,159,8 +lightgraclay,159,8 +lightgrasclay,159,8 +lightgrastainedclay,159,8 +lgraclay,159,8 +lgrasclay,159,8 +lgrastainedclay,159,8 +silverclay,159,8 +silversclay,159,8 +silverstainedclay,159,8 +siclay,159,8 +siasclay,159,8 +siastainedclay,159,8 +cyanclay,159,9 +cyansclay,159,9 +cyanstainedclay,159,9 +cclay,159,9 +csclay,159,9 +cstainedclay,159,9 +purpleclay,159,10 +purplesclay,159,10 +purplestainedclay,159,10 +puclay,159,10 +pusclay,159,10 +pustainedclay,159,10 +blueclay,159,11 +bluesclay,159,11 +bluestainedclay,159,11 +bluclay,159,11 +blusclay,159,11 +blustainedclay,159,11 +brownclay,159,12 +brownsclay,159,12 +brownstainedclay,159,12 +broclay,159,12 +brosclay,159,12 +brostainedclay,159,12 +darkgreenclay,159,13 +darkgreensclay,159,13 +darkgreenstainedclay,159,13 +dgreenclay,159,13 +dgreensclay,159,13 +dgreenstainedclay,159,13 +greenclay,159,13 +greensclay,159,13 +greenstainedclay,159,13 +darkgreclay,159,13 +darkgresclay,159,13 +darkgrestainedclay,159,13 +dgreclay,159,13 +dgresclay,159,13 +dgrestainedclay,159,13 +greclay,159,13 +gresclay,159,13 +grestainedclay,159,13 +redclay,159,14 +redsclay,159,14 +redstainedclay,159,14 +rclay,159,14 +rsclay,159,14 +rstainedclay,159,14 +blackclay,159,15 +blacksclay,159,15 +blackstainedclay,159,15 +blaclay,159,15 +blasclay,159,15 +blastainedclay,159,15 +whiteglasspane,160,0 +whitesglasspane,160,0 +whitestainedglasspane,160,0 +wglasspane,160,0 +wsglasspane,160,0 +wstainedglasspane,160,0 +sglasspane,160,0 +stainedglasspane,160,0 +orangeglasspane,160,1 +orangesglasspane,160,1 +orangestainedglasspane,160,1 +oglasspane,160,1 +osglasspane,160,1 +ostainedglasspane,160,1 +magentaglasspane,160,2 +magentasglasspane,160,2 +magentastainedglasspane,160,2 +mglasspane,160,2 +msglasspane,160,2 +mstainedglasspane,160,2 +lightblueglasspane,160,3 +lightbluesglasspane,160,3 +lightbluestainedglasspane,160,3 +lblueglasspane,160,3 +lbluesglasspane,160,3 +lbluestainedglasspane,160,3 +lightbluglasspane,160,3 +lightblusglasspane,160,3 +lightblustainedglasspane,160,3 +lbluglasspane,160,3 +lblusglasspane,160,3 +lblustainedglasspane,160,3 +lbglasspane,160,3 +lbsglasspane,160,3 +lbstainedglasspane,160,3 +yellowglasspane,160,4 +yellowsglasspane,160,4 +yellowstainedglasspane,160,4 +yglasspane,160,4 +ysglasspane,160,4 +ystainedglasspane,160,4 +lightgreenglasspane,160,5 +lightgreensglasspane,160,5 +lightgreenstainedglasspane,160,5 +lgreenglasspane,160,5 +lgreensglasspane,160,5 +lgreenstainedglasspane,160,5 +lightgreglasspane,160,5 +lightgresglasspane,160,5 +lightgrestainedglasspane,160,5 +lgreglasspane,160,5 +lgresglasspane,160,5 +lgrestainedglasspane,160,5 +limeglasspane,160,5 +limesglasspane,160,5 +limestainedglasspane,160,5 +lglasspane,160,5 +lsglasspane,160,5 +lstainedglasspane,160,5 +pinkglasspane,160,6 +pinksglasspane,160,6 +pinkstainedglasspane,160,6 +piglasspane,160,6 +pisglasspane,160,6 +pistainedglasspane,160,6 +darkgrayglasspane,160,7 +darkgraysglasspane,160,7 +darkgraystainedglasspane,160,7 +dgrayglasspane,160,7 +dgraysglasspane,160,7 +dgraystainedglasspane,160,7 +darkgreyglasspane,160,7 +darkgreysglasspane,160,7 +darkgreystainedglasspane,160,7 +dgreyglasspane,160,7 +dgreysglasspane,160,7 +dgreystainedglasspane,160,7 +darkgraglasspane,160,7 +darkgrasglasspane,160,7 +darkgrastainedglasspane,160,7 +dgraglasspane,160,7 +dgrasglasspane,160,7 +dgrastainedglasspane,160,7 +grayglasspane,160,7 +graysglasspane,160,7 +graystainedglasspane,160,7 +greyglasspane,160,7 +greysglasspane,160,7 +greystainedglasspane,160,7 +graglasspane,160,7 +grasglasspane,160,7 +grastainedglasspane,160,7 +lightgrayglasspane,160,8 +lightgraysglasspane,160,8 +lightgraystainedglasspane,160,8 +lgrayglasspane,160,8 +lgraysglasspane,160,8 +lgraystainedglasspane,160,8 +lightgreyglasspane,160,8 +lightgreysglasspane,160,8 +lightgreystainedglasspane,160,8 +lgreyglasspane,160,8 +lgreysglasspane,160,8 +lgreystainedglasspane,160,8 +lightgraglasspane,160,8 +lightgrasglasspane,160,8 +lightgrastainedglasspane,160,8 +lgraglasspane,160,8 +lgrasglasspane,160,8 +lgrastainedglasspane,160,8 +silverglasspane,160,8 +silversglasspane,160,8 +silverstainedglasspane,160,8 +siglasspane,160,8 +siasglasspane,160,8 +siastainedglasspane,160,8 +cyanglasspane,160,9 +cyansglasspane,160,9 +cyanstainedglasspane,160,9 +cglasspane,160,9 +csglasspane,160,9 +cstainedglasspane,160,9 +purpleglasspane,160,10 +purplesglasspane,160,10 +purplestainedglasspane,160,10 +puglasspane,160,10 +pusglasspane,160,10 +pustainedglasspane,160,10 +blueglasspane,160,11 +bluesglasspane,160,11 +bluestainedglasspane,160,11 +bluglasspane,160,11 +blusglasspane,160,11 +blustainedglasspane,160,11 +brownglasspane,160,12 +brownsglasspane,160,12 +brownstainedglasspane,160,12 +broglasspane,160,12 +brosglasspane,160,12 +brostainedglasspane,160,12 +darkgreenglasspane,160,13 +darkgreensglasspane,160,13 +darkgreenstainedglasspane,160,13 +dgreenglasspane,160,13 +dgreensglasspane,160,13 +dgreenstainedglasspane,160,13 +greenglasspane,160,13 +greensglasspane,160,13 +greenstainedglasspane,160,13 +darkgreglasspane,160,13 +darkgresglasspane,160,13 +darkgrestainedglasspane,160,13 +dgreglasspane,160,13 +dgresglasspane,160,13 +dgrestainedglasspane,160,13 +greglasspane,160,13 +gresglasspane,160,13 +grestainedglasspane,160,13 +redglasspane,160,14 +redsglasspane,160,14 +redstainedglasspane,160,14 +rglasspane,160,14 +rsglasspane,160,14 +rstainedglasspane,160,14 +blackglasspane,160,15 +blacksglasspane,160,15 +blackstainedglasspane,160,15 +blaglasspane,160,15 +blasglasspane,160,15 +blastainedglasspane,160,15 +acacialeaves,161,0 +acaciatreeleaves,161,0 +acacialogleaves,161,0 +acaciatrunkleaves,161,0 +acaciawoodleaves,161,0 +aleaves,161,0 +atreeleaves,161,0 +alogleaves,161,0 +atrunkleaves,161,0 +awoodleaves,161,0 +acacialeave,161,0 +acaciatreeleave,161,0 +acacialogleave,161,0 +acaciatrunkleave,161,0 +acaciawoodleave,161,0 +aleave,161,0 +atreeleave,161,0 +alogleave,161,0 +atrunkleave,161,0 +awoodleave,161,0 +acaciatreeleaf,161,0 +acacialogleaf,161,0 +acaciatrunkleaf,161,0 +acaciawoodleaf,161,0 +aleaf,161,0 +atreeleaf,161,0 +alogleaf,161,0 +atrunkleaf,161,0 +awoodleaf,161,0 +darkoakleaves,161,1 +darkoaktreeleaves,161,1 +darkoaklogleaves,161,1 +darkoaktrunkleaves,161,1 +darkoakwoodleaves,161,1 +doakleaves,161,1 +doaktreeleaves,161,1 +doaklogleaves,161,1 +doaktrunkleaves,161,1 +doakwoodleaves,161,1 +doleaves,161,1 +dotreeleaves,161,1 +dologleaves,161,1 +dotrunkleaves,161,1 +dowoodleaves,161,1 +darkoakleave,161,1 +darkoaktreeleave,161,1 +darkoaklogleave,161,1 +darkoaktrunkleave,161,1 +darkoakwoodleave,161,1 +doakleave,161,1 +doaktreeleave,161,1 +doaklogleave,161,1 +doaktrunkleave,161,1 +doakwoodleave,161,1 +doleave,161,1 +dotreeleave,161,1 +dologleave,161,1 +dotrunkleave,161,1 +dowoodleave,161,1 +darkoaktreeleaf,161,1 +darkoaklogleaf,161,1 +darkoaktrunkleaf,161,1 +darkoakwoodleaf,161,1 +doakleaf,161,1 +doaktreeleaf,161,1 +doaklogleaf,161,1 +doaktrunkleaf,161,1 +doakwoodleaf,161,1 +doleaf,161,1 +dotreeleaf,161,1 +dologleaf,161,1 +dotrunkleaf,161,1 +dowoodleaf,161,1 +acacia,162,0 +acaciatree,162,0 +acacialog,162,0 +acaciatrunk,162,0 +acaciawood,162,0 +atree,162,0 +alog,162,0 +atrunk,162,0 +awood,162,0 +darkoak,162,1 +darkoaktree,162,1 +darkoaklog,162,1 +darkoaktrunk,162,1 +darkoakwood,162,1 +doak,162,1 +doaktree,162,1 +doaklog,162,1 +doaktrunk,162,1 +doakwood,162,1 +dotree,162,1 +dolog,162,1 +dotrunk,162,1 +dowood,162,1 +acaciawoodenstairs,163,0 +acaciawoodstairs,163,0 +acaciawstairs,163,0 +acaciastairs,163,0 +awoodenstairs,163,0 +awoodstairs,163,0 +awstairs,163,0 +astairs,163,0 +acaciawoodenstair,163,0 +acaciawoodstair,163,0 +acaciawstair,163,0 +acaciastair,163,0 +awoodenstair,163,0 +awoodstair,163,0 +awstair,163,0 +astair,163,0 +darkoakwoodenstairs,164,0 +darkoakwoodstairs,164,0 +darkoakwstairs,164,0 +darkoakstairs,164,0 +doakwoodenstairs,164,0 +doakwoodstairs,164,0 +doakwstairs,164,0 +doakstairs,164,0 +dowoodenstairs,164,0 +dowoodstairs,164,0 +dowstairs,164,0 +dostairs,164,0 +darkoakwoodenstair,164,0 +darkoakwoodstair,164,0 +darkoakwstair,164,0 +darkoakstair,164,0 +doakwoodenstair,164,0 +doakwoodstair,164,0 +doakwstair,164,0 +doakstair,164,0 +dowoodenstair,164,0 +dowoodstair,164,0 +dowstair,164,0 +dostair,164,0 +hay,170,0 +hayblock,170,0 +haybale,170,0 +baleofhay,170,0 +hayofbale,170,0 +whitecarpet,171,0 +whitefloor,171,0 +wcarpet,171,0 +wfloor,171,0 +carpet,171,0 +floor,171,0 +orangecarpet,171,1 +orangefloor,171,1 +ocarpet,171,1 +ofloor,171,1 +magentacarpet,171,2 +magentafloor,171,2 +mcarpet,171,2 +mfloor,171,2 +lightbluecarpet,171,3 +lightbluefloor,171,3 +lbluecarpet,171,3 +lbluefloor,171,3 +lbcarpet,171,3 +lbfloor,171,3 +lightblucarpet,171,3 +lightblufloor,171,3 +lblucarpet,171,3 +lblufloor,171,3 +yellowcarpet,171,4 +yellowfloor,171,4 +ycarpet,171,4 +yfloor,171,4 +lightgreencarpet,171,5 +lightgreenfloor,171,5 +lgreencarpet,171,5 +lgreenfloor,171,5 +lightgrecarpet,171,5 +lightgrefloor,171,5 +lgrecarpet,171,5 +lgrefloor,171,5 +limecarpet,171,5 +limefloor,171,5 +lcarpet,171,5 +lfloor,171,5 +pinkcarpet,171,6 +pinkfloor,171,6 +picarpet,171,6 +pifloor,171,6 +darkgraycarpet,171,7 +darkgrayfloor,171,7 +dgraycarpet,171,7 +dgrayfloor,171,7 +darkgreycarpet,171,7 +darkgreyfloor,171,7 +dgreycarpet,171,7 +dgreyfloor,171,7 +darkgracarpet,171,7 +darkgrafloor,171,7 +dgracarpet,171,7 +dgrafloor,171,7 +graycarpet,171,7 +grayfloor,171,7 +greycarpet,171,7 +greyfloor,171,7 +gracarpet,171,7 +grafloor,171,7 +lightgraycarpet,171,8 +lightgrayfloor,171,8 +lgraycarpet,171,8 +lgrayfloor,171,8 +lightgreycarpet,171,8 +lightgreyfloor,171,8 +lgreycarpet,171,8 +lgreyfloor,171,8 +lightgracarpet,171,8 +lightgrafloor,171,8 +lgracarpet,171,8 +lgrafloor,171,8 +silvercarpet,171,8 +silverfloor,171,8 +sicarpet,171,8 +siafloor,171,8 +cyancarpet,171,9 +cyanfloor,171,9 +ccarpet,171,9 +cfloor,171,9 +purplecarpet,171,10 +purplefloor,171,10 +pucarpet,171,10 +pufloor,171,10 +bluecarpet,171,11 +bluefloor,171,11 +blucarpet,171,11 +blufloor,171,11 +browncarpet,171,12 +brownfloor,171,12 +brocarpet,171,12 +brofloor,171,12 +darkgreencarpet,171,13 +darkgreenfloor,171,13 +dgreencarpet,171,13 +dgreenfloor,171,13 +greencarpet,171,13 +greenfloor,171,13 +darkgrecarpet,171,13 +darkgrefloor,171,13 +dgrecarpet,171,13 +dgrefloor,171,13 +grecarpet,171,13 +grefloor,171,13 +redcarpet,171,14 +redfloor,171,14 +rcarpet,171,14 +rfloor,171,14 +blackcarpet,171,15 +blackfloor,171,15 +blacarpet,171,15 +blafloor,171,15 +hardenedclay,172,0 +hardclay,172,0 +hclay,172,0 +coalblock,173,0 +blockcoal,173,0 +coblock,173,0 +blockco,173,0 +coalb,173,0 +bcoal,173,0 +packedice,174,0 +packice,174,0 +solidice,174,0 +sunflower,175,0 +yellowsunflower,175,0 +lilac,175,1 +magentalilac,175,1 +syringa,175,1 +longtallgrass,175,2 +extratallgrass,175,2 +doubletallgrass,175,2 +largetallgrass,175,2 +longtgrass,175,2 +extratgrass,175,2 +doubletgrass,175,2 +largetgrass,175,2 +ltgrass,175,2 +etgrass,175,2 +dtgrass,175,2 +bigfern,175,3 +largefern,175,3 +doublefern,175,3 +bfern,175,3 +lfern,175,3 +dfern,175,3 +rosebush,175,4 +redrosebush,175,4 +peony,175,5 +pinkpeony,175,5 +paeonia,175,5 +ironshovel,256,0 +ironspade,256,0 +ishovel,256,0 +ispade,256,0 +steelshovel,256,0 +steelspade,256,0 +ironpickaxe,257,0 +ironpick,257,0 +steelpickaxe,257,0 +steelpick,257,0 +ipickaxe,257,0 +ipick,257,0 +ironaxe,258,0 +iaxe,258,0 +steelaxe,258,0 +flintandsteel,259,0 +flintandiron,259,0 +flintandtinder,259,0 +flintnsteel,259,0 +flintniron,259,0 +flintntinder,259,0 +flintsteel,259,0 +flintiron,259,0 +flinttinder,259,0 +lighter,259,0 +apple,260,0 +normalapple,260,0 +redapple,260,0 +bow,261,0 +arrow,262,0 +coal,263,0 +charcoal,263,1 +ccoal,263,1 +diamond,264,0 +crystal,264,0 +ironingot,265,0 +ironbar,265,0 +ironi,265,0 +steelingot,265,0 +steelbar,265,0 +steeli,265,0 +iingot,265,0 +ibar,265,0 +ingotiron,265,0 +bariron,265,0 +iiron,265,0 +ingotsteel,265,0 +barsteel,265,0 +isteel,265,0 +ingoti,265,0 +bari,265,0 +goldingot,266,0 +goldbar,266,0 +goldi,266,0 +gingot,266,0 +gbar,266,0 +ingotgold,266,0 +bargold,266,0 +igold,266,0 +ingotg,266,0 +barg,266,0 +ironsword,267,0 +steelsword,267,0 +isword,267,0 +woodensword,268,0 +woodsword,268,0 +wsword,268,0 +woodenshovel,269,0 +woodenspade,269,0 +woodshovel,269,0 +woodspade,269,0 +wshovel,269,0 +wspade,269,0 +woodenpickaxe,270,0 +woodenpick,270,0 +woodpickaxe,270,0 +woodpick,270,0 +wpickaxe,270,0 +wpick,270,0 +woodenaxe,271,0 +woodaxe,271,0 +waxe,271,0 +stonesword,272,0 +cobblestonesword,272,0 +cstonesword,272,0 +cssword,272,0 +ssword,272,0 +stoneshovel,273,0 +cobblestoneshovel,273,0 +cobblestonespade,273,0 +cstoneshovel,273,0 +cstonespade,273,0 +stonespade,273,0 +csshovel,273,0 +csspade,273,0 +sshovel,273,0 +sspade,273,0 +stonepickaxe,274,0 +cobblestonepickaxe,274,0 +cobblestonepick,274,0 +cstonepickaxe,274,0 +cstonepick,274,0 +stonepick,274,0 +cspickaxe,274,0 +cspick,274,0 +spickaxe,274,0 +spick,274,0 +stoneaxe,275,0 +cobblestoneaxe,275,0 +cstoneaxe,275,0 +csaxe,275,0 +saxe,275,0 +diamondsword,276,0 +crystalsword,276,0 +dsword,276,0 +diamondshovel,277,0 +diamondspade,277,0 +crystalshovel,277,0 +crystalspade,277,0 +dshovel,277,0 +dspade,277,0 +diamondpickaxe,278,0 +diamondpick,278,0 +crystalpickaxe,278,0 +crystalpick,278,0 +dpickaxe,278,0 +dpick,278,0 +diamondaxe,279,0 +crystalaxe,279,0 +daxe,279,0 +stick,280,0 +twig,280,0 +branch,280,0 +bowl,281,0 +woodenbowl,281,0 +woodbowl,281,0 +mushroomsoup,282,0 +mrsoup,282,0 +soup,282,0 +goldsword,283,0 +gsword,283,0 +goldshovel,284,0 +goldspade,284,0 +gshovel,284,0 +gspade,284,0 +goldpickaxe,285,0 +goldpick,285,0 +gpickaxe,285,0 +gpick,285,0 +goldaxe,286,0 +gaxe,286,0 +string,287,0 +thread,287,0 +feather,288,0 +gunpowder,289,0 +sulfur,289,0 +woodenhoe,290,0 +woodhoe,290,0 +whoe,290,0 +stonehoe,291,0 +cobblestonehoe,291,0 +cstonehoe,291,0 +cshoe,291,0 +shoe,291,0 +ironhoe,292,0 +steelhoe,292,0 +ihoe,292,0 +diamondhoe,293,0 +crystalhoe,293,0 +dhoe,293,0 +goldhoe,294,0 +ghoe,294,0 +seeds,295,0 +seed,295,0 +wheat,296,0 +crops,296,0 +crop,296,0 +bread,297,0 +leatherhelmet,298,0 +leatherhelm,298,0 +leatherhat,298,0 +leathercoif,298,0 +lhelmet,298,0 +lhelm,298,0 +lhat,298,0 +lcoif,298,0 +leatherchestplate,299,0 +leatherplatebody,299,0 +leatherplate,299,0 +leathershirt,299,0 +leathertunic,299,0 +lchestplate,299,0 +lplatebody,299,0 +lplate,299,0 +lshirt,299,0 +ltunic,299,0 +leatherleggings,300,0 +leatherlegs,300,0 +leatherpants,300,0 +lleggings,300,0 +llegs,300,0 +lpants,300,0 +leatherboots,301,0 +leathershoes,301,0 +lboots,301,0 +lshoes,301,0 +chainmailhelmet,302,0 +chainmailhelm,302,0 +chainmailhat,302,0 +chainmailcoif,302,0 +chainmhelmet,302,0 +chainmhelm,302,0 +chainmhat,302,0 +chainmcoif,302,0 +cmailhelmet,302,0 +cmailhelm,302,0 +cmailhat,302,0 +cmailcoif,302,0 +chainhelmet,302,0 +chainhelm,302,0 +chainhat,302,0 +chaincoif,302,0 +cmhelmet,302,0 +cmhelm,302,0 +cmhat,302,0 +cmcoif,302,0 +chainmailchestplate,303,0 +chainmailplatebody,303,0 +chainmailplate,303,0 +chainmailshirt,303,0 +chainmailtunic,303,0 +chainmchestplate,303,0 +chainmplatebody,303,0 +chainmplate,303,0 +chainmshirt,303,0 +chainmtunic,303,0 +cmailchestplate,303,0 +cmailplatebody,303,0 +cmailplate,303,0 +cmailshirt,303,0 +cmailtunic,303,0 +chainchestplate,303,0 +chainplatebody,303,0 +chainplate,303,0 +chainshirt,303,0 +chaintunic,303,0 +cmchestplate,303,0 +cmplatebody,303,0 +cmplate,303,0 +cmshirt,303,0 +cmtunic,303,0 +chainmailleggings,304,0 +chainmaillegs,304,0 +chainmailpants,304,0 +chainmleggings,304,0 +chainmlegs,304,0 +chainmpants,304,0 +cmailleggings,304,0 +cmaillegs,304,0 +cmailpants,304,0 +chainleggings,304,0 +chainlegs,304,0 +chainpants,304,0 +cmleggings,304,0 +cmlegs,304,0 +cmpants,304,0 +chainmailboots,305,0 +chainmailshoes,305,0 +chainmboots,305,0 +chainmshoes,305,0 +cmailboots,305,0 +cmailshoes,305,0 +chainboots,305,0 +chainshoes,305,0 +cmboots,305,0 +cmshoes,305,0 +ironhelmet,306,0 +ironhelm,306,0 +ironhat,306,0 +ironcoif,306,0 +ihelmet,306,0 +ihelm,306,0 +ihat,306,0 +icoif,306,0 +steelhelmet,306,0 +steelhelm,306,0 +steelhat,306,0 +steelcoif,306,0 +shelmet,306,0 +shelm,306,0 +shat,306,0 +scoif,306,0 +ironchestplate,307,0 +ironplatebody,307,0 +ironshirt,307,0 +irontunic,307,0 +ichestplate,307,0 +iplatebody,307,0 +ishirt,307,0 +itunic,307,0 +steelchestplate,307,0 +steelplatebody,307,0 +steelplate,307,0 +steelshirt,307,0 +steeltunic,307,0 +schestplate,307,0 +splatebody,307,0 +sshirt,307,0 +stunic,307,0 +ironleggings,308,0 +ironlegs,308,0 +ironpants,308,0 +ileggings,308,0 +ilegs,308,0 +ipants,308,0 +steelleggings,308,0 +steellegs,308,0 +steelpants,308,0 +sleggings,308,0 +slegs,308,0 +spants,308,0 +ironboots,309,0 +ironshoes,309,0 +iboots,309,0 +ishoes,309,0 +steelboots,309,0 +steelshoes,309,0 +sboots,309,0 +sshoes,309,0 +diamondhelmet,310,0 +diamondhelm,310,0 +diamondhat,310,0 +diamondcoif,310,0 +dhelmet,310,0 +dhelm,310,0 +dhat,310,0 +dcoif,310,0 +crystalhelmet,310,0 +crystalhelm,310,0 +crystalhat,310,0 +crystalcoif,310,0 +chelmet,310,0 +chelm,310,0 +chat,310,0 +ccoif,310,0 +diamondchestplate,311,0 +diamondplatebody,311,0 +diamondplate,311,0 +diamondshirt,311,0 +diamondtunic,311,0 +dchestplate,311,0 +dplatebody,311,0 +dplate,311,0 +dshirt,311,0 +dtunic,311,0 +crystalchestplate,311,0 +crystalplatebody,311,0 +crystalplate,311,0 +crystalshirt,311,0 +crystaltunic,311,0 +cchestplate,311,0 +cplatebody,311,0 +cplate,311,0 +cshirt,311,0 +ctunic,311,0 +diamondleggings,312,0 +diamondlegs,312,0 +diamondpants,312,0 +dleggings,312,0 +dlegs,312,0 +dpants,312,0 +crystalleggings,312,0 +crystallegs,312,0 +crystalpants,312,0 +cleggings,312,0 +clegs,312,0 +cpants,312,0 +diamondboots,313,0 +diamondshoes,313,0 +dboots,313,0 +dshoes,313,0 +crystalboots,313,0 +crystalshoes,313,0 +cboots,313,0 +cshoes,313,0 +goldhelmet,314,0 +goldhelm,314,0 +goldhat,314,0 +goldcoif,314,0 +ghelmet,314,0 +ghelm,314,0 +ghat,314,0 +gcoif,314,0 +goldchestplate,315,0 +goldplatebody,315,0 +goldshirt,315,0 +goldtunic,315,0 +gchestplate,315,0 +gplatebody,315,0 +gplateplate,315,0 +gshirt,315,0 +gtunic,315,0 +goldleggings,316,0 +goldlegs,316,0 +goldpants,316,0 +gleggings,316,0 +glegs,316,0 +gpants,316,0 +goldboots,317,0 +goldshoes,317,0 +gboots,317,0 +gshoes,317,0 +flint,318,0 +pork,319,0 +porkchop,319,0 +rawpork,319,0 +rpork,319,0 +rawporkchop,319,0 +rporkchop,319,0 +cookedpork,320,0 +grilledpork,320,0 +grillpork,320,0 +gpork,320,0 +cookpork,320,0 +cpork,320,0 +grilledporkchop,320,0 +grillporkchop,320,0 +gporkchop,320,0 +cookedporkchop,320,0 +cookporkchop,320,0 +cporkchop,320,0 +bacon,320,0 +painting,321,0 +picture,321,0 +goldenapple,322,0 +goldapple,322,0 +gapple,322,0 +enchantedgoldenapple,322,1 +enchantedgoldapple,322,1 +enchantedgapple,322,1 +supergoldenapple,322,1 +supergoldapple,322,1 +supergapple,322,1 +magicalgoldenapple,322,1 +magicalgoldapple,322,1 +magicalgapple,322,1 +magicgoldenapple,322,1 +magicgoldapple,322,1 +magicgapple,322,1 +egoldenapple,322,1 +egoldapple,322,1 +egapple,322,1 +sgoldenapple,322,1 +sgoldapple,322,1 +sgapple,322,1 +mgoldenapple,322,1 +mgoldapple,322,1 +mgapple,322,1 +sign,323,0 +woodendoor,324,0 +wooddoor,324,0 +wdoor,324,0 +door,324,0 +bucket,325,0 +bukkit,325,0 +waterbucket,326,0 +waterbukkit,326,0 +wbucket,326,0 +wbukkit,326,0 +magmabucket,327,0 +magmabukkit,327,0 +lavabucket,327,0 +lavabukkit,327,0 +lbucket,327,0 +lbukkit,327,0 +minecart,328,0 +mcart,328,0 +cart,328,0 +saddle,329,0 +irondoor,330,0 +idoor,330,0 +steeldoor,330,0 +sdoor,330,0 +dooriron,330,0 +doori,330,0 +doorsteel,330,0 +doors,330,0 +redstonedust,331,0 +redstone,331,0 +rstonedust,331,0 +rstone,331,0 +redsdust,331,0 +reddust,331,0 +rsdust,331,0 +rdust,331,0 +snow,332,0 +snowball,332,0 +snball,332,0 +sball,332,0 +boat,333,0 +leather,334,0 +cowhide,334,0 +hide,334,0 +milkbucket,335,0 +milkbukkit,335,0 +mbucket,335,0 +mbukkit,335,0 +claybrick,336,0 +brick,336,0 +redbrick,336,0 +rbrick,336,0 +clayball,337,0 +cball,337,0 +clay,337,0 +reeds,338,0 +reed,338,0 +sugarcane,338,0 +scane,338,0 +bamboo,338,0 +paper,339,0 +papyrus,339,0 +book,340,0 +slimeball,341,0 +slball,341,0 +chestminecart,342,0 +storageminecart,342,0 +storagemcart,342,0 +chestmcart,342,0 +storagecart,342,0 +chestcart,342,0 +sminecart,342,0 +cminecart,342,0 +smcart,342,0 +cmcart,342,0 +scart,342,0 +ccart,342,0 +furnaceminecart,343,0 +engineminecart,343,0 +poweredminecart,343,0 +powerminecart,343,0 +enginemcart,343,0 +poweredmcart,343,0 +powermcart,343,0 +furnacemcart,343,0 +enginecart,343,0 +poweredcart,343,0 +powercart,343,0 +furnacecart,343,0 +eminecart,343,0 +pminecart,343,0 +fminecart,343,0 +emcart,343,0 +pmcart,343,0 +fmcart,343,0 +ecart,343,0 +pcart,343,0 +fcart,343,0 +egg,344,0 +compass,345,0 +fishingrod,346,0 +fishrod,346,0 +frod,346,0 +rod,346,0 +watch,347,0 +goldwatch,347,0 +goldclock,347,0 +gwatch,347,0 +gclock,347,0 +clock,347,0 +glowstonedust,348,0 +glowingstonedust,348,0 +lightstonedust,348,0 +lbdust,348,0 +gbdust,348,0 +lsdust,348,0 +gsdust,348,0 +rawfish,349,0 +rafish,349,0 +fish,349,0 +rawsalmonfish,349,1 +rasalmonfish,349,1 +salmonfish,349,1 +rawsalmon,349,1 +rasalmon,349,1 +salmon,349,1 +sfish,349,1 +fishs,349,1 +rawclownfish,349,2 +raclownfish,349,2 +clownfish,349,2 +rawnemo,349,2 +ranemo,349,2 +nemo,349,2 +nemofish,349,2 +fishnemo,349,2 +clfish,349,2 +fishcl,349,2 +nfish,349,2 +fishn,349,2 +rawpufferfish,349,3 +rapufferfish,349,3 +pufferfish,349,3 +pufffish,349,3 +fishpuff,349,3 +pfish,349,3 +fishp,349,3 +cookedfish,350,0 +cookfish,350,0 +cfish,350,0 +grilledfish,350,0 +grillfish,350,0 +gfish,350,0 +roastedfish,350,0 +roastfish,350,0 +rofish,350,0 +cookedsalmonfish,350,1 +cooksalmonfish,350,1 +csalmonfish,350,1 +grilledsalmonfish,350,1 +grillsalmonfish,350,1 +gsalmonfish,350,1 +roastedsalmonfish,350,1 +roastsalmonfish,350,1 +rosalmonfish,350,1 +cookedsalmon,350,1 +cooksalmon,350,1 +csalmon,350,1 +grilledsalmon,350,1 +grillsalmon,350,1 +gsalmon,350,1 +roastedsalmon,350,1 +roastsalmon,350,1 +rosalmon,350,1 +dye,351,0 +inksack,351,0 +inksac,351,0 +isack,351,0 +isac,351,0 +sack,351,0 +sac,351,0 +blackinksack,351,0 +blackinksac,351,0 +blackisack,351,0 +blackisac,351,0 +blacksack,351,0 +blacksac,351,0 +inksackblack,351,0 +inksacblack,351,0 +isackblack,351,0 +isacblack,351,0 +sackblack,351,0 +sacblack,351,0 +blackinksackcolour,351,0 +blackinksaccolour,351,0 +blackisackcolour,351,0 +blackisaccolour,351,0 +blacksackcolour,351,0 +blacksaccolour,351,0 +inksackblackcolour,351,0 +inksacblackcolour,351,0 +isackblackcolour,351,0 +isacclackcolour,351,0 +sackblackcolour,351,0 +sacblackcolour,351,0 +blackinksackcolor,351,0 +blackinksaccolor,351,0 +blackisackcolor,351,0 +blackisaccolor,351,0 +blacksackcolor,351,0 +blacksaccolor,351,0 +inksackblackcolor,351,0 +inksacblackcolor,351,0 +isackblackcolor,351,0 +isacblackcolor,351,0 +sackblackcolor,351,0 +sacblackcolor,351,0 +blackinksackdye,351,0 +blackinksacdye,351,0 +blackisackdye,351,0 +blackisacdye,351,0 +blacksackdye,351,0 +blacksacdye,351,0 +inksackblackdye,351,0 +inksacblackdye,351,0 +isackblackdye,351,0 +isacclackdye,351,0 +sackblackdye,351,0 +sacblackdye,351,0 +blackcolor,351,0 +blackdye,351,0 +rosered,351,1 +roseredcolor,351,1 +roseredcolour,351,1 +rosereddye,351,1 +redrosecolor,351,1 +redrosecolour,351,1 +redrosedye,351,1 +redr,351,1 +redrcolor,351,1 +redrcolour,351,1 +redrdye,351,1 +redcolor,351,1 +redcolour,351,1 +reddye,351,1 +cactusgreen,351,2 +greencactus,351,2 +cactusgreencolour,351,2 +greencactuscolour,351,2 +cactusgreencolor,351,2 +greencactuscolor,351,2 +cactusgreendye,351,2 +greencactusdye,351,2 +greencolour,351,2 +greencolor,351,2 +greendye,351,2 +cocoabeans,351,3 +cocoabean,351,3 +cocobeans,351,3 +cocobean,351,3 +cbeans,351,3 +cbean,351,3 +beans,351,3 +bean,351,3 +browncocoabeans,351,3 +browncocoabean,351,3 +browncocobeans,351,3 +browncocobean,351,3 +browncbeans,351,3 +browncbean,351,3 +brownbeans,351,3 +brownbean,351,3 +brownb,351,3 +cocoabeanscolour,351,3 +cocoabeancolour,351,3 +cocobeanscolour,351,3 +cocobeancolour,351,3 +cbeanscolour,351,3 +cbeancolour,351,3 +beanscolour,351,3 +beancolour,351,3 +browncocoabeanscolour,351,3 +browncocoabeancolour,351,3 +browncocobeanscolour,351,3 +browncocobeancolour,351,3 +browncbeanscolour,351,3 +browncbeancolour,351,3 +brownbeanscolour,351,3 +brownbeancolour,351,3 +brownbcolour,351,3 +cocoabeanscolor,351,3 +cocoabeancolor,351,3 +cocobeanscolor,351,3 +cocobeancolor,351,3 +cbeanscolor,351,3 +cbeancolor,351,3 +beanscolor,351,3 +beancolor,351,3 +browncocoabeanscolor,351,3 +browncocoabeancolor,351,3 +browncocobeanscolor,351,3 +browncocobeancolor,351,3 +browncbeanscolor,351,3 +browncbeancolor,351,3 +brownbeanscolor,351,3 +brownbeancolor,351,3 +brownbcolor,351,3 +cocoabeansdye,351,3 +cocoabeandye,351,3 +cocobeansdye,351,3 +cocobeandye,351,3 +cbeansdye,351,3 +cbeandye,351,3 +beansdye,351,3 +beandye,351,3 +browncocoabeansdye,351,3 +browncocoabeandye,351,3 +browncocobeansdye,351,3 +browncocobeandye,351,3 +browncbeansdye,351,3 +browncbeandye,351,3 +brownbeansdye,351,3 +brownbeandye,351,3 +brownbdye,351,3 +browncolour,351,3 +browncolor,351,3 +browndye,351,3 +lapislazuli,351,4 +bluelapislazuli,351,4 +bluelapisl,351,4 +bluelapis,351,4 +bluel,351,4 +lapislazuliblue,351,4 +lapislblue,351,4 +lapisblue,351,4 +lapisl,351,4 +lapis,351,4 +bluelapislazulicolour,351,4 +bluelapislcolour,351,4 +bluelapiscolour,351,4 +lapislazulibluecolour,351,4 +lapislbluecolour,351,4 +lapisbluecolour,351,4 +lapislazulicolour,351,4 +lapislcolour,351,4 +lapiscolour,351,4 +bluelapislazulicolor,351,4 +bluelapislcolor,351,4 +bluelapiscolor,351,4 +lapislazulibluecolor,351,4 +lapislbluecolor,351,4 +lapisbluecolor,351,4 +lapislazulicolor,351,4 +lapislcolor,351,4 +lapiscolor,351,4 +bluelapislazulidye,351,4 +bluelapisldye,351,4 +bluelapisdye,351,4 +lapislazulibluedye,351,4 +lapislbluedye,351,4 +lapisbluedye,351,4 +lapislazulidye,351,4 +lapisldye,351,4 +lapisdye,351,4 +bluecolour,351,4 +bluecolor,351,4 +bluedye,351,4 +purpledye,351,5 +purplecolour,351,5 +purplecolor,351,5 +cyandye,351,6 +cyancolour,351,6 +cyancolor,351,6 +lightgraydye,351,7 +lightgraycolour,351,7 +lightgraycolor,351,7 +lgraycolour,351,7 +lgraycolor,351,7 +lgraydye,351,7 +lightgreydye,351,7 +lightgreycolour,351,7 +lightgreycolor,351,7 +lgreycolour,351,7 +lgreycolor,351,7 +lgreydye,351,7 +silvercolour,351,7 +silvercolor,351,7 +silverdye,351,7 +darkgraydye,351,8 +darkgraycolour,351,8 +darkgraycolor,351,8 +dgraycolour,351,8 +dgraycolor,351,8 +dgraydye,351,8 +graycolour,351,8 +graycolor,351,8 +graydye,351,8 +darkgreydye,351,8 +darkgreycolour,351,8 +darkgreycolor,351,8 +dgreycolour,351,8 +dgreycolor,351,8 +dgreydye,351,8 +greycolour,351,8 +greycolor,351,8 +greydye,351,8 +pinkdye,351,9 +pinkcolour,351,9 +pinkcolor,351,9 +limedye,351,10 +limecolour,351,10 +limecolor,351,10 +dandelionyellow,351,11 +dandelionyellowcolour,351,11 +dandelionyellowcolor,351,11 +dandelionyellowdye,351,11 +yellowdandelioncolour,351,11 +yellowdandelioncolor,351,11 +yellowdandeliondye,351,11 +yellowd,351,11 +yellowdcolour,351,11 +yellowdcolor,351,11 +yellowddye,351,11 +dyellow,351,11 +dyellowcolour,351,11 +dyellowcolor,351,11 +dyellowdye,351,11 +yellowcolour,351,11 +yellowcolor,351,11 +yellowdye,351,11 +lightbluecolour,351,12 +lightbluecolor,351,12 +lightbluedye,351,12 +lbluecolour,351,12 +lbluecolor,351,12 +lbluedye,351,12 +magentacolour,351,13 +magentacolor,351,13 +magentadye,351,13 +orangecolour,351,14 +orangecolor,351,14 +orangedye,351,14 +bonemeal,351,15 +whitebonemeal,351,15 +whitebonemealcolour,351,15 +whitebonemealcolor,351,15 +whitebonemealdye,351,15 +bonemealwhite,351,15 +bonemealwhitecolour,351,15 +bonemealwhitecolor,351,15 +bonemealwhitedye,351,15 +whitebonem,351,15 +whitebonemcolour,351,15 +whitebonemcolor,351,15 +whitebonemdye,351,15 +bonemwhite,351,15 +bonemwhitecolour,351,15 +bonemwhitecolor,351,15 +bonemwhitedye,351,15 +bonemealcolour,351,15 +bonemealcolor,351,15 +bonemealdye,351,15 +bonem,351,15 +bonemcolour,351,15 +bonemcolor,351,15 +bonemdye,351,15 +whitecolour,351,15 +whitecolor,351,15 +whitedye,351,15 +bone,352,0 +sugar,353,0 +whitedust,353,0 +cake,354,0 +bed,355,0 +redstonerepeater,356,0 +redstonerepeat,356,0 +redstonedelayer,356,0 +redstonedelay,356,0 +redstonedioder,356,0 +redstonediode,356,0 +rstonerepeater,356,0 +rstonerepeat,356,0 +rstonedelayer,356,0 +rstonedelay,356,0 +rstonedioder,356,0 +rstonediode,356,0 +redsrepeater,356,0 +redsrepeat,356,0 +redsdelayer,356,0 +redsdelay,356,0 +redsdioder,356,0 +redsdiode,356,0 +rsrepeater,356,0 +rsrepeat,356,0 +rsdelayer,356,0 +rsdelay,356,0 +rsdioder,356,0 +rsdiode,356,0 +repeater,356,0 +repeat,356,0 +delayer,356,0 +delay,356,0 +dioder,356,0 +diode,356,0 +cookie,357,0 +chart,358,0 +map0,358,0 +map1,358,1 +map2,358,2 +map3,358,3 +map4,358,4 +map5,358,5 +map6,358,6 +map7,358,7 +map8,358,8 +map9,358,9 +map10,358,10 +map11,358,11 +map12,358,12 +map13,358,13 +map14,358,14 +map15,358,15 +shears,359,0 +shear,359,0 +sheers,359,0 +sheer,359,0 +woolcutters,359,0 +woolcutter,359,0 +cutterswool,359,0 +cutterwool,359,0 +melonslice,360,0 +mslice,360,0 +slicemelon,360,0 +watermelonslice,360,0 +greenmelonslice,360,0 +melongreenslice,360,0 +pumpkinseeds,361,0 +pseeds,361,0 +seedsp,361,0 +seedspumpkin,361,0 +pumpseeds,361,0 +seedspump,361,0 +melonseeds,362,0 +mseeds,362,0 +watermelonseeds,362,0 +greenmelonseeds,362,0 +gmelonseeds,362,0 +seedsmelon,362,0 +seedswatermelon,362,0 +rawbeef,363,0 +rawsteak,363,0 +uncookedbeef,363,0 +uncookedsteak,363,0 +cowmeat,363,0 +plainbeef,363,0 +beef,364,0 +steak,364,0 +cookedbeef,364,0 +grilledbeef,364,0 +cookedsteak,364,0 +grilledsteak,364,0 +cookedcowmeat,364,0 +rawchicken,365,0 +uncookedchicken,365,0 +plainchicken,365,0 +chickenplain,365,0 +chickenuncooked,365,0 +chickenraw,365,0 +cookedchicken,366,0 +grilledchicken,366,0 +toastedchicken,366,0 +gchicken,366,0 +bbqchicken,366,0 +friedchicken,366,0 +cchicken,366,0 +rottenflesh,367,0 +zombieflesh,367,0 +rottenmeat,367,0 +zombiemeat,367,0 +badflesh,367,0 +poisonflesh,367,0 +zombieremains,367,0 +enderpearl,368,0 +endpearl,368,0 +pearl,368,0 +epearl,368,0 +bluepearl,368,0 +endergem,368,0 +blazerod,369,0 +goldenrod,369,0 +goldrod,369,0 +blazestick,369,0 +goldstick,369,0 +brod,369,0 +grod,369,0 +bstick,369,0 +gstick,369,0 +ghasttear,370,0 +ghastdrop,370,0 +ghosttear,370,0 +ghostdrop,370,0 +gtear,370,0 +gdrop,370,0 +tear,370,0 +goldnugget,371,0 +gnugget,371,0 +goldpebble,371,0 +gpebble,371,0 +goldball,371,0 +gball,371,0 +netherstalk,372,0 +deathstalk,372,0 +hellstalk,372,0 +nstalk,372,0 +dstalk,372,0 +hstalk,372,0 +netherwarts,372,0 +netherwart,372,0 +netherplant,372,0 +nethercrop,372,0 +hellwarts,372,0 +hellwart,372,0 +hellplant,372,0 +hellcrop,372,0 +deathwarts,372,0 +deathwart,372,0 +deathplant,372,0 +deathcrop,372,0 +nwarts,372,0 +nwart,372,0 +ncrop,372,0 +nplant,372,0 +hwarts,372,0 +hwart,372,0 +hplant,372,0 +hcrop,372,0 +dwarts,372,0 +dwart,372,0 +dplant,372,0 +dcrop,372,0 +potion,373,0 +mixture,373,0 +potions,373,0 +waterbottle,373,0 +fullbottle,373,0 +watervase,373,0 +fullvase,373,0 +clearpotion,373,6 +clearpot,373,6 +clearextendedpotion,373,7 +clearexpotion,373,7 +clear2potion,373,7 +clearextendedpot,373,7 +clearexpot,373,7 +clear2pot,373,7 +diffusepotion,373,11 +diffusepot,373,11 +artlesspotion,373,13 +artlesspot,373,13 +thinpotion,373,14 +thinpot,373,14 +thinextendedpotion,373,15 +thinexpotion,373,15 +thin2potion,373,15 +thinextendedpot,373,15 +thinexpot,373,15 +thin2pot,373,15 +awkwardpotion,373,16 +awkwardpot,373,16 +bunglingpotion,373,22 +bunglingpot,373,22 +bunglingextendedpotion,373,23 +bunglingexpotion,373,23 +bungling2potion,373,23 +bunglingextendedpot,373,23 +bunglingexpot,373,23 +bungling2pot,373,23 +smoothpotion,373,27 +smoothpot,373,27 +suavepotion,373,29 +suavepot,373,29 +debonairpotion,373,30 +debonairpot,373,30 +debonairextendedpotion,373,31 +debonairexpotion,373,31 +debonair2potion,373,31 +debonairextendedpot,373,31 +debonairexpot,373,31 +debonair2pot,373,31 +thickpotion,373,32 +thickpot,373,32 +charmingpotion,373,38 +charmingpot,373,38 +charmingextendedpotion,373,39 +charmingexpotion,373,39 +charming2potion,373,39 +charmingextendedpot,373,39 +charmingexpot,373,39 +charming2pot,373,39 +refinedpotion,373,43 +refinedpot,373,43 +cordialpotion,373,45 +cordialpot,373,45 +sparklingpotion,373,46 +sparklingpot,373,46 +sparklingextendedpotion,373,47 +sparklingexpotion,373,47 +sparkling2potion,373,47 +sparklingextendedpot,373,47 +sparklingexpot,373,47 +sparkling2pot,373,47 +potentpotion,373,48 +potentpot,373,48 +rankpotion,373,54 +rankpot,373,54 +rankextendedpotion,373,55 +rankexpotion,373,55 +rank2potion,373,55 +rankextendedpot,373,55 +rankexpot,373,55 +rank2pot,373,55 +acridpotion,373,59 +acridpot,373,59 +grosspotion,373,61 +grosspot,373,61 +stinkypotion,373,62 +stinkypot,373,62 +stinkyextendedpotion,373,63 +stinkyexpotion,373,63 +stinky2potion,373,63 +stinkyextendedpot,373,63 +stinkyexpot,373,63 +stinky2pot,373,63 +mundaneextendedpotion,373,64 +mundaneexpotion,373,64 +mundane2potion,373,64 +mundaneextendedpot,373,64 +mundaneexpot,373,64 +mundane2pot,373,64 +mundanepotion,373,8192 +mundanepot,373,8192 +regenerationpotion,373,8193 +regeneratepotion,373,8193 +regenpotion,373,8193 +regenerationpot,373,8193 +regeneratepot,373,8193 +regenpot,373,8193 +rpot,373,8193 +swiftnesspotion,373,8194 +swiftpotion,373,8194 +speedpotion,373,8194 +swiftnesspot,373,8194 +swiftpot,373,8194 +speedpot,373,8194 +swpot,373,8194 +fireresistancepotion,373,8195 +fireresistpotion,373,8195 +firerespotion,373,8195 +fireresistancepot,373,8195 +fireresistpot,373,8195 +firerespot,373,8195 +fpot,373,8195 +poisonpotion,373,8196 +acidpotion,373,8196 +poisonpot,373,8196 +acidpot,373,8196 +ppot,373,8196 +healingpotion,373,8197 +healpotion,373,8197 +lifepotion,373,8197 +healingpot,373,8197 +healpot,373,8197 +lifepot,373,8197 +hpot,373,8197 +nightvisionpotion,373,8198 +nvisionpotion,373,8198 +nightvpotion,373,8198 +darkvisionpotion,373,8198 +dvisionpotion,373,8198 +darkvpotion,373,8198 +nightvisionpot,373,8198 +nvisionpot,373,8198 +nightvpot,373,8198 +darkvisionpot,373,8198 +dvisionpot,373,8198 +darkvpot,373,8198 +npot,373,8198 +weaknesspotion,373,8200 +weakpotion,373,8200 +weaknesspot,373,8200 +weakpot,373,8200 +wpot,373,8200 +strengthpotion,373,8201 +strongpotion,373,8201 +strpotion,373,8201 +strengthpot,373,8201 +strongpot,373,8201 +strpot,373,8201 +stpot,373,8201 +slownesspotion,373,8202 +slowpotion,373,8202 +slownesspot,373,8202 +slowpot,373,8202 +slpot,373,8202 +harmingpotion,373,8204 +damagepotion,373,8204 +dmgpotion,373,8204 +harmingpot,373,8204 +damagepot,373,8204 +dmgpot,373,8204 +dpot,373,8204 +waterbreathingpotion,373,8205 +waterbreathpotion,373,8205 +breathingpotion,373,8205 +breathpotion,373,8205 +waterbreathingpot,373,8205 +waterbreathpot,373,8205 +breathingpot,373,8205 +breathpot,373,8205 +wbpot,373,8205 +invisibilitypotion,373,8206 +invisiblepotion,373,8206 +invpotion,373,8206 +invisibilitypot,373,8206 +invisiblepot,373,8206 +invpot,373,8206 +ipot,373,8206 +regenerationleveliipotion,373,8225 +regenerateleveliipotion,373,8225 +regenleveliipotion,373,8225 +regenerationlevel2potion,373,8225 +regeneratelevel2potion,373,8225 +regenlevel2potion,373,8225 +regenerationiipotion,373,8225 +regenerateiipotion,373,8225 +regeniipotion,373,8225 +regenerationleveliipot,373,8225 +regenerateleveliipot,373,8225 +regenleveliipot,373,8225 +regenerationlevel2pot,373,8225 +regeneratelevel2pot,373,8225 +regenlevel2pot,373,8225 +regenerationiipot,373,8225 +regenerateiipot,373,8225 +regeniipot,373,8225 +r2pot,373,8225 +swiftnessleveliipotion,373,8226 +swiftleveliipotion,373,8226 +speedleveliipotion,373,8226 +swiftnesslevel2potion,373,8226 +swiftlevel2potion,373,8226 +speedlevel2potion,373,8226 +swiftnessiipotion,373,8226 +swiftiipotion,373,8226 +speediipotion,373,8226 +swiftnessleveliipot,373,8226 +swiftleveliipot,373,8226 +speedleveliipot,373,8226 +swiftnesslevel2pot,373,8226 +swiftlevel2pot,373,8226 +speedlevel2pot,373,8226 +swiftnessiipot,373,8226 +swiftiipot,373,8226 +speediipot,373,8226 +sw2pot,373,8226 +poisonleveliipotion,373,8228 +acidleveliipotion,373,8228 +poisonlevel2potion,373,8228 +acidlevel2potion,373,8228 +poisoniipotion,373,8228 +acidiipotion,373,8228 +poisonleveliipot,373,8228 +acidleveliipot,373,8228 +poisonlevel2pot,373,8228 +acidlevel2pot,373,8228 +poisoniipot,373,8228 +acidiipot,373,8228 +p2pot,373,8228 +healingleveliipotion,373,8229 +healleveliipotion,373,8229 +healinglevel2potion,373,8229 +heallevel2potion,373,8229 +healingiipotion,373,8229 +healiipotion,373,8229 +healingleveliipot,373,8229 +healleveliipot,373,8229 +healinglevel2pot,373,8229 +heallevel2pot,373,8229 +healingiipot,373,8229 +healiipot,373,8229 +h2pot,373,8229 +strengthleveliipotion,373,8233 +strongleveliipotion,373,8233 +strleveliipotion,373,8233 +strengthlevel2potion,373,8233 +stronglevel2potion,373,8233 +strlevel2potion,373,8233 +strengthiipotion,373,8233 +strongiipotion,373,8233 +striipotion,373,8233 +strengthleveliipot,373,8233 +strongleveliipot,373,8233 +strleveliipot,373,8233 +strengthlevel2pot,373,8233 +stronglevel2pot,373,8233 +strlevel2pot,373,8233 +strengthiipot,373,8233 +strongiipot,373,8233 +striipot,373,8233 +st2pot,373,8233 +harmingleveliipotion,373,8236 +damageleveliipotion,373,8236 +dmgleveliipotion,373,8236 +harminglevel2potion,373,8236 +damagelevel2potion,373,8236 +dmglevel2potion,373,8236 +harmingiipotion,373,8236 +damageiipotion,373,8236 +dmgiipotion,373,8236 +harmingleveliipot,373,8236 +damageleveliipot,373,8236 +dmgleveliipot,373,8236 +harminglevel2pot,373,8236 +damagelevel2pot,373,8236 +dmglevel2pot,373,8236 +harmingiipot,373,8236 +damageiipot,373,8236 +dmgiipot,373,8236 +d2pot,373,8236 +regenerationextendedpotion,373,8257 +regenerateextendedpotion,373,8257 +regenextendepotion,373,8257 +regenerationexpotion,373,8257 +regenerateexpotion,373,8257 +regenexpotion,373,8257 +regenerationextendedpot,373,8257 +regenerateextendedpot,373,8257 +regenextendepot,373,8257 +regenerationexpot,373,8257 +regenerateexpot,373,8257 +regenexpot,373,8257 +repot,373,8257 +swiftnessextendedpotion,373,8258 +swiftextendedpotion,373,8258 +speedextendedpotion,373,8258 +swiftnessexpotion,373,8258 +swiftexpotion,373,8258 +speedexpotion,373,8258 +swiftnessextendedpot,373,8258 +swiftextendedpot,373,8258 +speedextendedpot,373,8258 +swiftnessexpot,373,8258 +swiftexpot,373,8258 +speedexpot,373,8258 +swepot,373,8258 +fireresistanceextendedpotion,373,8259 +fireresistextendedpotion,373,8259 +fireresextendedpotion,373,8259 +fireresistanceexpotion,373,8259 +fireresistexpotion,373,8259 +fireresexpotion,373,8259 +fireresistanceextendedpot,373,8259 +fireresistextendedpot,373,8259 +fireresextendedpot,373,8259 +fireresistanceexpot,373,8259 +fireresistexpot,373,8259 +fireresexpot,373,8259 +fepot,373,8259 +poisonextendedpotion,373,8260 +acidextendedpotion,373,8260 +poisonexpotion,373,8260 +acidexpotion,373,8260 +poisonextendedpot,373,8260 +acidextendedpot,373,8260 +poisonexpot,373,8260 +acidexpot,373,8260 +pepot,373,8260 +nightvisionextendedpotion,373,8262 +nvisionextendedpotion,373,8262 +nightvextendedpotion,373,8262 +darkvisionextendedpotion,373,8262 +dvisionextendedpotion,373,8262 +darkvextendedpotion,373,8262 +nightvisionexpotion,373,8262 +nvisionexpotion,373,8262 +nightvexpotion,373,8262 +darkvisionexpotion,373,8262 +dvisionexpotion,373,8262 +darkvexpotion,373,8262 +nightvisionextendedpot,373,8262 +nvisionextendedpot,373,8262 +nightvextendedpot,373,8262 +darkvisionextendedpot,373,8262 +dvisionextendedpot,373,8262 +darkvextendedpot,373,8262 +nightvisionexpot,373,8262 +nvisionexpot,373,8262 +nightvexpot,373,8262 +darkvisionexpot,373,8262 +dvisionexpot,373,8262 +darkvexpot,373,8262 +nepot,373,8262 +weaknessextendedpotion,373,8264 +weakextendedpotion,373,8264 +weaknessexpotion,373,8264 +weakexpotion,373,8264 +weaknessextendedpot,373,8264 +weakextendedpot,373,8264 +weaknessexpot,373,8264 +weakexpot,373,8264 +wepot,373,8264 +strengthextendedpotion,373,8265 +strongextendedpotion,373,8265 +strextendedpotion,373,8265 +strengthexpotion,373,8265 +strongexpotion,373,8265 +strexpotion,373,8265 +strengthextendedpot,373,8265 +strongextendedpot,373,8265 +strextendedpot,373,8265 +strengthexpot,373,8265 +strongexpot,373,8265 +strexpot,373,8265 +stepot,373,8265 +slownessextendedpotion,373,8266 +slowextenedpotion,373,8266 +slownessexpotion,373,8266 +slowexpotion,373,8266 +slownessextendedpot,373,8266 +slowextenedpot,373,8266 +slownessexpot,373,8266 +slowexpot,373,8266 +slepot,373,8266 +waterbreathingextendedpotion,373,8269 +waterbreathextendedpotion,373,8269 +breathingextendedpotion,373,8269 +breathextendedpotion,373,8269 +waterbreathingextendedpot,373,8269 +waterbreathextendedpot,373,8269 +breathingextendedpot,373,8269 +breathextendedpot,373,8269 +waterbreathingexpotion,373,8269 +waterbreathexpotion,373,8269 +breathingexpotion,373,8269 +breathexpotion,373,8269 +waterbreathingexpot,373,8269 +waterbreathexpot,373,8269 +breathingexpot,373,8269 +breathexpot,373,8269 +wbepot,373,8269 +invisibilityextendedpotion,373,8270 +invisibleextendedpotion,373,8270 +invextendedpotion,373,8270 +invisibilityexpotion,373,8270 +invisibleexpotion,373,8270 +invexpotion,373,8270 +invisibilityextendedpot,373,8270 +invisibleextendedpot,373,8270 +invextendedpot,373,8270 +invisibilityexpot,373,8270 +invisibleexpot,373,8270 +invexpot,373,8270 +iepot,373,8270 +regenerationdualbitpotion,373,8289 +regeneratedualbitpotion,373,8289 +regendualbitpotion,373,8289 +regenerationdbpotion,373,8289 +regeneratedbpotion,373,8289 +regendbpotion,373,8289 +regenerationdualbitpot,373,8289 +regeneratedualbitpot,373,8289 +regendualbitpot,373,8289 +regenerationdbpot,373,8289 +regeneratedbpot,373,8289 +regendbpot,373,8289 +rdbpot,373,8289 +swiftnessdualbitpotion,373,8290 +swiftdualbitpotion,373,8290 +speeddualbitpotion,373,8290 +swiftnessdualbitpot,373,8290 +swiftdualbitpot,373,8290 +speeddualbitpot,373,8290 +swiftnessdbpotion,373,8290 +swiftdbpotion,373,8290 +speeddbpotion,373,8290 +swiftnessdbpot,373,8290 +swiftdbpot,373,8290 +speeddbpot,373,8290 +swdbpot,373,8290 +poisondualbitpotion,373,8292 +aciddualbitpotion,373,8292 +poisondualbitpot,373,8292 +aciddualbitpot,373,8292 +poisondbpotion,373,8292 +aciddbpotion,373,8292 +poisondbpot,373,8292 +aciddbpot,373,8292 +pdbpot,373,8292 +strengthdualbitpotion,373,8297 +strongdualbitpotion,373,8297 +strdualbitpotion,373,8297 +strengthdualbitpot,373,8297 +strongdualbitpot,373,8297 +strdualbitpot,373,8297 +strengthdbpotion,373,8297 +strongdbpotion,373,8297 +strdbpotion,373,8297 +strengthdbpot,373,8297 +strongdbpot,373,8297 +strdbpot,373,8297 +stdbpot,373,8297 +splashmundanepotion,373,16384 +splmundanepotion,373,16384 +splashregenerationpotion,373,16385 +splashregeneratepotion,373,16385 +splashregenpotion,373,16385 +splashregenerationpot,373,16385 +splashregeneratepot,373,16385 +splashregenpot,373,16385 +regenerationsplashpotion,373,16385 +regeneratesplashpotion,373,16385 +regensplashpotion,373,16385 +splregenerationpotion,373,16385 +splregeneratepotion,373,16385 +splregenpotion,373,16385 +splregenerationpot,373,16385 +splregeneratepot,373,16385 +splregenpot,373,16385 +sprpot,373,16385 +splashswiftnesspotion,373,16386 +splashswiftpotion,373,16386 +splashspeedpotion,373,16386 +splashswiftnesspot,373,16386 +splashswiftpot,373,16386 +splashspeedpot,373,16386 +splswiftnesspotion,373,16386 +splswiftpotion,373,16386 +splspeedpotion,373,16386 +splswiftnesspot,373,16386 +splswiftpot,373,16386 +splspeedpot,373,16386 +spswpot,373,16386 +splashfireresistancepotion,373,16387 +splashfireresistpotion,373,16387 +splashfirerespotion,373,16387 +splashfireresistancepot,373,16387 +splashfireresistpot,373,16387 +splashfirerespot,373,16387 +splfireresistancepotion,373,16387 +splfireresistpotion,373,16387 +splfirerespotion,373,16387 +splfireresistancepot,373,16387 +splfireresistpot,373,16387 +splfirerespot,373,16387 +spfpot,373,16387 +splashpoisonpotion,373,16388 +splashacidpotion,373,16388 +splashpoisonpot,373,16388 +splashacidpot,373,16388 +splpoisonpotion,373,16388 +splacidpotion,373,16388 +splpoisonpot,373,16388 +splacidpot,373,16388 +spppot,373,16388 +splashhealingpotion,373,16389 +splashhealpotion,373,16389 +splashlifepotion,373,16389 +splashhealingpot,373,16389 +splashhealpot,373,16389 +splashlifepot,373,16389 +splhealingpotion,373,16389 +splhealpotion,373,16389 +spllifepotion,373,16389 +splhealingpot,373,16389 +splhealpot,373,16389 +spllifepot,373,16389 +sphpot,373,16389 +splashclearpotion,373,16390 +splashclearpot,373,16390 +splclearpotion,373,16390 +splclearpot,373,16390 +splashnightvisionpotion,373,16390 +splashnvisionpotion,373,16390 +splashnightvpotion,373,16390 +splashdarkvisionpotion,373,16390 +splashdvisionpotion,373,16390 +splashdarkvpotion,373,16390 +splashnightvisionpot,373,16390 +splashnvisionpot,373,16390 +splashnightvpot,373,16390 +splashdarkvisionpot,373,16390 +splashdvisionpot,373,16390 +splashdarkvpot,373,16390 +splnightvisionpotion,373,16390 +splnvisionpotion,373,16390 +splnightvpotion,373,16390 +spldarkvisionpotion,373,16390 +spldvisionpotion,373,16390 +spldarkvpotion,373,16390 +splnightvisionpot,373,16390 +splnvisionpot,373,16390 +splnightvpot,373,16390 +spldarkvisionpot,373,16390 +spldvisionpot,373,16390 +spldarkvpot,373,16390 +spnpot,373,16390 +splashclearextendedpotion,373,16391 +splashclearexpotion,373,16391 +splashclear2potion,373,16391 +splashclearextendedpot,373,16391 +splashclearexpot,373,16391 +splashclear2pot,373,16391 +splclearextendedpotion,373,16391 +splclearexpotion,373,16391 +splclear2potion,373,16391 +splclearextendedpot,373,16391 +splclearexpot,373,16391 +splclear2pot,373,16391 +splashweaknesspotion,373,16392 +splashweakpotion,373,16392 +splashweaknesspot,373,16392 +splashweakpot,373,16392 +splweaknesspotion,373,16392 +splweakpotion,373,16392 +splweaknesspot,373,16392 +splweakpot,373,16392 +spwpot,373,16392 +splashstrengthpotion,373,16393 +splashstrongpotion,373,16393 +splashstrpotion,373,16393 +splashstrengthpot,373,16393 +splashstrongpot,373,16393 +splashstrpot,373,16393 +splstrengthpotion,373,16393 +splstrongpotion,373,16393 +splstrpotion,373,16393 +splstrengthpot,373,16393 +splstrongpot,373,16393 +splstrpot,373,16393 +spstpot,373,16393 +splashslownesspotion,373,16394 +splashslowpotion,373,16394 +splashslownesspot,373,16394 +splashslowpot,373,16394 +splslownesspotion,373,16394 +splslowpotion,373,16394 +splslownesspot,373,16394 +splslowpot,373,16394 +spslpot,373,16394 +splashdiffusepotion,373,16395 +splashdiffusepot,373,16395 +spldiffusepotion,373,16395 +spldiffusepot,373,16395 +splashharmingpotion,373,16396 +splashdamagepotion,373,16396 +splashdmgpotion,373,16396 +splashharmingpot,373,16396 +splashdamagepot,373,16396 +splashdmgpot,373,16396 +splharmingpotion,373,16396 +spldamagepotion,373,16396 +spldmgpotion,373,16396 +splharmingpot,373,16396 +spldamagepot,373,16396 +spldmgpot,373,16396 +spdpot,373,16396 +splashartlesspotion,373,16397 +splashartlesspot,373,16397 +splartlesspotion,373,16397 +splartlesspot,373,16397 +splashwaterbreathingpotion,373,16397 +splashwaterbreathpotion,373,16397 +splashbreathingpotion,373,16397 +splashbreathpotion,373,16397 +splashwaterbreathingpot,373,16397 +splashwaterbreathpot,373,16397 +splashbreathingpot,373,16397 +splashbreathpot,373,16397 +splwaterbreathingpotion,373,16397 +splwaterbreathpotion,373,16397 +splbreathingpotion,373,16397 +splbreathpotion,373,16397 +splwaterbreathingpot,373,16397 +splwaterbreathpot,373,16397 +splbreathingpot,373,16397 +splbreathpot,373,16397 +spwbpot,373,16397 +splashthinpotion,373,16398 +splashthinpot,373,16398 +splthinpotion,373,16398 +splthinpot,373,16398 +splashinvisibilitypotion,373,16398 +splashinvisiblepotion,373,16398 +splashinvpotion,373,16398 +splashinvisibilitypot,373,16398 +splashinvisiblepot,373,16398 +splashinvpot,373,16398 +splinvisibilitypotion,373,16398 +splinvisiblepotion,373,16398 +splinvpotion,373,16398 +splinvisibilitypot,373,16398 +splinvisiblepot,373,16398 +splinvpot,373,16398 +spipot,373,16398 +splashthinextendedpotion,373,16399 +splashthinexpotion,373,16399 +splashthin2potion,373,16399 +splashthinextendedpot,373,16399 +splashthinexpot,373,16399 +splashthin2pot,373,16399 +splthinextendedpotion,373,16399 +splthinexpotion,373,16399 +splthin2potion,373,16399 +splthinextendedpot,373,16399 +splthinexpot,373,16399 +splthin2pot,373,16399 +splashawkwardpotion,373,16400 +splashawkwardpot,373,16400 +splawkwardpotion,373,16400 +splawkwardpot,373,16400 +splashbunglingpotion,373,16406 +splashbunglingpot,373,16406 +splbunglingpotion,373,16406 +splbunglingpot,373,16406 +splashbunglingextendedpotion,373,16407 +splashbunglingexpotion,373,16407 +splashbungling2potion,373,16407 +splashbunglingextendedpot,373,16407 +splashbunglingexpot,373,16407 +splashbungling2pot,373,16407 +splbunglingextendedpotion,373,16407 +splbunglingexpotion,373,16407 +splbungling2potion,373,16407 +splbunglingextendedpot,373,16407 +splbunglingexpot,373,16407 +splbungling2pot,373,16407 +splashsmoothpotion,373,16411 +splashsmoothpot,373,16411 +splsmoothpotion,373,16411 +splsmoothpot,373,16411 +splashsuavepotion,373,16413 +splashsuavepot,373,16413 +splsuavepotion,373,16413 +splsuavepot,373,16413 +splashdebonairpotion,373,16414 +splashdebonairpot,373,16414 +spldebonairpotion,373,16414 +spldebonairpot,373,16414 +splashdebonairextendedpotion,373,16415 +splashdebonairexpotion,373,16415 +splashdebonair2potion,373,16415 +splashdebonairextendedpot,373,16415 +splashdebonairexpot,373,16415 +splashdebonair2pot,373,16415 +spldebonairextendedpotion,373,16415 +spldebonairexpotion,373,16415 +spldebonair2potion,373,16415 +spldebonairextendedpot,373,16415 +spldebonairexpot,373,16415 +spldebonair2pot,373,16415 +splashthickpotion,373,16416 +splashthickpot,373,16416 +splthickpotion,373,16416 +splthickpot,373,16416 +splashregenerationleveliipotion,373,16417 +splashregenerateleveliipotion,373,16417 +splashregenleveliipotion,373,16417 +splashregenerationlevel2potion,373,16417 +splashregeneratelevel2potion,373,16417 +splashregenlevel2potion,373,16417 +splashregenerationiipotion,373,16417 +splashregenerateiipotion,373,16417 +splashregeniipotion,373,16417 +splashregenerationleveliipot,373,16417 +splashregenerateleveliipot,373,16417 +splashregenleveliipot,373,16417 +splashregenerationlevel2pot,373,16417 +splashregeneratelevel2pot,373,16417 +splashregenlevel2pot,373,16417 +splashregenerationiipot,373,16417 +splashregenerateiipot,373,16417 +splashregeniipot,373,16417 +splregenerationleveliipotion,373,16417 +splregenerateleveliipotion,373,16417 +splregenleveliipotion,373,16417 +splregenerationlevel2potion,373,16417 +splregeneratelevel2potion,373,16417 +splregenlevel2potion,373,16417 +splregenerationiipotion,373,16417 +splregenerateiipotion,373,16417 +splregeniipotion,373,16417 +splregenerationleveliipot,373,16417 +splregenerateleveliipot,373,16417 +splregenleveliipot,373,16417 +splregenerationlevel2pot,373,16417 +splregeneratelevel2pot,373,16417 +splregenlevel2pot,373,16417 +splregenerationiipot,373,16417 +splregenerateiipot,373,16417 +splregeniipot,373,16417 +spr2pot,373,16417 +splashswiftnessleveliipotion,373,16418 +splashswiftleveliipotion,373,16418 +splashspeedleveliipotion,373,16418 +splashswiftnesslevel2potion,373,16418 +splashswiftlevel2potion,373,16418 +splashspeedlevel2potion,373,16418 +splashswiftnessiipotion,373,16418 +splashswiftiipotion,373,16418 +splashspeediipotion,373,16418 +splashswiftnessleveliipot,373,16418 +splashswiftleveliipot,373,16418 +splashspeedleveliipot,373,16418 +splashswiftnesslevel2pot,373,16418 +splashswiftlevel2pot,373,16418 +splashspeedlevel2pot,373,16418 +splashswiftnessiipot,373,16418 +splashswiftiipot,373,16418 +splashspeediipot,373,16418 +splswiftnessleveliipotion,373,16418 +splswiftleveliipotion,373,16418 +splspeedleveliipotion,373,16418 +splswiftnesslevel2potion,373,16418 +splswiftlevel2potion,373,16418 +splspeedlevel2potion,373,16418 +splswiftnessiipotion,373,16418 +splswiftiipotion,373,16418 +splspeediipotion,373,16418 +splswiftnessleveliipot,373,16418 +splswiftleveliipot,373,16418 +splspeedleveliipot,373,16418 +splswiftnesslevel2pot,373,16418 +splswiftlevel2pot,373,16418 +splspeedlevel2pot,373,16418 +splswiftnessiipot,373,16418 +splswiftiipot,373,16418 +splspeediipot,373,16418 +spsw2pot,373,16418 +splashpoisonleveliipotion,373,16420 +splashacidleveliipotion,373,16420 +splashpoisonlevel2potion,373,16420 +splashacidlevel2potion,373,16420 +splashpoisoniipotion,373,16420 +splashacidiipotion,373,16420 +splashpoisonleveliipot,373,16420 +splashacidleveliipot,373,16420 +splashpoisonlevel2pot,373,16420 +splashacidlevel2pot,373,16420 +splashpoisoniipot,373,16420 +splashacidiipot,373,16420 +splpoisonleveliipotion,373,16420 +splacidleveliipotion,373,16420 +splpoisonlevel2potion,373,16420 +splcidlevel2potion,373,16420 +splpoisoniipotion,373,16420 +splacidiipotion,373,16420 +splpoisonleveliipot,373,16420 +splacidleveliipot,373,16420 +splpoisonlevel2pot,373,16420 +splacidlevel2pot,373,16420 +splpoisoniipot,373,16420 +splacidiipot,373,16420 +spp2pot,373,16420 +splashhealingleveliipotion,373,16421 +splashhealleveliipotion,373,16421 +splashhealinglevel2potion,373,16421 +splashheallevel2potion,373,16421 +splashhealingiipotion,373,16421 +splashhealiipotion,373,16421 +splashhealingleveliipot,373,16421 +splashhealleveliipot,373,16421 +splashhealinglevel2pot,373,16421 +splashheallevel2pot,373,16421 +splashhealingiipot,373,16421 +splashhealiipot,373,16421 +splhealingleveliipotion,373,16421 +splhealleveliipotion,373,16421 +splhealinglevel2potion,373,16421 +splheallevel2potion,373,16421 +splhealingiipotion,373,16421 +splhealiipotion,373,16421 +splhealingleveliipot,373,16421 +splhealleveliipot,373,16421 +splhealinglevel2pot,373,16421 +splheallevel2pot,373,16421 +splhealingiipot,373,16421 +splhealiipot,373,16421 +sph2pot,373,16421 +splashcharmingpotion,373,16422 +splashcharmingpot,373,16422 +splcharmingpotion,373,16422 +splcharmingpot,373,16422 +splashcharmingextendedpotion,373,16423 +splashcharmingexpotion,373,16423 +splashcharming2potion,373,16423 +splashcharmingextendedpot,373,16423 +splashcharmingexpot,373,16423 +splashcharming2pot,373,16423 +splcharmingextendedpotion,373,16423 +splcharmingexpotion,373,16423 +splcharming2potion,373,16423 +splcharmingextendedpot,373,16423 +splcharmingexpot,373,16423 +splcharming2pot,373,16423 +splashstrengthleveliipotion,373,16425 +splashstrongleveliipotion,373,16425 +splashstrleveliipotion,373,16425 +splashstrengthlevel2potion,373,16425 +splashstronglevel2potion,373,16425 +splashstrlevel2potion,373,16425 +splashstrengthiipotion,373,16425 +splashstrongiipotion,373,16425 +splashstriipotion,373,16425 +splashstrengthleveliipot,373,16425 +splashstrongleveliipot,373,16425 +splashstrleveliipot,373,16425 +splashstrengthlevel2pot,373,16425 +splashstronglevel2pot,373,16425 +splashstrlevel2pot,373,16425 +splashstrengthiipot,373,16425 +splashstrongiipot,373,16425 +splashstriipot,373,16425 +splstrengthleveliipotion,373,16425 +splstrongleveliipotion,373,16425 +splstrleveliipotion,373,16425 +splstrengthlevel2potion,373,16425 +splstronglevel2potion,373,16425 +splstrlevel2potion,373,16425 +splstrengthiipotion,373,16425 +splstrongiipotion,373,16425 +splstriipotion,373,16425 +splstrengthleveliipot,373,16425 +splstrongleveliipot,373,16425 +splstrleveliipot,373,16425 +splstrengthlevel2pot,373,16425 +splstronglevel2pot,373,16425 +splstrlevel2pot,373,16425 +splstrengthiipot,373,16425 +splstrongiipot,373,16425 +splstriipot,373,16425 +spst2pot,373,16425 +splashrefinedpotion,373,16427 +splashrefinedpot,373,16427 +splrefinedpotion,373,16427 +splrefinedpot,373,16427 +splashharmingleveliipotion,373,16428 +splashdamageleveliipotion,373,16428 +splashdmgleveliipotion,373,16428 +splashharminglevel2potion,373,16428 +splashdamagelevel2potion,373,16428 +splashdmglevel2potion,373,16428 +splashharmingiipotion,373,16428 +splashdamageiipotion,373,16428 +splashdmgiipotion,373,16428 +splashharmingleveliipot,373,16428 +splashdamageleveliipot,373,16428 +splashdmgleveliipot,373,16428 +splashharminglevel2pot,373,16428 +splashdamagelevel2pot,373,16428 +splashdmglevel2pot,373,16428 +splashharmingiipot,373,16428 +splashdamageiipot,373,16428 +splashdmgiipot,373,16428 +splharmingleveliipotion,373,16428 +spldamageleveliipotion,373,16428 +spldmgleveliipotion,373,16428 +splharminglevel2potion,373,16428 +spldamagelevel2potion,373,16428 +spldmglevel2potion,373,16428 +splharmingiipotion,373,16428 +spldamageiipotion,373,16428 +spldmgiipotion,373,16428 +splharmingleveliipot,373,16428 +spldamageleveliipot,373,16428 +spldmgleveliipot,373,16428 +splharminglevel2pot,373,16428 +spldamagelevel2pot,373,16428 +spldmglevel2pot,373,16428 +splharmingiipot,373,16428 +spldamageiipot,373,16428 +spldmgiipot,373,16428 +spd2pot,373,16428 +splashcordialpotion,373,16429 +splashcordialpot,373,16429 +splcordialpotion,373,16429 +splcordialpot,373,16429 +splashsparklingpotion,373,16430 +splashsparklingpot,373,16430 +splsparklingpotion,373,16430 +splsparklingpot,373,16430 +splashsparklingextendedpotion,373,16431 +splashsparklingexpotion,373,16431 +splashsparkling2potion,373,16431 +splashsparklingextendedpot,373,16431 +splashsparklingexpot,373,16431 +splashsparkling2pot,373,16431 +splsparklingextendedpotion,373,16431 +splsparklingexpotion,373,16431 +splsparkling2potion,373,16431 +splsparklingextendedpot,373,16431 +splsparklingexpot,373,16431 +splsparkling2pot,373,16431 +splashpotentpotion,373,16432 +splashpotentpot,373,16432 +splpotentpotion,373,16432 +splpotentpot,373,16432 +splashrankpotion,373,16438 +splashrankpot,373,16438 +splrankpotion,373,16438 +splrankpot,373,16438 +splashrankextendedpotion,373,16439 +splashrankexpotion,373,16439 +splashrank2potion,373,16439 +splashrankextendedpot,373,16439 +splashrankexpot,373,16439 +splashrank2pot,373,16439 +splrankextendedpotion,373,16439 +splrankexpotion,373,16439 +splrank2potion,373,16439 +splrankextendedpot,373,16439 +splrankexpot,373,16439 +splrank2pot,373,16439 +splashacridpotion,373,16443 +splashacridpot,373,16443 +splacridpotion,373,16443 +splacridpot,373,16443 +splashgrosspotion,373,16445 +splashgrosspot,373,16445 +splgrosspotion,373,16445 +splgrosspot,373,16445 +splashstinkypotion,373,16446 +splashstinkypot,373,16446 +splstinkypotion,373,16446 +splstinkypot,373,16446 +splashstinkyextendedpotion,373,16447 +splashstinkyexpotion,373,16447 +splashstinky2potion,373,16447 +splashstinkyextendedpot,373,16447 +splashstinkyexpot,373,16447 +splashstinky2pot,373,16447 +splstinkyextendedpotion,373,16447 +splstinkyexpotion,373,16447 +splstinky2potion,373,16447 +splstinkyextendedpot,373,16447 +splstinkyexpot,373,16447 +splstinky2pot,373,16447 +splashmundaneextendedpotion,373,16448 +splashmundaneexpotion,373,16448 +splashmundane2potion,373,16448 +splashmundaneextendedpot,373,16448 +splashmundaneexpot,373,16448 +splashmundane2pot,373,16448 +splmundaneextendedpotion,373,16448 +splmundaneexpotion,373,16448 +splmundane2potion,373,16448 +splmundaneextendedpot,373,16448 +splmundaneexpot,373,16448 +splmundane2pot,373,16448 +splashregenerationextendedpotion,373,16449 +splashregenerateextendedpotion,373,16449 +splashregenextendepotion,373,16449 +splashregenerationexpotion,373,16449 +splashregenerateexpotion,373,16449 +splashregenexpotion,373,16449 +splashregenerationextendedpot,373,16449 +splashregenerateextendedpot,373,16449 +splashregenextendepot,373,16449 +splashregenerationexpot,373,16449 +splashregenerateexpot,373,16449 +splashregenexpot,373,16449 +splregenerationextendedpotion,373,16449 +splregenerateextendedpotion,373,16449 +splregenextendepotion,373,16449 +splregenerationexpotion,373,16449 +splregenerateexpotion,373,16449 +splregenexpotion,373,16449 +splregenerationextendedpot,373,16449 +splregenerateextendedpot,373,16449 +splregenextendepot,373,16449 +splregenerationexpot,373,16449 +splregenerateexpot,373,16449 +splregenexpot,373,16449 +sprepot,373,16449 +splashswiftnessextendedpotion,373,16450 +splashswiftextendedpotion,373,16450 +splashspeedextendedpotion,373,16450 +splashswiftnessexpotion,373,16450 +splashswiftexpotion,373,16450 +splashspeedexpotion,373,16450 +splashswiftnessextendedpot,373,16450 +splashswiftextendedpot,373,16450 +splashspeedextendedpot,373,16450 +splashswiftnessexpot,373,16450 +splashswiftexpot,373,16450 +splashspeedexpot,373,16450 +splswiftnessextendedpotion,373,16450 +splswiftextendedpotion,373,16450 +splspeedextendedpotion,373,16450 +splswiftnessexpotion,373,16450 +splswiftexpotion,373,16450 +splspeedexpotion,373,16450 +splswiftnessextendedpot,373,16450 +splswiftextendedpot,373,16450 +splspeedextendedpot,373,16450 +splswiftnessexpot,373,16450 +splswiftexpot,373,16450 +splspeedexpot,373,16450 +spswepot,373,16450 +splashfireresistanceextendedpotion,373,16451 +splashfireresistextendedpotion,373,16451 +splashfireresextendedpotion,373,16451 +splashfireresistanceexpotion,373,16451 +splashfireresistexpotion,373,16451 +splashfireresexpotion,373,16451 +splashfireresistanceextendedpot,373,16451 +splashfireresistextendedpot,373,16451 +splashfireresextendedpot,373,16451 +splashfireresistanceexpot,373,16451 +splashfireresistexpot,373,16451 +splashfireresexpot,373,16451 +splfireresistanceextendedpotion,373,16451 +splfireresistextendedpotion,373,16451 +splfireresextendedpotion,373,16451 +splfireresistanceexpotion,373,16451 +splfireresistexpotion,373,16451 +splfireresexpotion,373,16451 +splfireresistanceextendedpot,373,16451 +splfireresistextendedpot,373,16451 +splfireresextendedpot,373,16451 +splfireresistanceexpot,373,16451 +splfireresistexpot,373,16451 +splfireresexpot,373,16451 +spfepot,373,16451 +splashpoisonextendedpotion,373,16452 +splashacidextendedpotion,373,16452 +splashpoisonexpotion,373,16452 +splashacidexpotion,373,16452 +splashpoisonextendedpot,373,16452 +splashacidextendedpot,373,16452 +splashpoisonexpot,373,16452 +splashacidexpot,373,16452 +splpoisonextendedpotion,373,16452 +splacidextendedpotion,373,16452 +splpoisonexpotion,373,16452 +splacidexpotion,373,16452 +splpoisonextendedpot,373,16452 +splacidextendedpot,373,16452 +splpoisonexpot,373,16452 +splacidexpot,373,16452 +sppepot,373,16452 +splashnightvisionextendedpotion,373,16454 +splashnvisionextendedpotion,373,16454 +splashnightvextendedpotion,373,16454 +splashdarkvisionextendedpotion,373,16454 +splashdvisionextendedpotion,373,16454 +splashdarkvextendedpotion,373,16454 +splashnightvisionextendedpot,373,16454 +splashnvisionextendedpot,373,16454 +splashnightvextendedpot,373,16454 +splashdarkvisionextendedpot,373,16454 +splashdvisionextendedpot,373,16454 +splashdarkvextendedpot,373,16454 +splashnightvisionexpotion,373,16454 +splashnvisionexpotion,373,16454 +splashnightvexpotion,373,16454 +splashdarkvisionexpotion,373,16454 +splashdvisionexpotion,373,16454 +splashdarkvexpotion,373,16454 +splashnightvisionexpot,373,16454 +splashnvisionexpot,373,16454 +splashnightvexpot,373,16454 +splashdarkvisionexpot,373,16454 +splashdvisionexpot,373,16454 +splashdarkvexpot,373,16454 +splnightvisionextendedpotion,373,16454 +splnvisionextendedpotion,373,16454 +splnightvextendedpotion,373,16454 +spldarkvisionextendedpotion,373,16454 +spldvisionextendedpotion,373,16454 +spldarkvextendedpotion,373,16454 +splnightvisionextendedpot,373,16454 +splnvisionextendedpot,373,16454 +splnightvextendedpot,373,16454 +spldarkvisionextendedpot,373,16454 +spldvisionextendedpot,373,16454 +spldarkvextendedpot,373,16454 +splnightvisionexpotion,373,16454 +splnvisionexpotion,373,16454 +splnightvexpotion,373,16454 +spldarkvisionexpotion,373,16454 +spldvisionexpotion,373,16454 +spldarkvexpotion,373,16454 +splnightvisionexpot,373,16454 +splnvisionexpot,373,16454 +splnightvexpot,373,16454 +spldarkvisionexpot,373,16454 +spldvisionexpot,373,16454 +spldarkvexpot,373,16454 +spnepot,373,16454 +splashweaknessextendedpotion,373,16456 +splashweakextendedpotion,373,16456 +splashweaknessexpotion,373,16456 +splashweakexpotion,373,16456 +splashweaknessextendedpot,373,16456 +splashweakextendedpot,373,16456 +splashweaknessexpot,373,16456 +splashweakexpot,373,16456 +splweaknessextendedpotion,373,16456 +sphweakextendedpotion,373,16456 +splweaknessexpotion,373,16456 +splweakexpotion,373,16456 +splweaknessextendedpot,373,16456 +splweakextendedpot,373,16456 +splweaknessexpot,373,16456 +splweakexpot,373,16456 +spwepot,373,16456 +splashstrengthextendedpotion,373,16457 +splashstrongextendedpotion,373,16457 +splashstrextendedpotion,373,16457 +splashstrengthexpotion,373,16457 +splashstrongexpotion,373,16457 +splashstrexpotion,373,16457 +splashstrengthextendedpot,373,16457 +splashstrongextendedpot,373,16457 +splashstrextendedpot,373,16457 +splashstrengthexpot,373,16457 +splashstrongexpot,373,16457 +splashstrexpot,373,16457 +splstrengthextendedpotion,373,16457 +splstrongextendedpotion,373,16457 +splstrextendedpotion,373,16457 +splstrengthexpotion,373,16457 +splstrongexpotion,373,16457 +splstrexpotion,373,16457 +splstrengthextendedpot,373,16457 +splstrongextendedpot,373,16457 +splstrextendedpot,373,16457 +splstrengthexpot,373,16457 +splstrongexpot,373,16457 +splstrexpot,373,16457 +spstepot,373,16457 +splashslownessextendedpotion,373,16458 +splashslowextenedpotion,373,16458 +splashslownessexpotion,373,16458 +splashslowexpotion,373,16458 +splashslownessextendedpot,373,16458 +splashslowextenedpot,373,16458 +splashslownessexpot,373,16458 +splashslowexpot,373,16458 +splslownessextendedpotion,373,16458 +splslowextenedpotion,373,16458 +splslownessexpotion,373,16458 +splslowexpotion,373,16458 +splslownessextendedpot,373,16458 +splslowextenedpot,373,16458 +splslownessexpot,373,16458 +splslowexpot,373,16458 +spslepot,373,16458 +splashwaterbreathingextendedpotion,373,16461 +splashwaterbreathextendedpotion,373,16461 +splashbreathingextendedpotion,373,16461 +splashbreathextendedpotion,373,16461 +splashwaterbreathingextendedpot,373,16461 +splashwaterbreathextendedpot,373,16461 +splashbreathingextendedpot,373,16461 +splashbreathextendedpot,373,16461 +splwaterbreathingextendedpotion,373,16461 +splwaterbreathextendedpotion,373,16461 +splbreathingextendedpotion,373,16461 +splbreathextendedpotion,373,16461 +splwaterbreathingextendedpot,373,16461 +splwaterbreathextendedpot,373,16461 +splbreathingextendedpot,373,16461 +splbreathextendedpot,373,16461 +splashwaterbreathingexpotion,373,16461 +splashwaterbreathexpotion,373,16461 +splashbreathingexpotion,373,16461 +splashbreathexpotion,373,16461 +splashwaterbreathingexpot,373,16461 +splashwaterbreathexpot,373,16461 +splashbreathingexpot,373,16461 +splashbreathexpot,373,16461 +splwaterbreathingexpotion,373,16461 +splwaterbreathexpotion,373,16461 +splbreathingexpotion,373,16461 +splbreathexpotion,373,16461 +splwaterbreathingexpot,373,16461 +splwaterbreathexpot,373,16461 +splbreathingexpot,373,16461 +splbreathexpot,373,16461 +spwbepot,373,16461 +splashinvisibilityextendedpotion,373,16462 +splashinvisibleextendedpotion,373,16462 +splashinvextendedpotion,373,16462 +splashinvisibilityextendedpot,373,16462 +splashinvisibleextendedpot,373,16462 +splashinvextendedpot,373,16462 +splashinvisibilityexpotion,373,16462 +splashinvisibleexpotion,373,16462 +splashinvexpotion,373,16462 +splashinvisibilityexpot,373,16462 +splashinvisibleexpot,373,16462 +splashinvexpot,373,16462 +splinvisibilityextendedpotion,373,16462 +splinvisibleextendedpotion,373,16462 +splinvextendedpotion,373,16462 +splinvisibilityextendedpot,373,16462 +splinvisibleextendedpot,373,16462 +splinvextendedpot,373,16462 +splinvisibilityexpotion,373,16462 +splinvisibleexpotion,373,16462 +splinvexpotion,373,16462 +splinvisibilityexpot,373,16462 +splinvisibleexpot,373,16462 +splinvexpot,373,16462 +spiepot,373,16462 +splashregenerationdualbitpotion,373,16481 +splashregeneratedualbitpotion,373,16481 +splashregendualbitpotion,373,16481 +splashregenerationdualbitpot,373,16481 +splashregeneratedualbitpot,373,16481 +splashregendualbitpot,373,16481 +splregenerationdualbitpotion,373,16481 +splregeneratedualbitpotion,373,16481 +splregendualbitpotion,373,16481 +splregenerationdualbitpot,373,16481 +splregeneratedualbitpot,373,16481 +splregendualbitpot,373,16481 +splashregenerationdbpotion,373,16481 +splashregeneratedbpotion,373,16481 +splashregendbpotion,373,16481 +splashregenerationdbpot,373,16481 +splashregeneratedbpot,373,16481 +splashregendbpot,373,16481 +splregenerationdbpotion,373,16481 +splregeneratedbpotion,373,16481 +splregendbpotion,373,16481 +splregenerationdbpot,373,16481 +splregeneratedbpot,373,16481 +splregendbpot,373,16481 +sprdbpot,373,16481 +splashswiftnessdualbitpotion,373,16482 +splashswiftdualbitpotion,373,16482 +splashspeeddualbitpotion,373,16482 +splashswiftnessdualbitpot,373,16482 +splashswiftdualbitpot,373,16482 +splashspeeddualbitpot,373,16482 +splswiftnessdualbitpotion,373,16482 +splswiftdualbitpotion,373,16482 +splspeeddualbitpotion,373,16482 +splswiftnessdualbitpot,373,16482 +splswiftdualbitpot,373,16482 +splspeeddualbitpot,373,16482 +splashswiftnessdbpotion,373,16482 +splashswiftdbpotion,373,16482 +splashspeeddbpotion,373,16482 +splashswiftnessdbpot,373,16482 +splashswiftdbpot,373,16482 +splashspeeddbpot,373,16482 +splswiftnessdbpotion,373,16482 +splswiftdbpotion,373,16482 +splspeeddbpotion,373,16482 +splswiftnessdbpot,373,16482 +splswiftdbpot,373,16482 +splspeeddbpot,373,16482 +spswdbpot,373,16482 +splashpoisondualbitpotion,373,16484 +splashaciddualbitpotion,373,16484 +splashpoisondualbitpot,373,16484 +splashaciddualbitpot,373,16484 +splpoisondualbitpotion,373,16484 +splaciddualbitpotion,373,16484 +splpoisondualbitpot,373,16484 +splaciddualbitpot,373,16484 +splashpoisondbpotion,373,16484 +splashaciddbpotion,373,16484 +splashpoisondbpot,373,16484 +splashaciddbpot,373,16484 +splpoisondbpotion,373,16484 +splaciddbpotion,373,16484 +splpoisondbpot,373,16484 +splaciddbpot,373,16484 +sppdbpot,373,16484 +splashstrengthdualbitpotion,373,16489 +splashstrongdualbitpotion,373,16489 +splashstrdualbitpotion,373,16489 +splashstrengthdualbitpot,373,16489 +splashstrongdualbitpot,373,16489 +splashstrdualbitpot,373,16489 +splstrengthdualbitpotion,373,16489 +splstrongdualbitpotion,373,16489 +splstrdualbitpotion,373,16489 +splstrengthdualbitpot,373,16489 +splstrongdualbitpot,373,16489 +splstrdualbitpot,373,16489 +splashstrengthdbpotion,373,16489 +splashstrongdbpotion,373,16489 +splashstrdbpotion,373,16489 +splashstrengthdbpot,373,16489 +splashstrongdbpot,373,16489 +splashstrdbpot,373,16489 +splstrengthdbpotion,373,16489 +splstrongdbpotion,373,16489 +splstrdbpotion,373,16489 +splstrengthdbpot,373,16489 +splstrongdbpot,373,16489 +splstrdbpot,373,16489 +spstdbpot,373,16489 +glassbottle,374,0 +bottle,374,0 +gbottle,374,0 +gvase,374,0 +vase,374,0 +glassvase,374,0 +emptyglassbottle,374,0 +emptybottle,374,0 +emptygbottle,374,0 +emptygvase,374,0 +emptyvase,374,0 +emptyglassvase,374,0 +eglassbottle,374,0 +ebottle,374,0 +egbottle,374,0 +egvase,374,0 +evase,374,0 +eglassvase,374,0 +spidereye,375,0 +eyeofspider,375,0 +seye,375,0 +fermentedspidereye,376,0 +craftedspidereye,376,0 +fspidereye,376,0 +cspidereye,376,0 +fermentedeyeofspider,376,0 +craftedeyeofspider,376,0 +feyeofspider,376,0 +ceyeofspider,376,0 +fermentedseye,376,0 +craftedseye,376,0 +fseye,376,0 +cseye,376,0 +blazepowder,377,0 +blazedust,377,0 +goldpowder,377,0 +golddust,377,0 +gdust,377,0 +gpowder,377,0 +bpowder,377,0 +bdust,377,0 +magmacream,378,0 +goldcream,378,0 +blazecream,378,0 +mcream,378,0 +gcream,378,0 +bcream,378,0 +combinedcream,378,0 +ccream,378,0 +bstand,379,0 +pstand,379,0 +brewingstand,379,0 +potionstand,379,0 +cauldron,380,0 +steelcauldron,380,0 +ironcauldron,380,0 +icauldron,380,0 +scauldron,380,0 +potioncauldron,380,0 +pcauldron,380,0 +eyeofender,381,0 +endereye,381,0 +endeye,381,0 +evilendereye,381,0 +evileyeofender,381,0 +evilenderpearl,381,0 +eeye,381,0 +eofender,381,0 +glisteringmelon,382,0 +speckledmelon,382,0 +goldmelon,382,0 +sparklymelon,382,0 +shiningmelon,382,0 +gmelon,382,0 +smelon,382,0 +creeperegg,383,50 +eggcreeper,383,50 +skeletonegg,383,51 +eggskeleton,383,51 +spideregg,383,52 +eggspider,383,52 +giantegg,383,53 +egggiant,383,53 +zombieegg,383,54 +eggzombie,383,54 +slimeegg,383,55 +eggslime,383,55 +ghastegg,383,56 +eggghast,383,56 +zombiepigmanegg,383,57 +zpigmanegg,383,57 +pigmanegg,383,57 +zombiepmanegg,383,57 +zpmanegg,383,57 +zombiepigmegg,383,57 +zpigmegg,383,57 +zombiepigegg,383,57 +zpigegg,383,57 +zombiepmegg,383,57 +zombiepegg,383,57 +eggzombiepigman,383,57 +eggzpigman,383,57 +eggpigman,383,57 +eggzombiepman,383,57 +eggzpman,383,57 +eggzombiepigm,383,57 +eggzpigm,383,57 +eggzombiepig,383,57 +eggzpig,383,57 +eggzombiepm,383,57 +eggzombiep,383,57 +endermanegg,383,58 +eggenderman,383,58 +eggcavespider,383,59 +cavespideregg,383,59 +silverfishegg,383,60 +eggsilverfish,383,60 +blazeegg,383,61 +eggblaze,383,61 +lavaslimeegg,383,62 +lavacubeegg,383,62 +magmacubeegg,383,62 +magmaslimeegg,383,62 +egglavaslime,383,62 +egglavacube,383,62 +eggmagmacube,383,62 +eggmagmaslime,383,62 +bategg,383,65 +eggbat,383,65 +witchegg,383,66 +eggwitch,383,66 +pigegg,383,90 +eggpig,383,90 +sheepegg,383,91 +eggsheep,383,91 +cowegg,383,92 +eggcow,383,92 +chickenegg,383,93 +eggchicken,383,93 +squidegg,383,94 +eggsquid,383,94 +wolfegg,383,95 +eggwolf,383,95 +mooshroomegg,383,96 +mushroomcowegg,383,96 +eggmooshroom,383,96 +eggmushroomcow,383,96 +snowgolemegg,383,97 +sgolemegg,383,97 +eggsnowgolem,383,97 +eggsgolem,383,97 +ocelotegg,383,98 +eggocelot,383,98 +irongolemegg,383,99 +igolemegg,383,99 +eggirongolem,383,99 +eggigolem,383,99 +egghorse,383,100 +horseegg,383,100 +villageregg,383,120 +eggvillager,383,120 +bottleofenchanting,384,0 +enchantingbottle,384,0 +expbottle,384,0 +xpbottle,384,0 +bottleexp,384,0 +bottlexp,384,0 +enchantbottle,384,0 +bottleenchanting,384,0 +bottleenchant,384,0 +bottleoenchanting,384,0 +firecharge,385,0 +fireball,385,0 +grenade,385,0 +bookandquill,386,0 +booknquill,386,0 +bookandfeather,386,0 +booknfeather,386,0 +writeablebook,386,0 +writtenbook,387,0 +readablebook,387,0 +sealedbook,387,0 +diary,387,0 +ownedbook,387,0 +emerald,388,0 +itemframe,389,0 +pictureframe,389,0 +iframe,389,0 +pframe,389,0 +flowerpot,390,0 +pot,390,0 +carrot,391,0 +potato,392,0 +rawpotato,392,0 +bakedpotato,393,0 +roastedpotato,393,0 +cookedpotato,393,0 +bakepotato,393,0 +roastpotato,393,0 +cookpotato,393,0 +bpotato,393,0 +rpotato,393,0 +cpotato,393,0 +poisonouspotato,394,0 +poisonpotato,394,0 +ppotato,394,0 +emptymap,395,0 +map,395,0 +goldencarrot,396,0 +goldcarrot,396,0 +gcarrot,396,0 +head,397,0 +skull,397,0 +skeletonhead,397,0 +headskeleton,397,0 +skeletonskull,397,0 +skullskeleton,397,0 +witherhead,397,1 +witherskeletonhead,397,1 +wskeletionhead,397,1 +headwither,397,1 +headwitherskeleton,397,1 +headwskeletion,397,1 +witherskull,397,1 +witherskeletonskull,397,1 +wskeletionskull,397,1 +skullwither,397,1 +skullwitherskeleton,397,1 +skullwskeletion,397,1 +zombiehead,397,2 +headzombie,397,2 +zombieskull,397,2 +skullzombie,397,2 +playerhead,397,3 +humanhead,397,3 +stevehead,397,3 +headplayer,397,3 +headhuman,397,3 +headsteve,397,3 +playerskull,397,3 +humanskull,397,3 +steveskull,397,3 +skullplayer,397,3 +skullhuman,397,3 +skullsteve,397,3 +creeperhead,397,4 +headcreeper,397,4 +creeperskull,397,4 +skullcreeper,397,4 +carrotonastick,398,0 +carrotonstick,398,0 +netherstar,399,0 +hellstar,399,0 +nstar,399,0 +hstar,399,0 +star,399,0 +pumpkinpie,400,0 +pumpkincake,400,0 +ppie,400,0 +pcake,400,0 +pie,400,0 +fireworkrocket,401,0 +fireworkmissle,401,0 +firework,401,0 +fworkrocket,401,0 +fworkmissle,401,0 +fwork,401,0 +fwrocket,401,0 +fwmissle,401,0 +fireworkstar,402,0 +fworkstar,402,0 +fwstar,402,0 +fireworkball,402,0 +fworkball,402,0 +fwball,402,0 +fireworkpowder,402,0 +fworkpowder,402,0 +fwpowder,402,0 +fireworkcharge,402,0 +fworkcharge,402,0 +fwcharge,402,0 +enchantedbook,403,0 +enchantmentbook,403,0 +enchantingbook,403,0 +enchantbook,403,0 +magicalbook,403,0 +magicbook,403,0 +ebook,403,0 +mbook,403,0 +redstonecomparator,404,0 +redstonecomparer,404,0 +redstonecompare,404,0 +rstonecomparator,404,0 +rstonecomparer,404,0 +rstonecompare,404,0 +redscomparator,404,0 +redscomparer,404,0 +redscompare,404,0 +rscomparator,404,0 +rscomparer,404,0 +rscompare,404,0 +comparator,404,0 +comparer,404,0 +compare,404,0 +netherbrick,405,0 +nbrick,405,0 +hellbrick,405,0 +deathbrick,405,0 +dbrick,405,0 +hbrick,405,0 +netherquartz,406,0 +deathquartz,406,0 +hellquartz,406,0 +nquartz,406,0 +dquartz,406,0 +hquartz,406,0 +quartz,406,0 +tntminecart,407,0 +dynamiteminecart,407,0 +dynamitemcart,407,0 +dynamitecart,407,0 +bombminecart,407,0 +bombmcart,407,0 +bombcart,407,0 +tntmcart,407,0 +tntcart,407,0 +dminecart,407,0 +dmcart,407,0 +dcart,407,0 +bminecart,407,0 +bmcart,407,0 +bcart,407,0 +tminecart,407,0 +tmcart,407,0 +tcart,407,0 +hopperminecart,408,0 +hoppermcart,408,0 +hoppercart,408,0 +hopminecart,408,0 +hopmcart,408,0 +hopcart,408,0 +hminecart,408,0 +hmcart,408,0 +hcart,408,0 +ironhorsearmor,417,0 +ironharmor,417,0 +ironarmor,417,0 +ihorsearmor,417,0 +iharmor,417,0 +iarmor,417,0 +steelhorsearmor,417,0 +steelharmor,417,0 +steelarmor,417,0 +shorsearmor,417,0 +sharmor,417,0 +sarmor,417,0 +goldenhorsearmor,418,0 +goldenharmor,418,0 +goldenarmor,418,0 +goldhorsearmor,418,0 +goldharmor,418,0 +goldarmor,418,0 +ghorsearmor,418,0 +gharmor,418,0 +garmor,418,0 +diamondhorsearmor,419,0 +diamondharmor,419,0 +diamondarmor,419,0 +dhorsearmor,419,0 +dharmor,419,0 +darmor,419,0 +crystalhorsearmor,419,0 +crystalharmor,419,0 +crystalarmor,419,0 +chorsearmor,419,0 +charmor,419,0 +carmor,419,0 +lead,420,0 +leash,420,0 +rope,420,0 +nametag,421,0 +tag,421,0 +commandblockminecart,422,0 +cmdblockminecart,422,0 +cblockminecart,422,0 +commandminecart,422,0 +cmdminecart,422,0 +cbminecart,422,0 +commandblockcart,422,0 +cmdblockcart,422,0 +cblockcart,422,0 +commandcart,422,0 +cmdcart,422,0 +cbcart,422,0 +13disc,2256,0 +goldmusicrecord,2256,0 +goldmusicdisk,2256,0 +goldmusicdisc,2256,0 +goldmusiccd,2256,0 +13musicrecord,2256,0 +13musicdisk,2256,0 +13musicdisc,2256,0 +13musiccd,2256,0 +gomusicrecord,2256,0 +gomusicdisk,2256,0 +gomusicdisc,2256,0 +gomusiccd,2256,0 +goldmrecord,2256,0 +goldmdisk,2256,0 +goldmdisc,2256,0 +goldmcd,2256,0 +13mrecord,2256,0 +13mdisk,2256,0 +13mdisc,2256,0 +13mcd,2256,0 +gomrecord,2256,0 +gomdisk,2256,0 +gomdisc,2256,0 +gomcd,2256,0 +goldrecord,2256,0 +golddisk,2256,0 +golddisc,2256,0 +goldcd,2256,0 +13record,2256,0 +13disk,2256,0 +13cd,2256,0 +gorecord,2256,0 +godisk,2256,0 +godisc,2256,0 +gocd,2256,0 +record1,2256,0 +disk1,2256,0 +disc1,2256,0 +cd1,2256,0 +1record,2256,0 +1disk,2256,0 +1disc,2256,0 +1cd,2256,0 +catdisc,2257,0 +greenmusicrecord,2257,0 +greenmusicdisk,2257,0 +greenmusicdisc,2257,0 +greenmusiccd,2257,0 +catmusicrecord,2257,0 +catmusicdisk,2257,0 +catmusicdisc,2257,0 +catmusiccd,2257,0 +grmusicrecord,2257,0 +grmusicdisk,2257,0 +grmusicdisc,2257,0 +grmusiccd,2257,0 +greenmrecord,2257,0 +greenmdisk,2257,0 +greenmdisc,2257,0 +greenmcd,2257,0 +catmrecord,2257,0 +catmdisk,2257,0 +catmdisc,2257,0 +catmcd,2257,0 +grmrecord,2257,0 +grmdisk,2257,0 +grmdisc,2257,0 +grmcd,2257,0 +greenrecord,2257,0 +greendisk,2257,0 +greendisc,2257,0 +greencd,2257,0 +catrecord,2257,0 +catdisk,2257,0 +catcd,2257,0 +grrecord,2257,0 +grdisk,2257,0 +grdisc,2257,0 +grcd,2257,0 +record2,2257,0 +disk2,2257,0 +disc2,2257,0 +cd2,2257,0 +2record,2257,0 +2disk,2257,0 +2disc,2257,0 +2cd,2257,0 +blocksdisc,2258,0 +orangemusicrecord,2258,0 +orangemusicdisk,2258,0 +orangemusicdisc,2258,0 +orangemusiccd,2258,0 +blocksmusicrecord,2258,0 +blocksmusicdisk,2258,0 +blocksmusicdisc,2258,0 +blocksmusiccd,2258,0 +ormusicrecord,2258,0 +ormusicdisk,2258,0 +ormusicdisc,2258,0 +ormusiccd,2258,0 +orangemrecord,2258,0 +orangemdisk,2258,0 +orangemdisc,2258,0 +orangemcd,2258,0 +blocksmrecord,2258,0 +blocksmdisk,2258,0 +blocksmdisc,2258,0 +blocksmcd,2258,0 +ormrecord,2258,0 +ormdisk,2258,0 +ormdisc,2258,0 +ormcd,2258,0 +orangerecord,2258,0 +orangedisk,2258,0 +orangedisc,2258,0 +orangecd,2258,0 +blocksrecord,2258,0 +blocksdisk,2258,0 +blockscd,2258,0 +orrecord,2258,0 +ordisk,2258,0 +ordisc,2258,0 +orcd,2258,0 +record3,2258,0 +disk3,2258,0 +disc3,2258,0 +cd3,2258,0 +3record,2258,0 +3disk,2258,0 +3disc,2258,0 +3cd,2258,0 +chirpdisc,2259,0 +redmusicrecord,2259,0 +redmusicdisk,2259,0 +redmusicdisc,2259,0 +redmusiccd,2259,0 +chirpmusicrecord,2259,0 +chirpmusicdisk,2259,0 +chirpmusicdisc,2259,0 +chirpmusiccd,2259,0 +remusicrecord,2259,0 +remusicdisk,2259,0 +remusicdisc,2259,0 +remusiccd,2259,0 +redmrecord,2259,0 +redmdisk,2259,0 +redmdisc,2259,0 +redmcd,2259,0 +chirpmrecord,2259,0 +chirpmdisk,2259,0 +chirpmdisc,2259,0 +chirpmcd,2259,0 +remrecord,2259,0 +remdisk,2259,0 +remdisc,2259,0 +remcd,2259,0 +redrecord,2259,0 +reddisk,2259,0 +reddisc,2259,0 +redcd,2259,0 +chirprecord,2259,0 +chirpdisk,2259,0 +chirpcd,2259,0 +rerecord,2259,0 +redisk,2259,0 +redisc,2259,0 +recd,2259,0 +record4,2259,0 +disk4,2259,0 +disc4,2259,0 +cd4,2259,0 +4record,2259,0 +4disk,2259,0 +4disc,2259,0 +4cd,2259,0 +fardisc,2260,0 +lightgreenmusicrecord,2260,0 +lightgreenmusicdisk,2260,0 +lightgreenmusicdisc,2260,0 +lightgreenmusiccd,2260,0 +lgreenmusicrecord,2260,0 +lgreenmusicdisk,2260,0 +lgreenmusicdisc,2260,0 +lgreenmusiccd,2260,0 +lightgrmusicrecord,2260,0 +lightgrmusicdisk,2260,0 +lightgrmusicdisc,2260,0 +lightgrmusiccd,2260,0 +farmusicrecord,2260,0 +farmusicdisk,2260,0 +farmusicdisc,2260,0 +farmusiccd,2260,0 +lgrmusicrecord,2260,0 +lgrmusicdisk,2260,0 +lgrmusicdisc,2260,0 +lgrmusiccd,2260,0 +lightgreenmrecord,2260,0 +lightgreenmdisk,2260,0 +lightgreenmdisc,2260,0 +lightgreenmcd,2260,0 +lgreenmrecord,2260,0 +lgreenmdisk,2260,0 +lgreenmdisc,2260,0 +lgreenmcd,2260,0 +lightgrmrecord,2260,0 +lightgrmdisk,2260,0 +lightgrmdisc,2260,0 +lightgrmcd,2260,0 +farmrecord,2260,0 +farmdisk,2260,0 +farmdisc,2260,0 +farmcd,2260,0 +lgrmrecord,2260,0 +lgrmdisk,2260,0 +lgrmdisc,2260,0 +lgrmcd,2260,0 +lightgreenrecord,2260,0 +lightgreendisk,2260,0 +lightgreendisc,2260,0 +lightgreencd,2260,0 +lgreenrecord,2260,0 +lgreendisk,2260,0 +lgreendisc,2260,0 +lgreencd,2260,0 +lightgrrecord,2260,0 +lightgrdisk,2260,0 +lightgrdisc,2260,0 +lightgrcd,2260,0 +farrecord,2260,0 +fardisk,2260,0 +farcd,2260,0 +lgrrecord,2260,0 +lgrdisk,2260,0 +lgrdisc,2260,0 +lgrcd,2260,0 +record5,2260,0 +disk5,2260,0 +disc5,2260,0 +cd5,2260,0 +5record,2260,0 +5disk,2260,0 +5disc,2260,0 +5cd,2260,0 +malldisc,2261,0 +purplemusicrecord,2261,0 +purplemusicdisk,2261,0 +purplemusicdisc,2261,0 +purplemusiccd,2261,0 +mallmusicrecord,2261,0 +mallmusicdisk,2261,0 +mallmusicdisc,2261,0 +mallmusiccd,2261,0 +pumusicrecord,2261,0 +pumusicdisk,2261,0 +pumusicdisc,2261,0 +pumusiccd,2261,0 +purplemrecord,2261,0 +purplemdisk,2261,0 +purplemdisc,2261,0 +purplemcd,2261,0 +mallmrecord,2261,0 +mallmdisk,2261,0 +mallmdisc,2261,0 +mallmcd,2261,0 +pumrecord,2261,0 +pumdisk,2261,0 +pumdisc,2261,0 +pumcd,2261,0 +purplerecord,2261,0 +purpledisk,2261,0 +purpledisc,2261,0 +purplecd,2261,0 +mallrecord,2261,0 +malldisk,2261,0 +mallcd,2261,0 +purecord,2261,0 +pudisk,2261,0 +pudisc,2261,0 +pucd,2261,0 +record6,2261,0 +disk6,2261,0 +disc6,2261,0 +cd6,2261,0 +6record,2261,0 +6disk,2261,0 +6disc,2261,0 +6cd,2261,0 +mellohidisc,2262,0 +pinkmusicrecord,2262,0 +pinkmusicdisk,2262,0 +pinkmusicdisc,2262,0 +pinkmusiccd,2262,0 +mellohimusicrecord,2262,0 +mellohimusicdisk,2262,0 +mellohimusicdisc,2262,0 +mellohimusiccd,2262,0 +pimusicrecord,2262,0 +pimusicdisk,2262,0 +pimusicdisc,2262,0 +pimusiccd,2262,0 +pinkmrecord,2262,0 +pinkmdisk,2262,0 +pinkmdisc,2262,0 +pinkmcd,2262,0 +mellohimrecord,2262,0 +mellohimdisk,2262,0 +mellohimdisc,2262,0 +mellohimcd,2262,0 +pimrecord,2262,0 +pimdisk,2262,0 +pimdisc,2262,0 +pimcd,2262,0 +pinkrecord,2262,0 +pinkdisk,2262,0 +pinkdisc,2262,0 +pinkcd,2262,0 +mellohirecord,2262,0 +mellohidisk,2262,0 +mellohicd,2262,0 +pirecord,2262,0 +pidisk,2262,0 +pidisc,2262,0 +picd,2262,0 +record7,2262,0 +disk7,2262,0 +disc7,2262,0 +cd7,2262,0 +7record,2262,0 +7disk,2262,0 +7disc,2262,0 +7cd,2262,0 +staldisc,2263,0 +blackmusicrecord,2263,0 +blackmusicdisk,2263,0 +blackmusicdisc,2263,0 +blackmusiccd,2263,0 +stalmusicrecord,2263,0 +stalmusicdisk,2263,0 +stalmusicdisc,2263,0 +stalmusiccd,2263,0 +blmusicrecord,2263,0 +blmusicdisk,2263,0 +blmusicdisc,2263,0 +blmusiccd,2263,0 +blackmrecord,2263,0 +blackmdisk,2263,0 +blackmdisc,2263,0 +blackmcd,2263,0 +stalmrecord,2263,0 +stalmdisk,2263,0 +stalmdisc,2263,0 +stalmcd,2263,0 +blmrecord,2263,0 +blmdisk,2263,0 +blmdisc,2263,0 +blmcd,2263,0 +blackrecord,2263,0 +blackdisk,2263,0 +blackdisc,2263,0 +blackcd,2263,0 +stalrecord,2263,0 +staldisk,2263,0 +stalcd,2263,0 +blrecord,2263,0 +bldisk,2263,0 +bldisc,2263,0 +blcd,2263,0 +record8,2263,0 +disk8,2263,0 +disc8,2263,0 +cd8,2263,0 +8record,2263,0 +8disk,2263,0 +8disc,2263,0 +8cd,2263,0 +straddisc,2264,0 +whitemusicrecord,2264,0 +whitemusicdisk,2264,0 +whitemusicdisc,2264,0 +whitemusiccd,2264,0 +stradmusicrecord,2264,0 +stradmusicdisk,2264,0 +stradmusicdisc,2264,0 +stradmusiccd,2264,0 +whmusicrecord,2264,0 +whmusicdisk,2264,0 +whmusicdisc,2264,0 +whmusiccd,2264,0 +whitemrecord,2264,0 +whitemdisk,2264,0 +whitemdisc,2264,0 +whitemcd,2264,0 +stradmrecord,2264,0 +stradmdisk,2264,0 +stradmdisc,2264,0 +stradmcd,2264,0 +whmrecord,2264,0 +whmdisk,2264,0 +whmdisc,2264,0 +whmcd,2264,0 +whiterecord,2264,0 +whitedisk,2264,0 +whitedisc,2264,0 +whitecd,2264,0 +stradrecord,2264,0 +straddisk,2264,0 +stradcd,2264,0 +whrecord,2264,0 +whdisk,2264,0 +whdisc,2264,0 +whcd,2264,0 +record9,2264,0 +disk9,2264,0 +disc9,2264,0 +cd9,2264,0 +9record,2264,0 +9disk,2264,0 +9disc,2264,0 +9cd,2264,0 +warddisc,2265,0 +darkgreenmusicrecord,2265,0 +darkgreenmusicdisk,2265,0 +darkgreenmusicdisc,2265,0 +darkgreenmusiccd,2265,0 +dgreenmusicrecord,2265,0 +dgreenmusicdisk,2265,0 +dgreenmusicdisc,2265,0 +dgreenmusiccd,2265,0 +darkgrmusicrecord,2265,0 +darkgrmusicdisk,2265,0 +darkgrmusicdisc,2265,0 +darkgrmusiccd,2265,0 +wardmusicrecord,2265,0 +wardmusicdisk,2265,0 +wardmusicdisc,2265,0 +wardmusiccd,2265,0 +dgrmusicrecord,2265,0 +dgrmusicdisk,2265,0 +dgrmusicdisc,2265,0 +dgrmusiccd,2265,0 +darkgreenmrecord,2265,0 +darkgreenmdisk,2265,0 +darkgreenmdisc,2265,0 +darkgreenmcd,2265,0 +dgreenmrecord,2265,0 +dgreenmdisk,2265,0 +dgreenmdisc,2265,0 +dgreenmcd,2265,0 +darkgrmrecord,2265,0 +darkgrmdisk,2265,0 +darkgrmdisc,2265,0 +darkgrmcd,2265,0 +wardmrecord,2265,0 +wardmdisk,2265,0 +wardmdisc,2265,0 +wardmcd,2265,0 +dgrmrecord,2265,0 +dgrmdisk,2265,0 +dgrmdisc,2265,0 +dgrmcd,2265,0 +darkgreenrecord,2265,0 +darkgreendisk,2265,0 +darkgreendisc,2265,0 +darkgreencd,2265,0 +dgreenrecord,2265,0 +dgreendisk,2265,0 +dgreendisc,2265,0 +dgreencd,2265,0 +darkgrrecord,2265,0 +darkgrdisk,2265,0 +darkgrdisc,2265,0 +darkgrcd,2265,0 +wardrecord,2265,0 +warddisk,2265,0 +wardcd,2265,0 +dgrrecord,2265,0 +dgrdisk,2265,0 +dgrdisc,2265,0 +dgrcd,2265,0 +record10,2265,0 +disk10,2265,0 +disc10,2265,0 +cd10,2265,0 +10record,2265,0 +10disk,2265,0 +10disc,2265,0 +10cd,2265,0 +11disc,2266,0 +crackedmusicrecord,2266,0 +crackedmusicdisk,2266,0 +crackedmusicdisc,2266,0 +crackedmusiccd,2266,0 +crackmusicrecord,2266,0 +crackmusicdisk,2266,0 +crackmusicdisc,2266,0 +crackmusiccd,2266,0 +11musicrecord,2266,0 +11musicdisk,2266,0 +11musicdisc,2266,0 +11musiccd,2266,0 +cmusicrecord,2266,0 +cmusicdisk,2266,0 +cmusicdisc,2266,0 +cmusiccd,2266,0 +crackedmrecord,2266,0 +crackedmdisk,2266,0 +crackedmdisc,2266,0 +crackedmcd,2266,0 +crackmrecord,2266,0 +crackmdisk,2266,0 +crackmdisc,2266,0 +crackmcd,2266,0 +11mrecord,2266,0 +11mdisk,2266,0 +11mdisc,2266,0 +11mcd,2266,0 +cmrecord,2266,0 +cmdisk,2266,0 +cmdisc,2266,0 +cmcd,2266,0 +crackedrecord,2266,0 +crackeddisk,2266,0 +crackeddisc,2266,0 +crackedcd,2266,0 +crackrecord,2266,0 +crackdisk,2266,0 +crackdisc,2266,0 +crackcd,2266,0 +crecord,2266,0 +cdisk,2266,0 +cdisc,2266,0 +ccd,2266,0 +record11,2266,0 +disk11,2266,0 +disc11,2266,0 +cd11,2266,0 +11record,2266,0 +11disk,2266,0 +11cd,2266,0 +waitdisc,2267,0 +waitmusicrecord,2267,0 +waitmusicdisk,2267,0 +waitmusicdisc,2267,0 +waitmusiccd,2267,0 +bluemusicrecord,2267,0 +bluemusicdisk,2267,0 +bluemusicdisc,2267,0 +bluemusiccd,2267,0 +12musicrecord,2267,0 +12musicdisk,2267,0 +12musicdisc,2267,0 +12musiccd,2267,0 +cyanmusicrecord,2267,0 +cyanmusicdisk,2267,0 +cyanmusicdisc,2267,0 +cyanmusiccd,2267,0 +waitmrecord,2267,0 +waitmdisk,2267,0 +waitmdisc,2267,0 +waitmcd,2267,0 +bluemrecord,2267,0 +bluemdisk,2267,0 +bluemdisc,2267,0 +bluemcd,2267,0 +12mrecord,2267,0 +12mdisk,2267,0 +12mdisc,2267,0 +12mcd,2267,0 +cyanmrecord,2267,0 +cyanmdisk,2267,0 +cyanmdisc,2267,0 +cyanmcd,2267,0 +waitrecord,2267,0 +waitdisk,2267,0 +waitcd,2267,0 +bluerecord,2267,0 +bluedisk,2267,0 +bluedisc,2267,0 +bluecd,2267,0 +cyanrecord,2267,0 +cyandisk,2267,0 +cyandisc,2267,0 +cyancd,2267,0 +record12,2267,0 +disk12,2267,0 +disc12,2267,0 +cd12,2267,0 +12record,2267,0 +12disk,2267,0 +12disc,2267,0 +12cd,2267,0 \ No newline at end of file diff --git a/src/lives.yml b/src/lives.yml new file mode 100644 index 0000000..04ec367 --- /dev/null +++ b/src/lives.yml @@ -0,0 +1 @@ +lives: {} diff --git a/src/net/jodah/expiringmap/EntryLoader.java b/src/net/jodah/expiringmap/EntryLoader.java new file mode 100644 index 0000000..8f6422a --- /dev/null +++ b/src/net/jodah/expiringmap/EntryLoader.java @@ -0,0 +1,17 @@ +package net.jodah.expiringmap; + +/** + * Loads entries on demand. + * + * @param Key type + * @param Value type + */ +public interface EntryLoader { + /** + * Called to load a new value for the {@code key} into an expiring map. + * + * @param key to load a value for + * @return new value to load + */ + V load(K key); +} \ No newline at end of file diff --git a/src/net/jodah/expiringmap/ExpirationListener.java b/src/net/jodah/expiringmap/ExpirationListener.java new file mode 100644 index 0000000..5c4c1d5 --- /dev/null +++ b/src/net/jodah/expiringmap/ExpirationListener.java @@ -0,0 +1,17 @@ +package net.jodah.expiringmap; + +/** + * A listener for expired object events. + * + * @param Key type + * @param Value type + */ +public interface ExpirationListener { + /** + * Called when a map entry expires. + * + * @param key Expired key + * @param value Expired value + */ + void expired(K key, V value); +} \ No newline at end of file diff --git a/src/net/jodah/expiringmap/ExpirationPolicy.java b/src/net/jodah/expiringmap/ExpirationPolicy.java new file mode 100644 index 0000000..defb4a0 --- /dev/null +++ b/src/net/jodah/expiringmap/ExpirationPolicy.java @@ -0,0 +1,11 @@ +package net.jodah.expiringmap; + +/** + * Determines how ExpiringMap entries should be expired. + */ +public enum ExpirationPolicy { + /** Expires entries based on when they were last accessed */ + ACCESSED, + /** Expires entries based on when they were created */ + CREATED; +} \ No newline at end of file diff --git a/src/net/jodah/expiringmap/ExpiringEntryLoader.java b/src/net/jodah/expiringmap/ExpiringEntryLoader.java new file mode 100644 index 0000000..f30bcd7 --- /dev/null +++ b/src/net/jodah/expiringmap/ExpiringEntryLoader.java @@ -0,0 +1,17 @@ +package net.jodah.expiringmap; + +/** + * Loads entries on demand, with control over each value's expiry duration (i.e. variable expiration). + * + * @param Key type + * @param Value type + */ +public interface ExpiringEntryLoader { + /** + * Called to load a new value for the {@code key} into an expiring map. + * + * @param key to load a value for + * @return contains new value to load along with its expiry duration + */ + ExpiringValue load(K key); +} \ No newline at end of file diff --git a/src/net/jodah/expiringmap/ExpiringMap.java b/src/net/jodah/expiringmap/ExpiringMap.java new file mode 100644 index 0000000..df3dcaa --- /dev/null +++ b/src/net/jodah/expiringmap/ExpiringMap.java @@ -0,0 +1,1385 @@ +package net.jodah.expiringmap; + +import java.lang.ref.WeakReference; +import java.util.AbstractCollection; +import java.util.AbstractSet; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Set; +import java.util.SortedSet; +import java.util.TreeSet; +import java.util.concurrent.ConcurrentMap; +import java.util.concurrent.CopyOnWriteArrayList; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.ThreadFactory; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.atomic.AtomicReference; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReadWriteLock; +import java.util.concurrent.locks.ReentrantReadWriteLock; + +import net.jodah.expiringmap.internal.Assert; +import net.jodah.expiringmap.internal.NamedThreadFactory; + +/** + * A thread-safe map that expires entries. Optional features include expiration policies, variable entry expiration, + * lazy entry loading, and expiration listeners. + * + *

+ * Entries are tracked by expiration time and expired by a single thread. + * + *

+ * Expiration listeners are called synchronously as entries are expired and block write operations to the map until they + * completed. Asynchronous expiration listeners are called on a separate thread pool and do not block map operations. + * + *

+ * When variable expiration is disabled (default), put/remove operations have a time complexity O(1). When + * variable expiration is enabled, put/remove operations have time complexity of O(log n). + * + *

+ * Example usages: + * + *

+ * {@code 
+ * Map map = ExpiringMap.create(); 
+ * Map map = ExpiringMap.builder().expiration(30, TimeUnit.SECONDS).build();
+ * Map map = ExpiringMap.builder()
+ *   .expiration(10, TimeUnit.MINUTES)
+ *   .entryLoader(new EntryLoader() {
+ *     public Connection load(String address) {
+ *       return new Connection(address);
+ *     }
+ *   })
+ *   .expirationListener(new ExpirationListener() { 
+ *     public void expired(String key, Connection connection) { 
+ *       connection.close();
+ *     } 
+ *   })
+ *   .build();
+ * }
+ * 
+ * + * @author Jonathan Halterman + * @param Key type + * @param Value type + */ +public class ExpiringMap implements ConcurrentMap { + static volatile ScheduledExecutorService EXPIRER; + static volatile ThreadPoolExecutor LISTENER_SERVICE; + static ThreadFactory THREAD_FACTORY; + + List> expirationListeners; + List> asyncExpirationListeners; + private AtomicLong expirationNanos; + private int maxSize; + private final AtomicReference expirationPolicy; + private final EntryLoader entryLoader; + private final ExpiringEntryLoader expiringEntryLoader; + private final ReadWriteLock readWriteLock = new ReentrantReadWriteLock(); + private final Lock readLock = readWriteLock.readLock(); + private final Lock writeLock = readWriteLock.writeLock(); + /** Guarded by "readWriteLock" */ + private final EntryMap entries; + private final boolean variableExpiration; + + /** + * Sets the {@link ThreadFactory} that is used to create expiration and listener callback threads for all ExpiringMap + * instances. + * + * @param threadFactory + * @throws NullPointerException if {@code threadFactory} is null + */ + public static void setThreadFactory(ThreadFactory threadFactory) { + THREAD_FACTORY = Assert.notNull(threadFactory, "threadFactory"); + } + + /** + * Creates a new instance of ExpiringMap. + * + * @param builder The map builder + */ + private ExpiringMap(final Builder builder) { + if (EXPIRER == null) { + synchronized (ExpiringMap.class) { + if (EXPIRER == null) { + EXPIRER = Executors.newSingleThreadScheduledExecutor( + THREAD_FACTORY == null ? new NamedThreadFactory("ExpiringMap-Expirer") : THREAD_FACTORY); + } + } + } + + if (LISTENER_SERVICE == null && builder.asyncExpirationListeners != null) { + synchronized (ExpiringMap.class) { + if (LISTENER_SERVICE == null) { + LISTENER_SERVICE = (ThreadPoolExecutor) Executors.newCachedThreadPool( + THREAD_FACTORY == null ? new NamedThreadFactory("ExpiringMap-Listener-%s") : THREAD_FACTORY); + } + } + } + + variableExpiration = builder.variableExpiration; + entries = variableExpiration ? new EntryTreeHashMap() : new EntryLinkedHashMap(); + if (builder.expirationListeners != null) + expirationListeners = new CopyOnWriteArrayList>(builder.expirationListeners); + if (builder.asyncExpirationListeners != null) + asyncExpirationListeners = new CopyOnWriteArrayList>(builder.asyncExpirationListeners); + expirationPolicy = new AtomicReference(builder.expirationPolicy); + expirationNanos = new AtomicLong(TimeUnit.NANOSECONDS.convert(builder.duration, builder.timeUnit)); + maxSize = builder.maxSize; + entryLoader = builder.entryLoader; + expiringEntryLoader = builder.expiringEntryLoader; + } + + /** + * Builds ExpiringMap instances. Defaults to ExpirationPolicy.CREATED, expiration of 60 TimeUnit.SECONDS and + * a maxSize of Integer.MAX_VALUE. + */ + public static final class Builder { + private ExpirationPolicy expirationPolicy = ExpirationPolicy.CREATED; + private List> expirationListeners; + private List> asyncExpirationListeners; + private TimeUnit timeUnit = TimeUnit.SECONDS; + private boolean variableExpiration; + private long duration = 60; + private int maxSize = Integer.MAX_VALUE; + private EntryLoader entryLoader; + private ExpiringEntryLoader expiringEntryLoader; + + /** + * Creates a new Builder object. + */ + private Builder() { + } + + /** + * Builds and returns an expiring map. + * + * @param Key type + * @param Value type + */ + @SuppressWarnings("unchecked") + public ExpiringMap build() { + return new ExpiringMap((Builder) this); + } + + /** + * Sets the default map entry expiration. + * + * @param duration the length of time after an entry is created that it should be removed + * @param timeUnit the unit that {@code duration} is expressed in + * @throws NullPointerException if {@code timeUnit} is null + */ + public Builder expiration(long duration, TimeUnit timeUnit) { + this.duration = duration; + this.timeUnit = Assert.notNull(timeUnit, "timeUnit"); + return this; + } + + /** + * Sets the maximum size of the map. Once this size has been reached, adding an additional entry will expire the + * first entry in line for expiration based on the expiration policy. + * + * @param maxSize The maximum size of the map. + */ + public Builder maxSize(int maxSize) { + Assert.operation(maxSize > 0, "maxSize"); + this.maxSize = maxSize; + return this; + } + + /** + * Sets the EntryLoader to use when loading entries. Either an EntryLoader or ExpiringEntryLoader may be set, not + * both. + * + * @param loader to set + * @throws NullPointerException if {@code loader} is null + * @throws IllegalStateException if an {@link #expiringEntryLoader(ExpiringEntryLoader) ExpiringEntryLoader} is set + */ + @SuppressWarnings("unchecked") + public Builder entryLoader(EntryLoader loader) { + assertNoLoaderSet(); + entryLoader = (EntryLoader) Assert.notNull(loader, "loader"); + return (Builder) this; + } + + /** + * Sets the ExpiringEntryLoader to use when loading entries and configures {@link #variableExpiration() variable + * expiration}. Either an EntryLoader or ExpiringEntryLoader may be set, not both. + * + * @param loader to set + * @throws NullPointerException if {@code loader} is null + * @throws IllegalStateException if an {@link #entryLoader(EntryLoader) EntryLoader} is set + */ + @SuppressWarnings("unchecked") + public Builder expiringEntryLoader( + ExpiringEntryLoader loader) { + assertNoLoaderSet(); + expiringEntryLoader = (ExpiringEntryLoader) Assert.notNull(loader, "loader"); + variableExpiration(); + return (Builder) this; + } + + /** + * Configures the expiration listener that will receive notifications upon each map entry's expiration. + * Notifications are delivered synchronously and block map write operations. + * + * @param listener to set + * @throws NullPointerException if {@code listener} is null + */ + @SuppressWarnings("unchecked") + public Builder expirationListener( + ExpirationListener listener) { + Assert.notNull(listener, "listener"); + if (expirationListeners == null) + expirationListeners = new ArrayList>(); + expirationListeners.add((ExpirationListener) listener); + return (Builder) this; + } + + /** + * Configures the expiration listeners which will receive notifications upon each map entry's expiration. + * Notifications are delivered synchronously and block map write operations. + * + * @param listeners to set + * @throws NullPointerException if {@code listener} is null + */ + @SuppressWarnings("unchecked") + public Builder expirationListeners( + List> listeners) { + Assert.notNull(listeners, "listeners"); + if (expirationListeners == null) + expirationListeners = new ArrayList>(listeners.size()); + for (ExpirationListener listener : listeners) + expirationListeners.add((ExpirationListener) listener); + return (Builder) this; + } + + /** + * Configures the expiration listener which will receive asynchronous notifications upon each map entry's + * expiration. + * + * @param listener to set + * @throws NullPointerException if {@code listener} is null + */ + @SuppressWarnings("unchecked") + public Builder asyncExpirationListener( + ExpirationListener listener) { + Assert.notNull(listener, "listener"); + if (asyncExpirationListeners == null) + asyncExpirationListeners = new ArrayList>(); + asyncExpirationListeners.add((ExpirationListener) listener); + return (Builder) this; + } + + /** + * Configures the expiration listeners which will receive asynchronous notifications upon each map entry's + * expiration. + * + * @param listeners to set + * @throws NullPointerException if {@code listener} is null + */ + @SuppressWarnings("unchecked") + public Builder asyncExpirationListeners( + List> listeners) { + Assert.notNull(listeners, "listeners"); + if (asyncExpirationListeners == null) + asyncExpirationListeners = new ArrayList>(listeners.size()); + for (ExpirationListener listener : listeners) + asyncExpirationListeners.add((ExpirationListener) listener); + return (Builder) this; + } + + /** + * Configures the map entry expiration policy. + * + * @param expirationPolicy + * @throws NullPointerException if {@code expirationPolicy} is null + */ + public Builder expirationPolicy(ExpirationPolicy expirationPolicy) { + this.expirationPolicy = Assert.notNull(expirationPolicy, "expirationPolicy"); + return this; + } + + /** + * Allows for map entries to have individual expirations and for expirations to be changed. + */ + public Builder variableExpiration() { + variableExpiration = true; + return this; + } + + private void assertNoLoaderSet() { + Assert.state(entryLoader == null && expiringEntryLoader == null, + "Either entryLoader or expiringEntryLoader may be set, not both"); + } + } + + /** Entry map definition. */ + private interface EntryMap extends Map> { + /** Returns the first entry in the map or null if the map is empty. */ + ExpiringEntry first(); + + /** + * Reorders the given entry in the map. + * + * @param entry to reorder + */ + void reorder(ExpiringEntry entry); + + /** Returns a values iterator. */ + Iterator> valuesIterator(); + } + + /** Entry LinkedHashMap implementation. */ + private static class EntryLinkedHashMap extends LinkedHashMap> + implements EntryMap { + private static final long serialVersionUID = 1L; + + @Override + public boolean containsValue(Object value) { + for (ExpiringEntry entry : values()) { + V v = entry.value; + if (v == value || (value != null && value.equals(v))) + return true; + } + return false; + } + + @Override + public ExpiringEntry first() { + return isEmpty() ? null : values().iterator().next(); + } + + @Override + public void reorder(ExpiringEntry value) { + remove(value.key); + value.resetExpiration(); + put(value.key, value); + } + + @Override + public Iterator> valuesIterator() { + return values().iterator(); + } + + abstract class AbstractHashIterator { + private final Iterator>> iterator = entrySet().iterator(); + private ExpiringEntry next; + + public boolean hasNext() { + return iterator.hasNext(); + } + + public ExpiringEntry getNext() { + next = iterator.next().getValue(); + return next; + } + + public void remove() { + iterator.remove(); + } + } + + final class KeyIterator extends AbstractHashIterator implements Iterator { + public final K next() { + return getNext().key; + } + } + + final class ValueIterator extends AbstractHashIterator implements Iterator { + public final V next() { + return getNext().value; + } + } + + public final class EntryIterator extends AbstractHashIterator implements Iterator> { + public final Map.Entry next() { + return mapEntryFor(getNext()); + } + } + } + + /** Entry TreeHashMap implementation for variable expiration ExpiringMap entries. */ + private static class EntryTreeHashMap extends HashMap> implements EntryMap { + private static final long serialVersionUID = 1L; + SortedSet> sortedSet = new TreeSet>(); + + @Override + public void clear() { + super.clear(); + sortedSet.clear(); + } + + @Override + public boolean containsValue(Object value) { + for (ExpiringEntry entry : values()) { + V v = entry.value; + if (v == value || (value != null && value.equals(v))) + return true; + } + return false; + } + + @Override + public ExpiringEntry first() { + return sortedSet.isEmpty() ? null : sortedSet.first(); + } + + @Override + public ExpiringEntry put(K key, ExpiringEntry value) { + sortedSet.add(value); + return super.put(key, value); + } + + @Override + public ExpiringEntry remove(Object key) { + ExpiringEntry entry = super.remove(key); + if (entry != null) + sortedSet.remove(entry); + return entry; + } + + @Override + public void reorder(ExpiringEntry value) { + sortedSet.remove(value); + value.resetExpiration(); + sortedSet.add(value); + } + + @Override + public Iterator> valuesIterator() { + return new ExpiringEntryIterator(); + } + + abstract class AbstractHashIterator { + private final Iterator> iterator = sortedSet.iterator(); + protected ExpiringEntry next; + + public boolean hasNext() { + return iterator.hasNext(); + } + + public ExpiringEntry getNext() { + next = iterator.next(); + return next; + } + + public void remove() { + EntryTreeHashMap.super.remove(next.key); + iterator.remove(); + } + } + + final class ExpiringEntryIterator extends AbstractHashIterator implements Iterator> { + public final ExpiringEntry next() { + return getNext(); + } + } + + final class KeyIterator extends AbstractHashIterator implements Iterator { + public final K next() { + return getNext().key; + } + } + + final class ValueIterator extends AbstractHashIterator implements Iterator { + public final V next() { + return getNext().value; + } + } + + final class EntryIterator extends AbstractHashIterator implements Iterator> { + public final Map.Entry next() { + return mapEntryFor(getNext()); + } + } + } + + /** Expiring map entry implementation. */ + static class ExpiringEntry implements Comparable> { + final AtomicLong expirationNanos; + /** Epoch time at which the entry is expected to expire */ + final AtomicLong expectedExpiration; + final AtomicReference expirationPolicy; + final K key; + /** Guarded by "this" */ + volatile Future entryFuture; + /** Guarded by "this" */ + V value; + /** Guarded by "this" */ + volatile boolean scheduled; + + /** + * Creates a new ExpiringEntry object. + * + * @param key for the entry + * @param value for the entry + * @param expirationPolicy for the entry + * @param expirationNanos for the entry + */ + ExpiringEntry(K key, V value, AtomicReference expirationPolicy, AtomicLong expirationNanos) { + this.key = key; + this.value = value; + this.expirationPolicy = expirationPolicy; + this.expirationNanos = expirationNanos; + this.expectedExpiration = new AtomicLong(); + resetExpiration(); + } + + @Override + public int compareTo(ExpiringEntry other) { + if (key.equals(other.key)) + return 0; + return expectedExpiration.get() < other.expectedExpiration.get() ? -1 : 1; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((key == null) ? 0 : key.hashCode()); + result = prime * result + ((value == null) ? 0 : value.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + ExpiringEntry other = (ExpiringEntry) obj; + if (!key.equals(other.key)) + return false; + if (value == null) { + if (other.value != null) + return false; + } else if (!value.equals(other.value)) + return false; + return true; + } + + @Override + public String toString() { + return value.toString(); + } + + /** + * Marks the entry as canceled. + * + * @return true if the entry was scheduled + */ + synchronized boolean cancel() { + boolean result = scheduled; + if (entryFuture != null) + entryFuture.cancel(false); + + entryFuture = null; + scheduled = false; + return result; + } + + /** Gets the entry value. */ + synchronized V getValue() { + return value; + } + + /** Resets the entry's expected expiration. */ + void resetExpiration() { + expectedExpiration.set(expirationNanos.get() + System.nanoTime()); + } + + /** Marks the entry as scheduled. */ + synchronized void schedule(Future entryFuture) { + this.entryFuture = entryFuture; + scheduled = true; + } + + /** Sets the entry value. */ + synchronized void setValue(V value) { + this.value = value; + } + } + + /** + * Creates an ExpiringMap builder. + * + * @return New ExpiringMap builder + */ + public static Builder builder() { + return new Builder(); + } + + /** + * Creates a new instance of ExpiringMap with ExpirationPolicy.CREATED and an expiration of 60 seconds. + */ + @SuppressWarnings("unchecked") + public static ExpiringMap create() { + return new ExpiringMap((Builder) ExpiringMap.builder()); + } + + /** + * Adds an expiration listener. + * + * @param listener to add + * @throws NullPointerException if {@code listener} is null + */ + public synchronized void addExpirationListener(ExpirationListener listener) { + Assert.notNull(listener, "listener"); + if (expirationListeners == null) + expirationListeners = new CopyOnWriteArrayList>(); + expirationListeners.add(listener); + } + + /** + * Adds an asynchronous expiration listener. + * + * @param listener to add + * @throws NullPointerException if {@code listener} is null + */ + public synchronized void addAsyncExpirationListener(ExpirationListener listener) { + Assert.notNull(listener, "listener"); + if (asyncExpirationListeners == null) + asyncExpirationListeners = new CopyOnWriteArrayList>(); + asyncExpirationListeners.add(listener); + } + + @Override + public void clear() { + writeLock.lock(); + try { + for (ExpiringEntry entry : entries.values()) + entry.cancel(); + entries.clear(); + } finally { + writeLock.unlock(); + } + } + + @Override + public boolean containsKey(Object key) { + readLock.lock(); + try { + return entries.containsKey(key); + } finally { + readLock.unlock(); + } + } + + @Override + public boolean containsValue(Object value) { + readLock.lock(); + try { + return entries.containsValue(value); + } finally { + readLock.unlock(); + } + } + + @Override + public Set> entrySet() { + return new AbstractSet>() { + @Override + public void clear() { + ExpiringMap.this.clear(); + } + + @Override + public boolean contains(Object entry) { + if (!(entry instanceof Map.Entry)) + return false; + Map.Entry e = (Map.Entry) entry; + return containsKey(e.getKey()); + } + + @Override + public Iterator> iterator() { + return (entries instanceof EntryLinkedHashMap) ? ((EntryLinkedHashMap) entries).new EntryIterator() + : ((EntryTreeHashMap) entries).new EntryIterator(); + } + + @Override + public boolean remove(Object entry) { + if (entry instanceof Map.Entry) { + Map.Entry e = (Map.Entry) entry; + return ExpiringMap.this.remove(e.getKey()) != null; + } + return false; + } + + @Override + public int size() { + return ExpiringMap.this.size(); + } + }; + } + + @Override + public boolean equals(Object obj) { + readLock.lock(); + try { + return entries.equals(obj); + } finally { + readLock.unlock(); + } + } + + @Override + @SuppressWarnings("unchecked") + public V get(Object key) { + ExpiringEntry entry = getEntry(key); + + if (entry == null) { + return load((K) key); + } else if (ExpirationPolicy.ACCESSED.equals(entry.expirationPolicy.get())) + resetEntry(entry, false); + + return entry.getValue(); + } + + private V load(K key) { + if (entryLoader == null && expiringEntryLoader == null) + return null; + + writeLock.lock(); + try { + // Double check for entry + ExpiringEntry entry = getEntry(key); + if (entry != null) + return entry.getValue(); + + if (entryLoader != null) { + V value = entryLoader.load(key); + put(key, value); + return value; + } else { + ExpiringValue expiringValue = expiringEntryLoader.load(key); + if (expiringValue == null) { + put(key, null); + return null; + } else { + long duration = expiringValue.getTimeUnit() == null ? expirationNanos.get() : expiringValue.getDuration(); + TimeUnit timeUnit = expiringValue.getTimeUnit() == null ? TimeUnit.NANOSECONDS : expiringValue.getTimeUnit(); + put(key, expiringValue.getValue(), expiringValue.getExpirationPolicy() == null ? expirationPolicy.get() + : expiringValue.getExpirationPolicy(), duration, timeUnit); + return expiringValue.getValue(); + } + } + } finally { + writeLock.unlock(); + } + } + + /** + * Returns the map's default expiration duration in milliseconds. + * + * @return The expiration duration (milliseconds) + */ + public long getExpiration() { + return TimeUnit.NANOSECONDS.toMillis(expirationNanos.get()); + } + + /** + * Gets the expiration duration in milliseconds for the entry corresponding to the given key. + * + * @param key + * @return The expiration duration in milliseconds + * @throws NullPointerException if {@code key} is null + * @throws NoSuchElementException If no entry exists for the given key + */ + public long getExpiration(K key) { + Assert.notNull(key, "key"); + ExpiringEntry entry = getEntry(key); + Assert.element(entry, key); + return TimeUnit.NANOSECONDS.toMillis(entry.expirationNanos.get()); + } + + /** + * Gets the ExpirationPolicy for the entry corresponding to the given {@code key}. + * + * @param key + * @return The ExpirationPolicy for the {@code key} + * @throws NullPointerException if {@code key} is null + * @throws NoSuchElementException If no entry exists for the given key + */ + public ExpirationPolicy getExpirationPolicy(K key) { + Assert.notNull(key, "key"); + ExpiringEntry entry = getEntry(key); + Assert.element(entry, key); + return entry.expirationPolicy.get(); + } + + /** + * Gets the expected expiration, in milliseconds from the current time, for the entry corresponding to the given + * {@code key}. + * + * @param key + * @return The expiration duration in milliseconds + * @throws NullPointerException if {@code key} is null + * @throws NoSuchElementException If no entry exists for the given key + */ + public long getExpectedExpiration(K key) { + Assert.notNull(key, "key"); + ExpiringEntry entry = getEntry(key); + Assert.element(entry, key); + return TimeUnit.NANOSECONDS.toMillis(entry.expectedExpiration.get() - System.nanoTime()); + } + + /** + * Gets the maximum size of the map. Once this size has been reached, adding an additional entry will expire the + * first entry in line for expiration based on the expiration policy. + * + * @return The maximum size of the map. + */ + public int getMaxSize() { + return maxSize; + } + + @Override + public int hashCode() { + readLock.lock(); + try { + return entries.hashCode(); + } finally { + readLock.unlock(); + } + } + + @Override + public boolean isEmpty() { + readLock.lock(); + try { + return entries.isEmpty(); + } finally { + readLock.unlock(); + } + } + + @Override + public Set keySet() { + return new AbstractSet() { + @Override + public void clear() { + ExpiringMap.this.clear(); + } + + @Override + public boolean contains(Object key) { + return containsKey(key); + } + + @Override + public Iterator iterator() { + return (entries instanceof EntryLinkedHashMap) ? ((EntryLinkedHashMap) entries).new KeyIterator() + : ((EntryTreeHashMap) entries).new KeyIterator(); + } + + @Override + public boolean remove(Object value) { + return ExpiringMap.this.remove(value) != null; + } + + @Override + public int size() { + return ExpiringMap.this.size(); + } + }; + } + + /** + * Puts {@code value} in the map for {@code key}. Resets the entry's expiration unless an entry already exists for the + * same {@code key} and {@code value}. + * + * @param key to put value for + * @param value to put for key + * @return the old value + * @throws NullPointerException if {@code key} is null + */ + @Override + public V put(K key, V value) { + Assert.notNull(key, "key"); + return putInternal(key, value, expirationPolicy.get(), expirationNanos.get()); + } + + /** + * @see #put(Object, Object, ExpirationPolicy, long, TimeUnit) + */ + public V put(K key, V value, ExpirationPolicy expirationPolicy) { + return put(key, value, expirationPolicy, expirationNanos.get(), TimeUnit.NANOSECONDS); + } + + /** + * @see #put(Object, Object, ExpirationPolicy, long, TimeUnit) + */ + public V put(K key, V value, long duration, TimeUnit timeUnit) { + return put(key, value, expirationPolicy.get(), duration, timeUnit); + } + + /** + * Puts {@code value} in the map for {@code key}. Resets the entry's expiration unless an entry already exists for the + * same {@code key} and {@code value}. Requires that variable expiration be enabled. + * + * @param key Key to put value for + * @param value Value to put for key + * @param duration the length of time after an entry is created that it should be removed + * @param timeUnit the unit that {@code duration} is expressed in + * @return the old value + * @throws UnsupportedOperationException If variable expiration is not enabled + * @throws NullPointerException if {@code key}, {@code expirationPolicy} or {@code timeUnit} are null + */ + public V put(K key, V value, ExpirationPolicy expirationPolicy, long duration, TimeUnit timeUnit) { + Assert.notNull(key, "key"); + Assert.notNull(expirationPolicy, "expirationPolicy"); + Assert.notNull(timeUnit, "timeUnit"); + Assert.operation(variableExpiration, "Variable expiration is not enabled"); + return putInternal(key, value, expirationPolicy, TimeUnit.NANOSECONDS.convert(duration, timeUnit)); + } + + @Override + public void putAll(Map map) { + Assert.notNull(map, "map"); + long expiration = expirationNanos.get(); + ExpirationPolicy expirationPolicy = this.expirationPolicy.get(); + writeLock.lock(); + try { + for (Map.Entry entry : map.entrySet()) + putInternal(entry.getKey(), entry.getValue(), expirationPolicy, expiration); + } finally { + writeLock.unlock(); + } + } + + @Override + public V putIfAbsent(K key, V value) { + Assert.notNull(key, "key"); + writeLock.lock(); + try { + if (!entries.containsKey(key)) + return putInternal(key, value, expirationPolicy.get(), expirationNanos.get()); + else + return entries.get(key).getValue(); + } finally { + writeLock.unlock(); + } + } + + @Override + public V remove(Object key) { + Assert.notNull(key, "key"); + writeLock.lock(); + try { + ExpiringEntry entry = entries.remove(key); + if (entry == null) + return null; + if (entry.cancel()) + scheduleEntry(entries.first()); + return entry.getValue(); + } finally { + writeLock.unlock(); + } + } + + @Override + public boolean remove(Object key, Object value) { + Assert.notNull(key, "key"); + writeLock.lock(); + try { + ExpiringEntry entry = entries.get(key); + if (entry != null && entry.getValue().equals(value)) { + entries.remove(key); + if (entry.cancel()) + scheduleEntry(entries.first()); + return true; + } else + return false; + } finally { + writeLock.unlock(); + } + } + + @Override + public V replace(K key, V value) { + Assert.notNull(key, "key"); + writeLock.lock(); + try { + if (entries.containsKey(key)) { + return putInternal(key, value, expirationPolicy.get(), expirationNanos.get()); + } else + return null; + } finally { + writeLock.unlock(); + } + } + + @Override + public boolean replace(K key, V oldValue, V newValue) { + Assert.notNull(key, "key"); + writeLock.lock(); + try { + ExpiringEntry entry = entries.get(key); + if (entry != null && entry.getValue().equals(oldValue)) { + putInternal(key, newValue, expirationPolicy.get(), expirationNanos.get()); + return true; + } else + return false; + } finally { + writeLock.unlock(); + } + } + + /** + * Removes an expiration listener. + * + * @param listener + * @throws NullPointerException if {@code listener} is null + */ + public void removeExpirationListener(ExpirationListener listener) { + Assert.notNull(listener, "listener"); + for (int i = 0; i < expirationListeners.size(); i++) { + if (expirationListeners.get(i).equals(listener)) { + expirationListeners.remove(i); + return; + } + } + } + + /** + * Removes an asynchronous expiration listener. + * + * @param listener + * @throws NullPointerException if {@code listener} is null + */ + public void removeAsyncExpirationListener(ExpirationListener listener) { + Assert.notNull(listener, "listener"); + for (int i = 0; i < asyncExpirationListeners.size(); i++) { + if (asyncExpirationListeners.get(i).equals(listener)) { + asyncExpirationListeners.remove(i); + return; + } + } + } + + /** + * Resets expiration for the entry corresponding to {@code key}. + * + * @param key to reset expiration for + * @throws NullPointerException if {@code key} is null + */ + public void resetExpiration(K key) { + Assert.notNull(key, "key"); + ExpiringEntry entry = getEntry(key); + if (entry != null) + resetEntry(entry, false); + } + + /** + * Sets the expiration duration for the entry corresponding to the given key. Supported only if variable expiration is + * enabled. + * + * @param key Key to set expiration for + * @param duration the length of time after an entry is created that it should be removed + * @param timeUnit the unit that {@code duration} is expressed in + * @throws NullPointerException if {@code key} or {@code timeUnit} are null + * @throws UnsupportedOperationException If variable expiration is not enabled + */ + public void setExpiration(K key, long duration, TimeUnit timeUnit) { + Assert.notNull(key, "key"); + Assert.notNull(timeUnit, "timeUnit"); + Assert.operation(variableExpiration, "Variable expiration is not enabled"); + writeLock.lock(); + try { + ExpiringEntry entry = entries.get(key); + if (entry != null) { + entry.expirationNanos.set(TimeUnit.NANOSECONDS.convert(duration, timeUnit)); + resetEntry(entry, true); + } + } finally { + writeLock.unlock(); + } + } + + /** + * Updates the default map entry expiration. Supported only if variable expiration is enabled. + * + * @param duration the length of time after an entry is created that it should be removed + * @param timeUnit the unit that {@code duration} is expressed in + * @throws NullPointerException {@code timeUnit} is null + * @throws UnsupportedOperationException If variable expiration is not enabled + */ + public void setExpiration(long duration, TimeUnit timeUnit) { + Assert.notNull(timeUnit, "timeUnit"); + Assert.operation(variableExpiration, "Variable expiration is not enabled"); + expirationNanos.set(TimeUnit.NANOSECONDS.convert(duration, timeUnit)); + } + + /** + * Sets the global expiration policy for the map. Individual expiration policies may override the global policy. + * + * @param expirationPolicy + * @throws NullPointerException {@code expirationPolicy} is null + */ + public void setExpirationPolicy(ExpirationPolicy expirationPolicy) { + Assert.notNull(expirationPolicy, "expirationPolicy"); + this.expirationPolicy.set(expirationPolicy); + } + + /** + * Sets the expiration policy for the entry corresponding to the given key. + * + * @param key to set policy for + * @param expirationPolicy to set + * @throws NullPointerException if {@code key} or {@code expirationPolicy} are null + * @throws UnsupportedOperationException If variable expiration is not enabled + */ + public void setExpirationPolicy(K key, ExpirationPolicy expirationPolicy) { + Assert.notNull(key, "key"); + Assert.notNull(expirationPolicy, "expirationPolicy"); + Assert.operation(variableExpiration, "Variable expiration is not enabled"); + ExpiringEntry entry = getEntry(key); + if (entry != null) + entry.expirationPolicy.set(expirationPolicy); + } + + /** + * Sets the maximum size of the map. Once this size has been reached, adding an additional entry will expire the + * first entry in line for expiration based on the expiration policy. + * + * @param maxSize The maximum size of the map. + */ + public void setMaxSize(int maxSize) { + Assert.operation(maxSize > 0, "maxSize"); + this.maxSize = maxSize; + } + + @Override + public int size() { + readLock.lock(); + try { + return entries.size(); + } finally { + readLock.unlock(); + } + } + + @Override + public String toString() { + readLock.lock(); + try { + return entries.toString(); + } finally { + readLock.unlock(); + } + } + + @Override + public Collection values() { + return new AbstractCollection() { + @Override + public void clear() { + ExpiringMap.this.clear(); + } + + @Override + public boolean contains(Object value) { + return containsValue(value); + } + + @Override + public Iterator iterator() { + return (entries instanceof EntryLinkedHashMap) ? ((EntryLinkedHashMap) entries).new ValueIterator() + : ((EntryTreeHashMap) entries).new ValueIterator(); + } + + @Override + public int size() { + return ExpiringMap.this.size(); + } + }; + } + + /** + * Notifies expiration listeners that the given entry expired. Must not be called from within a locked context. + * + * @param entry Entry to expire + */ + void notifyListeners(final ExpiringEntry entry) { + if (asyncExpirationListeners != null) + for (final ExpirationListener listener : asyncExpirationListeners) { + LISTENER_SERVICE.execute(new Runnable() { + public void run() { + try { + listener.expired(entry.key, entry.getValue()); + } catch (Exception ignoreUserExceptions) { + } + } + }); + } + + if (expirationListeners != null) + for (final ExpirationListener listener : expirationListeners) { + try { + listener.expired(entry.key, entry.getValue()); + } catch (Exception ignoreUserExceptions) { + } + } + } + + /** + * Returns the internal ExpiringEntry for the {@code key}, obtaining a read lock. + */ + ExpiringEntry getEntry(Object key) { + readLock.lock(); + try { + return entries.get(key); + } finally { + readLock.unlock(); + } + } + + /** + * Puts the given key/value in storage, scheduling the new entry for expiration if needed. If a previous value existed + * for the given key, it is first cancelled and the entries reordered to reflect the new expiration. + */ + V putInternal(K key, V value, ExpirationPolicy expirationPolicy, long expirationNanos) { + writeLock.lock(); + try { + ExpiringEntry entry = entries.get(key); + V oldValue = null; + + if (entry == null) { + entry = new ExpiringEntry(key, value, + variableExpiration ? new AtomicReference(expirationPolicy) : this.expirationPolicy, + variableExpiration ? new AtomicLong(expirationNanos) : this.expirationNanos); + if (entries.size() >= maxSize) { + ExpiringEntry expiredEntry = entries.first(); + entries.remove(expiredEntry.key); + notifyListeners(expiredEntry); + } + entries.put(key, entry); + if (entries.size() == 1 || entries.first().equals(entry)) + scheduleEntry(entry); + } else { + oldValue = entry.getValue(); + if (!ExpirationPolicy.ACCESSED.equals(expirationPolicy) + && ((oldValue == null && value == null) || (oldValue != null && oldValue.equals(value)))) + return value; + + entry.setValue(value); + resetEntry(entry, false); + } + + return oldValue; + } finally { + writeLock.unlock(); + } + } + + /** + * Resets the given entry's schedule canceling any existing scheduled expiration and reordering the entry in the + * internal map. Schedules the next entry in the map if the given {@code entry} was scheduled or if + * {@code scheduleNext} is true. + * + * @param entry to reset + * @param scheduleFirstEntry whether the first entry should be automatically scheduled + */ + void resetEntry(ExpiringEntry entry, boolean scheduleFirstEntry) { + writeLock.lock(); + try { + boolean scheduled = entry.cancel(); + entries.reorder(entry); + + if (scheduled || scheduleFirstEntry) + scheduleEntry(entries.first()); + } finally { + writeLock.unlock(); + } + } + + /** + * Schedules an entry for expiration. Guards against concurrent schedule/schedule, cancel/schedule and schedule/cancel + * calls. + * + * @param entry Entry to schedule + */ + void scheduleEntry(ExpiringEntry entry) { + if (entry == null || entry.scheduled) + return; + + Runnable runnable = null; + synchronized (entry) { + if (entry.scheduled) + return; + + final WeakReference> entryReference = new WeakReference>(entry); + runnable = new Runnable() { + @Override + public void run() { + ExpiringEntry entry = entryReference.get(); + + writeLock.lock(); + try { + if (entry != null && entry.scheduled) { + entries.remove(entry.key); + notifyListeners(entry); + } + + try { + // Expires entries and schedules the next entry + Iterator> iterator = entries.valuesIterator(); + boolean schedulePending = true; + + while (iterator.hasNext() && schedulePending) { + ExpiringEntry nextEntry = iterator.next(); + if (nextEntry.expectedExpiration.get() <= System.nanoTime()) { + iterator.remove(); + notifyListeners(nextEntry); + } else { + scheduleEntry(nextEntry); + schedulePending = false; + } + } + } catch (NoSuchElementException ignored) { + } + } finally { + writeLock.unlock(); + } + } + }; + + Future entryFuture = EXPIRER.schedule(runnable, entry.expectedExpiration.get() - System.nanoTime(), + TimeUnit.NANOSECONDS); + entry.schedule(entryFuture); + } + } + + private static Map.Entry mapEntryFor(final ExpiringEntry entry) { + return new Map.Entry() { + @Override + public K getKey() { + return entry.key; + } + + @Override + public V getValue() { + return entry.value; + } + + @Override + public V setValue(V value) { + throw new UnsupportedOperationException(); + } + }; + } +} diff --git a/src/net/jodah/expiringmap/ExpiringValue.java b/src/net/jodah/expiringmap/ExpiringValue.java new file mode 100644 index 0000000..9b68fee --- /dev/null +++ b/src/net/jodah/expiringmap/ExpiringValue.java @@ -0,0 +1,122 @@ +package net.jodah.expiringmap; + +import java.util.concurrent.TimeUnit; + +/** + * A value which should be stored in an {@link ExpiringMap} with optional control over its expiration. + * + * @param the type of value being stored + */ +public final class ExpiringValue { + private static final long UNSET_DURATION = -1L; + private final V value; + private final ExpirationPolicy expirationPolicy; + private final long duration; + private final TimeUnit timeUnit; + + /** + * Creates an ExpiringValue to be stored in an {@link ExpiringMap}. The map's default values for + * {@link ExpirationPolicy expiration policy} and {@link ExpiringMap#getExpiration()} expiration} will be used. + * + * @param value the value to store + * @see ExpiringMap#put(Object, Object) + */ + public ExpiringValue(V value) { + this(value, UNSET_DURATION, null, null); + } + + /** + * Creates an ExpiringValue to be stored in an {@link ExpiringMap}. The map's default + * {@link ExpiringMap#getExpiration()} expiration} will be used. + * + * @param value the value to store + * @param expirationPolicy the expiration policy for the value + * @see ExpiringMap#put(Object, Object, ExpirationPolicy) + */ + public ExpiringValue(V value, ExpirationPolicy expirationPolicy) { + this(value, UNSET_DURATION, null, expirationPolicy); + } + + /** + * Creates an ExpiringValue to be stored in an {@link ExpiringMap}. The map's default {@link ExpirationPolicy + * expiration policy} will be used. + * + * @param value the value to store + * @param duration the length of time after an entry is created that it should be removed + * @param timeUnit the unit that {@code duration} is expressed in + * @see ExpiringMap#put(Object, Object, long, TimeUnit) + * @throws NullPointerException on null timeUnit + */ + public ExpiringValue(V value, long duration, TimeUnit timeUnit) { + this(value, duration, timeUnit, null); + if (timeUnit == null) { + throw new NullPointerException(); + } + } + + /** + * Creates an ExpiringValue to be stored in an {@link ExpiringMap}. + * + * @param value the value to store + * @param duration the length of time after an entry is created that it should be removed + * @param timeUnit the unit that {@code duration} is expressed in + * @param expirationPolicy the expiration policy for the value + * @see ExpiringMap#put(Object, Object, ExpirationPolicy, long, TimeUnit) + * @throws NullPointerException on null timeUnit + */ + public ExpiringValue(V value, ExpirationPolicy expirationPolicy, long duration, TimeUnit timeUnit) { + this(value, duration, timeUnit, expirationPolicy); + if (timeUnit == null) { + throw new NullPointerException(); + } + } + + private ExpiringValue(V value, long duration, TimeUnit timeUnit, ExpirationPolicy expirationPolicy) { + this.value = value; + this.expirationPolicy = expirationPolicy; + this.duration = duration; + this.timeUnit = timeUnit; + } + + public V getValue() { + return value; + } + + public ExpirationPolicy getExpirationPolicy() { + return expirationPolicy; + } + + public long getDuration() { + return duration; + } + + public TimeUnit getTimeUnit() { + return timeUnit; + } + + @Override + public int hashCode() { + return value != null ? value.hashCode() : 0; + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + ExpiringValue that = (ExpiringValue) o; + return !(value != null ? !value.equals(that.value) : that.value != null) + && expirationPolicy == that.expirationPolicy && duration == that.duration && timeUnit == that.timeUnit; + + } + + @Override + public String toString() { + return "ExpiringValue{" + "value=" + value + ", expirationPolicy=" + expirationPolicy + ", duration=" + duration + + ", timeUnit=" + timeUnit + '}'; + } +} diff --git a/src/net/jodah/expiringmap/internal/Assert.java b/src/net/jodah/expiringmap/internal/Assert.java new file mode 100644 index 0000000..7c1b1fc --- /dev/null +++ b/src/net/jodah/expiringmap/internal/Assert.java @@ -0,0 +1,32 @@ +package net.jodah.expiringmap.internal; + +import java.util.NoSuchElementException; + +/** + * @author Jonathan Halterman + */ +public final class Assert { + private Assert() { + } + + public static T notNull(T reference, String parameterName) { + if (reference == null) + throw new NullPointerException(parameterName + " cannot be null"); + return reference; + } + + public static void operation(boolean condition, String message) { + if (!condition) + throw new UnsupportedOperationException(message); + } + + public static void state(boolean expression, String errorMessageFormat, Object... args) { + if (!expression) + throw new IllegalStateException(String.format(errorMessageFormat, args)); + } + + public static void element(Object element, Object key) { + if (element == null) + throw new NoSuchElementException(key.toString()); + } +} \ No newline at end of file diff --git a/src/net/jodah/expiringmap/internal/NamedThreadFactory.java b/src/net/jodah/expiringmap/internal/NamedThreadFactory.java new file mode 100644 index 0000000..d266ba7 --- /dev/null +++ b/src/net/jodah/expiringmap/internal/NamedThreadFactory.java @@ -0,0 +1,27 @@ +package net.jodah.expiringmap.internal; + +import java.util.concurrent.ThreadFactory; +import java.util.concurrent.atomic.AtomicInteger; + +/** + * Named thread factory. + */ +public class NamedThreadFactory implements ThreadFactory { + private final AtomicInteger threadNumber = new AtomicInteger(1); + private final String nameFormat; + + /** + * Creates a thread factory that names threads according to the {@code nameFormat} by supplying a + * single argument to the format representing the thread number. + */ + public NamedThreadFactory(String nameFormat) { + this.nameFormat = nameFormat; + } + + @Override + public Thread newThread(Runnable r) { + Thread thread = new Thread(r, String.format(nameFormat, threadNumber.getAndIncrement())); + thread.setDaemon(true); + return thread; + } +} diff --git a/src/notifyz/hardcorefactions/HardcoreFactionsPlugin.java b/src/notifyz/hardcorefactions/HardcoreFactionsPlugin.java new file mode 100644 index 0000000..4b9e70b --- /dev/null +++ b/src/notifyz/hardcorefactions/HardcoreFactionsPlugin.java @@ -0,0 +1,1147 @@ +package notifyz.hardcorefactions; + +import java.io.BufferedReader; +import java.io.File; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URL; +import java.net.URLConnection; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Random; +import java.util.concurrent.TimeUnit; +import java.util.logging.Level; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.Sound; +import org.bukkit.command.PluginCommand; +import org.bukkit.configuration.InvalidConfigurationException; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.configuration.serialization.ConfigurationSerialization; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.ShapelessRecipe; +import org.bukkit.material.MaterialData; +import org.bukkit.plugin.Plugin; +import org.bukkit.plugin.PluginManager; +import org.bukkit.plugin.RegisteredServiceProvider; +import org.bukkit.plugin.java.JavaPlugin; + +import com.sk89q.worldedit.CuboidClipboard; +import com.sk89q.worldedit.EditSession; +import com.sk89q.worldedit.MaxChangedBlocksException; +import com.sk89q.worldedit.bukkit.BukkitUtil; +import com.sk89q.worldedit.bukkit.BukkitWorld; +import com.sk89q.worldedit.bukkit.WorldEditPlugin; +import com.sk89q.worldedit.world.DataException; + +import lombok.Getter; +import lombok.Setter; +import net.milkbowl.vault.chat.Chat; +import net.milkbowl.vault.permission.Permission; +import net.minecraft.util.com.google.common.base.Joiner; +import net.minecraft.util.org.apache.commons.lang3.time.DurationFormatUtils; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.VirtualChestManager; +import notifyz.hardcorefactions.chests.commands.ChestCommand; +import notifyz.hardcorefactions.chests.commands.ClearChestCommand; +import notifyz.hardcorefactions.chests.commands.DisposalCommand; +import notifyz.hardcorefactions.chests.commands.SaveChestsCommand; +import notifyz.hardcorefactions.chests.commands.WorkbenchCommand; +import notifyz.hardcorefactions.chests.listeners.PlayerListener; +import notifyz.hardcorefactions.classes.manager.PvPClassManager; +import notifyz.hardcorefactions.classes.type.bard.utilties.EffectRestorer; +import notifyz.hardcorefactions.combatloggers.CombatLogListener; +import notifyz.hardcorefactions.combatloggers.CustomEntityRegistration; +import notifyz.hardcorefactions.commands.essentials.BackCommand; +import notifyz.hardcorefactions.commands.essentials.BroadcastCommand; +import notifyz.hardcorefactions.commands.essentials.DisableChatCommand; +import notifyz.hardcorefactions.commands.essentials.EnchantCommand; +import notifyz.hardcorefactions.commands.essentials.FeedCommand; +import notifyz.hardcorefactions.commands.essentials.FlyCommand; +import notifyz.hardcorefactions.commands.essentials.FreezeAllCommand; +import notifyz.hardcorefactions.commands.essentials.FreezeCommand; +import notifyz.hardcorefactions.commands.essentials.GamemodeCommand; +import notifyz.hardcorefactions.commands.essentials.GiveCommand; +import notifyz.hardcorefactions.commands.essentials.GiveawayCommand; +import notifyz.hardcorefactions.commands.essentials.GodCommand; +import notifyz.hardcorefactions.commands.essentials.GuiFreezeCommand; +import notifyz.hardcorefactions.commands.essentials.HatCommand; +import notifyz.hardcorefactions.commands.essentials.HealCommand; +import notifyz.hardcorefactions.commands.essentials.HideStaffCommand; +import notifyz.hardcorefactions.commands.essentials.IgnoreCommand; +import notifyz.hardcorefactions.commands.essentials.InvseeCommand; +import notifyz.hardcorefactions.commands.essentials.InvseeOfflineCommand; +import notifyz.hardcorefactions.commands.essentials.KillCommand; +import notifyz.hardcorefactions.commands.essentials.LagCommand; +import notifyz.hardcorefactions.commands.essentials.ListCommand; +import notifyz.hardcorefactions.commands.essentials.MessageCommand; +import notifyz.hardcorefactions.commands.essentials.MessageSpyCommand; +import notifyz.hardcorefactions.commands.essentials.MoreItemsCommand; +import notifyz.hardcorefactions.commands.essentials.NewVideoCommand; +import notifyz.hardcorefactions.commands.essentials.RecCommand; +import notifyz.hardcorefactions.commands.essentials.RemovePermCommand; +import notifyz.hardcorefactions.commands.essentials.RenameCommand; +import notifyz.hardcorefactions.commands.essentials.ReplyCommand; +import notifyz.hardcorefactions.commands.essentials.ServerTimeCommand; +import notifyz.hardcorefactions.commands.essentials.SetBorderCommand; +import notifyz.hardcorefactions.commands.essentials.SettingsCommand; +import notifyz.hardcorefactions.commands.essentials.SlowchatCommand; +import notifyz.hardcorefactions.commands.essentials.SpawnCommand; +import notifyz.hardcorefactions.commands.essentials.SpawnerCommand; +import notifyz.hardcorefactions.commands.essentials.SpeedCommand; +import notifyz.hardcorefactions.commands.essentials.StaffChatCommand; +import notifyz.hardcorefactions.commands.essentials.StatsCommand; +import notifyz.hardcorefactions.commands.essentials.TeleportCommand; +import notifyz.hardcorefactions.commands.essentials.ToggleChatCommand; +import notifyz.hardcorefactions.commands.essentials.ToggleMessagesCommand; +import notifyz.hardcorefactions.commands.essentials.ToggleSoundsCommand; +import notifyz.hardcorefactions.commands.essentials.TopCommand; +import notifyz.hardcorefactions.commands.essentials.UptimeCommand; +import notifyz.hardcorefactions.commands.essentials.VanishCommand; +import notifyz.hardcorefactions.commands.essentials.WorldCommand; +import notifyz.hardcorefactions.commands.hcf.BardEnergyCommand; +import notifyz.hardcorefactions.commands.hcf.CobbleCommand; +import notifyz.hardcorefactions.commands.hcf.CrowbarCommand; +import notifyz.hardcorefactions.commands.hcf.EOTWCommand; +import notifyz.hardcorefactions.commands.hcf.EOTWReviveCommand; +import notifyz.hardcorefactions.commands.hcf.EconomyCommand; +import notifyz.hardcorefactions.commands.hcf.EndPortalCommand; +import notifyz.hardcorefactions.commands.hcf.FFACommand; +import notifyz.hardcorefactions.commands.hcf.FocusCommand; +import notifyz.hardcorefactions.commands.hcf.InfoCommand; +import notifyz.hardcorefactions.commands.hcf.KitMapGUICommand; +import notifyz.hardcorefactions.commands.hcf.LFFCommand; +import notifyz.hardcorefactions.commands.hcf.LocationCommand; +import notifyz.hardcorefactions.commands.hcf.LogoutCommand; +import notifyz.hardcorefactions.commands.hcf.MapKitCommand; +import notifyz.hardcorefactions.commands.hcf.MobDropsCommand; +import notifyz.hardcorefactions.commands.hcf.PanicCommand; +import notifyz.hardcorefactions.commands.hcf.PayCommand; +import notifyz.hardcorefactions.commands.hcf.PlayTimeCommand; +import notifyz.hardcorefactions.commands.hcf.PvPTimerCommand; +import notifyz.hardcorefactions.commands.hcf.RebootCommand; +import notifyz.hardcorefactions.commands.hcf.ReclaimCommand; +import notifyz.hardcorefactions.commands.hcf.ReclaimResetCommand; +import notifyz.hardcorefactions.commands.hcf.RegenCommand; +import notifyz.hardcorefactions.commands.hcf.RestoreInventoryCommand; +import notifyz.hardcorefactions.commands.hcf.SOTWCommand; +import notifyz.hardcorefactions.commands.hcf.SaleCommand; +import notifyz.hardcorefactions.commands.hcf.SetCommand; +import notifyz.hardcorefactions.commands.hcf.SpawnCannonCommand; +import notifyz.hardcorefactions.commands.hcf.StaffModeCommand; +import notifyz.hardcorefactions.commands.hcf.StaffReviveCommand; +import notifyz.hardcorefactions.commands.hcf.TeamCoordinatesCommand; +import notifyz.hardcorefactions.commands.hcf.ToggleCapzoneEntryCommand; +import notifyz.hardcorefactions.commands.hcf.ToggleDiamondAlertsCommand; +import notifyz.hardcorefactions.commands.hcf.ToggleLightningCommand; +import notifyz.hardcorefactions.commands.hcf.ToggleSidebarCommand; +import notifyz.hardcorefactions.commands.help.CoordinatesCommand; +import notifyz.hardcorefactions.commands.help.FamousCommand; +import notifyz.hardcorefactions.commands.help.HelpCommand; +import notifyz.hardcorefactions.commands.help.ReportCommand; +import notifyz.hardcorefactions.commands.help.RequestCommand; +import notifyz.hardcorefactions.commands.help.StoreCommand; +import notifyz.hardcorefactions.commands.help.TeamSpeakCommand; +import notifyz.hardcorefactions.commands.help.WebsiteCommand; +import notifyz.hardcorefactions.commands.help.YoutubeCommand; +import notifyz.hardcorefactions.commands.revive.Revive1; +import notifyz.hardcorefactions.commands.revive.Revive2; +import notifyz.hardcorefactions.commands.revive.ReviveHandler; +import notifyz.hardcorefactions.commands.warp.WarpExecutor; +import notifyz.hardcorefactions.commands.warp.utilities.FlatFileWarpManager; +import notifyz.hardcorefactions.commands.warp.utilities.Warp; +import notifyz.hardcorefactions.commands.warp.utilities.WarpManager; +import notifyz.hardcorefactions.deathban.Deathban; +import notifyz.hardcorefactions.deathban.lives.LivesExecutor; +import notifyz.hardcorefactions.deathban.managers.DeathbanFile; +import notifyz.hardcorefactions.deathban.managers.DeathbanManager; +import notifyz.hardcorefactions.economy.Economy; +import notifyz.hardcorefactions.economy.manager.EconomyFile; +import notifyz.hardcorefactions.games.EventExecutor; +import notifyz.hardcorefactions.games.conquest.ConquestExecutor; +import notifyz.hardcorefactions.games.endevent.EndEventCommand; +import notifyz.hardcorefactions.games.endevent.EndEventHandler; +import notifyz.hardcorefactions.games.eotw.EOTWHandler; +import notifyz.hardcorefactions.games.fury.FuryExecutor; +import notifyz.hardcorefactions.games.key.KeyListener; +import notifyz.hardcorefactions.games.key.KeyManager; +import notifyz.hardcorefactions.games.key.LootExecutor; +import notifyz.hardcorefactions.games.key.RewardableItemStack; +import notifyz.hardcorefactions.games.koth.KothExecutor; +import notifyz.hardcorefactions.games.mountain.GlowstoneMountainCommand; +import notifyz.hardcorefactions.games.skygear.SkyGearCommand; +import notifyz.hardcorefactions.games.skygear.listeners.SkyGearListener; +import notifyz.hardcorefactions.games.sotw.SOTWHandler; +import notifyz.hardcorefactions.games.utilities.capturezone.CaptureZone; +import notifyz.hardcorefactions.games.utilities.scheduler.EventScheduler2; +import notifyz.hardcorefactions.games.utilities.scheduler.IEventScheduler; +import notifyz.hardcorefactions.kit.FlatFileKitManager; +import notifyz.hardcorefactions.kit.Kit; +import notifyz.hardcorefactions.kit.KitExecutor; +import notifyz.hardcorefactions.kit.KitListener; +import notifyz.hardcorefactions.kit.KitManager; +import notifyz.hardcorefactions.listeners.CoreListener; +import notifyz.hardcorefactions.listeners.claim.ClaimWandListener; +import notifyz.hardcorefactions.listeners.claim.SubclaimWandListener; +import notifyz.hardcorefactions.listeners.essentials.AutoMuteListener; +import notifyz.hardcorefactions.listeners.essentials.BreedListener; +import notifyz.hardcorefactions.listeners.essentials.ChatListener; +import notifyz.hardcorefactions.listeners.essentials.FreezeAllListener; +import notifyz.hardcorefactions.listeners.essentials.FreezeListener; +import notifyz.hardcorefactions.listeners.essentials.FurnaceSmeltSpeederListener; +import notifyz.hardcorefactions.listeners.essentials.PlayTimeListener; +import notifyz.hardcorefactions.listeners.essentials.RestoreInventoryListener; +import notifyz.hardcorefactions.listeners.essentials.SkullListener; +import notifyz.hardcorefactions.listeners.essentials.StaffChatListener; +import notifyz.hardcorefactions.listeners.essentials.WhitelistMessageListener; +import notifyz.hardcorefactions.listeners.hcf.AnvilSpamListener; +import notifyz.hardcorefactions.listeners.hcf.BedBombingListener; +import notifyz.hardcorefactions.listeners.hcf.BookDeenchantListener; +import notifyz.hardcorefactions.listeners.hcf.BorderListener; +import notifyz.hardcorefactions.listeners.hcf.BottledExpListener; +import notifyz.hardcorefactions.listeners.hcf.CobwebListener; +import notifyz.hardcorefactions.listeners.hcf.ColorSignListener; +import notifyz.hardcorefactions.listeners.hcf.CrowbarListener; +import notifyz.hardcorefactions.listeners.hcf.DeathListener; +import notifyz.hardcorefactions.listeners.hcf.DeathMessageListener; +import notifyz.hardcorefactions.listeners.hcf.DeathSignListener; +import notifyz.hardcorefactions.listeners.hcf.DeathbanListener; +import notifyz.hardcorefactions.listeners.hcf.EOTWListener; +import notifyz.hardcorefactions.listeners.hcf.ElevatorListener; +import notifyz.hardcorefactions.listeners.hcf.EnchantLimitListener; +import notifyz.hardcorefactions.listeners.hcf.EntityLimitListener; +import notifyz.hardcorefactions.listeners.hcf.EventSignListener; +import notifyz.hardcorefactions.listeners.hcf.ExpMultiplierListener; +import notifyz.hardcorefactions.listeners.hcf.FoundDiamondListener; +import notifyz.hardcorefactions.listeners.hcf.ItemStatTrackingListener; +import notifyz.hardcorefactions.listeners.hcf.KillStreaks; +import notifyz.hardcorefactions.listeners.hcf.KillstreakListener; +import notifyz.hardcorefactions.listeners.hcf.KitMapKitsListener; +import notifyz.hardcorefactions.listeners.hcf.KitMapListener; +import notifyz.hardcorefactions.listeners.hcf.MinecartElevatorListener; +import notifyz.hardcorefactions.listeners.hcf.PickaxeStatsListener; +import notifyz.hardcorefactions.listeners.hcf.PortalListener; +import notifyz.hardcorefactions.listeners.hcf.PotionLimitListener; +import notifyz.hardcorefactions.listeners.hcf.ProtectionListener; +import notifyz.hardcorefactions.listeners.hcf.SOTWListener; +import notifyz.hardcorefactions.listeners.hcf.ShopListener; +import notifyz.hardcorefactions.listeners.hcf.StaffModeListener; +import notifyz.hardcorefactions.listeners.hcf.Strength2Listener; +import notifyz.hardcorefactions.listeners.hcf.StrengthListener; +import notifyz.hardcorefactions.listeners.hcf.SubclaimListener; +import notifyz.hardcorefactions.listeners.hcf.TeamListener; +import notifyz.hardcorefactions.listeners.hcf.ThrowableCobwebsListener; +import notifyz.hardcorefactions.listeners.hcf.WorldListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.ArmorFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.BeaconStrengthFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.BlockHitFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.BoatGlitchFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.CrashFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.DuplicationGlitchListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.EnderChestRemovalListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.HungerFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.InfinityArrowFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.MobFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.PearlGlitchListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.SplashPotionListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.SugarCaneFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.VoidGlitchFixListener; +import notifyz.hardcorefactions.listeners.hcf.fixes.WeatherFixListener; +import notifyz.hardcorefactions.scoreboard.provider.PvPClassHolder; +import notifyz.hardcorefactions.scoreboard.timer.TimerExecutor; +import notifyz.hardcorefactions.scoreboard.timer.TimerManager; +import notifyz.hardcorefactions.scoreboard.timer.utilities.type.ClassWarmupTimer; +import notifyz.hardcorefactions.scoreboard.utilities.ScoreboardHandler; +import notifyz.hardcorefactions.scoreboard.utilities.SidebarFiller; +import notifyz.hardcorefactions.team.TeamManager; +import notifyz.hardcorefactions.team.claim.Claim; +import notifyz.hardcorefactions.team.claim.subclaim.Subclaim; +import notifyz.hardcorefactions.team.claim.team.ClaimManager; +import notifyz.hardcorefactions.team.commands.TeamExecutor; +import notifyz.hardcorefactions.team.type.ClaimableTeam; +import notifyz.hardcorefactions.team.type.PlayerTeam; +import notifyz.hardcorefactions.team.type.system.CapturableFaction; +import notifyz.hardcorefactions.team.type.system.ConquestFaction; +import notifyz.hardcorefactions.team.type.system.EndPortalFaction; +import notifyz.hardcorefactions.team.type.system.FuryFaction; +import notifyz.hardcorefactions.team.type.system.GlowstoneMountainFaction; +import notifyz.hardcorefactions.team.type.system.KothFaction; +import notifyz.hardcorefactions.team.type.system.RoadFaction; +import notifyz.hardcorefactions.team.type.system.SpawnFaction; +import notifyz.hardcorefactions.team.utilities.ITeam; +import notifyz.hardcorefactions.team.utilities.TeamFile; +import notifyz.hardcorefactions.team.utilities.TeamMember; +import notifyz.hardcorefactions.team.utilities.TeamUser; +import notifyz.hardcorefactions.utilities.Configuration; +import notifyz.hardcorefactions.utilities.api.IPluginAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.Color; +import notifyz.hardcorefactions.utilities.chat.Cooldowns; +import notifyz.hardcorefactions.utilities.freeze.FrozenInventory; +import notifyz.hardcorefactions.utilities.freeze.FrozenManager; +import notifyz.hardcorefactions.utilities.inventory.item.ItemDB; +import notifyz.hardcorefactions.utilities.inventory.restoration.InventoryManager; +import notifyz.hardcorefactions.utilities.inventory.restoration.RestoreManager; +import notifyz.hardcorefactions.utilities.user.IUser; +import notifyz.hardcorefactions.utilities.user.IUserManager; +import notifyz.hardcorefactions.utilities.user.UserManager; +import notifyz.hardcorefactions.utilities.utils.DataHandler; +import notifyz.hardcorefactions.utilities.utils.DateTimeFormats; +import notifyz.hardcorefactions.utilities.utils.ServerHandler; +import notifyz.hardcorefactions.utilities.utils.SignHandler; +import notifyz.hardcorefactions.utilities.visualise.ProtocolLibHook; +import notifyz.hardcorefactions.utilities.visualise.VisualiseHandler; +import notifyz.hardcorefactions.utilities.visualise.WallBorderListener; + +public class HardcoreFactionsPlugin extends JavaPlugin { + + @Getter public static HardcoreFactionsPlugin instance; + + @Getter + @Setter + private PvPClassHolder pvpClassHolder = uuid -> null; + + @Getter + private List postFillers = new ArrayList<>(); + + @Getter + private static HardcoreFactionsPlugin plugin; + + @Getter + private Random random = new Random(); + + @Getter + private EffectRestorer effectRestorer; + + @Getter + private PvPClassManager PvPClassManager; + + @Getter + private ClassWarmupTimer pvpClassWarmupTimer; + + @Getter + private Configuration configuration; + + @Getter + private ClaimManager claimHandler; + + @Getter + private CombatLogListener combatLogListener; + + @Getter + private DeathbanManager deathbanManager; + + @Getter + private Economy economyManager; + + @Getter + public PlayTimeListener playTimeManager; + + @Getter + private EOTWHandler eotwHandler; + + @Getter + private FreezeListener freezeListener; + + @Getter + private TeamManager factionManager; + + + @Getter + private IEventScheduler eventScheduler; + + @Getter + private ScoreboardHandler scoreboardHandler; + + @Getter + private SOTWHandler sotwTimer; + + @Getter + private TimerManager timerManager; + + @Getter + private UserManager userManager; + + @Getter + private VisualiseHandler visualiseHandler; + + @Getter + private StaffModeListener staffModeListener; + + @Getter + private WorldEditPlugin worldEdit; + + @Getter + private boolean paperPatch; + + private boolean configurationLoaded = true; + + @Getter + private ItemDB itemDb; + + @Getter + private IPluginAPI basePlugin; + + @Getter + private SignHandler signHandler; + + @Getter + private KitManager kitManager; + + @Getter + private KitExecutor kitExecutor; + + @Getter + private VirtualChestManager chestManager; + + @Getter + private EndEventHandler endEventHandler; + + @Getter + private FreezeAllListener freezeAllListener; + + @Getter + private InventoryManager restoreInventoryManager; + + @Getter + private RestoreManager restoreManager; + + @Getter + private ReviveHandler reviveHandler; + + public static Joiner SPACE_JOINER = Joiner.on(' '); + public static Joiner COMMA_JOINER = Joiner.on(", "); + private static long MINUTE = TimeUnit.MINUTES.toMillis(1); + private static long HOUR = TimeUnit.HOURS.toMillis(1); + private static int spamCooldown; + private static HashMap database; + public List donators = new ArrayList<>(); + public static List killStreaks = new ArrayList<>(); + private FrozenInventory inventoryManager; + private FrozenManager frozenManager; + private DataHandler dataHandler; + private WarpManager warpManager; + private ServerHandler serverHandler; + public IUserManager userManagerr; + private YamlConfiguration reclaimConfig; + private YamlConfiguration reclaimSettingsConfig; + private KeyManager keyManager; + public Chat chat = null; + public Permission permission = null; + + public File reclaimFile = new File(this.getDataFolder(), "reclaims.yml"); + public File reclaimSettingsFile = new File(this.getDataFolder(), "reclaimsettings.yml"); + + public static String getRemaining(long millis, boolean milliseconds) { + return HardcoreFactionsPlugin.getRemaining(millis, milliseconds, true); + } + + public static String getRemaining(long duration, boolean milliseconds, boolean trail) { + if (milliseconds && duration < MINUTE) { + return (trail ? DateTimeFormats.REMAINING_SECONDS_TRAILING : DateTimeFormats.REMAINING_SECONDS).get().format(duration * 0.001) + 's'; + } + return DurationFormatUtils.formatDuration(duration, (duration >= HOUR ? "HH:" : "") + "mm:ss"); + } + + private void registerManagersBase() { + this.basePlugin = IPluginAPI.getPlugin(); + this.basePlugin.init(this); + this.signHandler = this.basePlugin.getSignHandler(); + this.itemDb = IPluginAPI.getPlugin().getItemDb(); + } + + private boolean setupChat() { + RegisteredServiceProvider chatProvider = Bukkit.getServicesManager().getRegistration(Chat.class); + if (chatProvider != null) { + chat = chatProvider.getProvider(); + } + + return (chat != null); + } + + private boolean setupPermission() { + RegisteredServiceProvider permissionProvider = Bukkit.getServicesManager().getRegistration(Permission.class); + if (permissionProvider != null) { + permission = permissionProvider.getProvider(); + } + + return (permission != null); + } + + @Override + public void onEnable() { + instance = this; + + setupChat(); + setupPermission(); + + File chestFolder = new File(getDataFolder(), "chests"); + chestManager = new VirtualChestManager(chestFolder, getLogger()); + new Teller(this); + int autosaveInterval = getConfig().getInt("chest-configuration.autosave") * 1200; + + if (autosaveInterval > 0) { + getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { + @Override + public void run() { + int savedChests = chestManager.save(); + + if (savedChests > 0 && !getConfig().getBoolean("chest-configuration.silentAutosave")) { + } + } + }, autosaveInterval, autosaveInterval); + } + + registerSerialization(); + registerConfiguration(); + registerManagersBase(); + getConfig().options().copyDefaults(true); + saveConfig(); + if (!configurationLoaded) { + getLogger().severe("Disabling plugin.."); + setEnabled(false); + return; + } + + this.getConfig().set("chat.spam-cooldown", 5); + this.saveConfig(); + HardcoreFactionsPlugin.spamCooldown = this.getConfig().getInt("chat.spam-cooldown"); + HardcoreFactionsPlugin.spamCooldown = ((HardcoreFactionsPlugin.spamCooldown <= 0) ? 5 : HardcoreFactionsPlugin.spamCooldown); + + this.dataHandler = new DataHandler(this); + this.inventoryManager = new FrozenInventory(this); + this.frozenManager = new FrozenManager(); + + CustomEntityRegistration.registerCustomEntities(); + + HardcoreFactionsPlugin.plugin = this; + DateTimeFormats.reload(configuration.getServerTimeZone()); // Initialise the static fields. + /////////////////////////// + Plugin wep = getServer().getPluginManager().getPlugin("WorldEdit"); // Initialise WorldEdit hook. + worldEdit = wep instanceof WorldEditPlugin && wep.isEnabled() ? (WorldEditPlugin) wep : null; + try { + if(!reclaimFile.exists()) + reclaimFile.createNewFile(); + if(!reclaimSettingsFile.exists()) { + saveResource("reclaimsettings.yml", false); + } + } catch (Exception e) { + e.printStackTrace(); + } + reclaimConfig = YamlConfiguration.loadConfiguration(reclaimFile); + reclaimSettingsConfig = YamlConfiguration.loadConfiguration(reclaimSettingsFile); + ShapelessRecipe recipe = new ShapelessRecipe(new ItemStack(Material.SPECKLED_MELON, 1)); + recipe.addIngredient(1, new MaterialData(Material.GOLD_NUGGET)); + recipe.addIngredient(1, new MaterialData(Material.MELON)); + getServer().addRecipe(recipe); + registerEnableMessage(); + registerCommands(); + registerManagers(); + registerListeners(); + registerCooldowns(); + setLocation(); + saveAll(); + + for (String item : plugin.getConfig().getConfigurationSection("killstreaks.items").getKeys(false)) { + String name = plugin.getConfig().getString("killstreaks.items." + item + ".name"); + int kills = plugin.getConfig().getInt("killstreaks.items." + item + ".kills"); + String command = plugin.getConfig().getString("killstreaks.items." + item + ".command"); + KillStreaks killsAdd = new KillStreaks(name, kills, command); + killStreaks.add(killsAdd); + } + paperPatch = true; + + //TODO: More reliable, SQL based. + long dataSaveInterval = TimeUnit.MINUTES.toMillis(10L); + getServer().getScheduler().scheduleSyncRepeatingTask(this, this::saveData, dataSaveInterval, dataSaveInterval); + Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "save-all"); + getServer().broadcast(ChatColor.RED.toString() + ChatColor.BOLD + "Saving!" + "\n" + ChatColor.RED + "Saved all teams and player data to the database.", "hcf.seesaves"); + + ProtocolLibHook.hook(this); // Initialise ProtocolLib hook. + +// new BukkitRunnable() { +// @Override +// public void run() { +// Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "save-all"); +// getServer().broadcast(ChatColor.RED.toString() + ChatColor.BOLD + "Saving!" + "\n" + ChatColor.RED + "Saved all teams and player data to the database.", "hcf.seesaves"); +// saveData(); +// } +// }.runTaskTimerAsynchronously(this, TimeUnit.MINUTES.toMillis(3L), TimeUnit.MINUTES.toMillis(3L)); + } + + + + +private void registerEnableMessage() { + long timeMillis = System.currentTimeMillis(); + Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + BukkitUtils.STRAIGHT_LINE_DEFAULT); + Bukkit.getConsoleSender().sendMessage(""); + Bukkit.getConsoleSender().sendMessage(Color.translate("&a[HardcoreFactions] Plugin loaded in &f" + (System.currentTimeMillis() - timeMillis) + "ms.")); + Bukkit.getConsoleSender().sendMessage(Color.translate("&aVersion: &fv" + HardcoreFactionsPlugin.getPlugin().getDescription().getVersion())); + Bukkit.getConsoleSender().sendMessage(""); + Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + BukkitUtils.STRAIGHT_LINE_DEFAULT); +} + + + + + +private void saveAll() { + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("auto-save.enabled")) { + Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { + @Override + public void run() { + saveData(); + Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), HardcoreFactionsPlugin.getInstance().getConfig().getString("auto-save.command")); + getServer().broadcastMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("auto-save.message"))); + } + }, 0L, 18000L); + } +} + + + + + +private void registerCooldowns() { + Cooldowns.createCooldown("Revive1"); + Cooldowns.createCooldown("Revive2"); + Cooldowns.createCooldown("report_cooldown"); + Cooldowns.createCooldown("request_cooldown"); + Cooldowns.createCooldown("rename_cooldown"); + Cooldowns.createCooldown("spawntoken"); + Cooldowns.createCooldown("endportaltoken"); + Cooldowns.createCooldown("Assassin_item_cooldown"); + Cooldowns.createCooldown("Cobwebs"); +} + + + + + +private void saveData() { + keyManager.saveKeyData(); + deathbanManager.saveDeathbanData(); + economyManager.saveEconomyData(); + factionManager.saveFactionData(); + timerManager.saveTimerData(); + userManager.saveUserData(); + warpManager.saveWarpData(); + playTimeManager.savePlaytimeData(); + serverHandler.saveServerData(); + userManagerr.saveParticipatorData(); + chestManager.save(); + kitManager.saveKitData(); +} + + + + + +@Override +public void onDisable() { + //kitManager.saveKitData(); + //chestManager.save(); + HardcoreFactionsPlugin.plugin = this; + if (!configurationLoaded) { + // Ignore everything. + return; + } + + try { + String configFileName = "config.cdl"; + configuration.save(new File(getDataFolder(), configFileName), + HardcoreFactionsPlugin.class.getResource("/" + configFileName)); + } catch (IOException | InvalidConfigurationException ex) { + getLogger().warning("Unable to save config."); + ex.printStackTrace(); + } + scoreboardHandler.clearBoards(); + PvPClassManager.onDisable(); + + CustomEntityRegistration.unregisterCustomEntities(); + + saveData(); + basePlugin.disable(); + basePlugin = null; + HardcoreFactionsPlugin.plugin = null; // Always uninitialise last. + instance = null; +} + + + + + +private void registerConfiguration() { + configuration = new Configuration(); + try { + String configFileName = "config.cdl"; + File file = new File(getDataFolder(), configFileName); + if (!file.exists()) { + saveResource(configFileName, false); + } + + configuration.load(file, HardcoreFactionsPlugin.class.getResource("/" + configFileName)); + configuration.updateFields(this); + } catch (IOException | InvalidConfigurationException ex) { + getLogger().log(Level.SEVERE, "Failed to load configuration", ex); + configurationLoaded = false; + } +} + + + + + +//TODO: More reliable, SQL based. +private void registerSerialization() { + ConfigurationSerialization.registerClass(Kit.class); + ConfigurationSerialization.registerClass(Warp.class); + ConfigurationSerialization.registerClass(CaptureZone.class); + ConfigurationSerialization.registerClass(Deathban.class); + ConfigurationSerialization.registerClass(Claim.class); + ConfigurationSerialization.registerClass(Subclaim.class); + ConfigurationSerialization.registerClass(Deathban.class); + ConfigurationSerialization.registerClass(TeamUser.class); + ConfigurationSerialization.registerClass(ClaimableTeam.class); + ConfigurationSerialization.registerClass(ConquestFaction.class); + ConfigurationSerialization.registerClass(FuryFaction.class); + ConfigurationSerialization.registerClass(CapturableFaction.class); + ConfigurationSerialization.registerClass(KothFaction.class); + ConfigurationSerialization.registerClass(EndPortalFaction.class); + ConfigurationSerialization.registerClass(ITeam.class); + ConfigurationSerialization.registerClass(TeamMember.class); + ConfigurationSerialization.registerClass(PlayerTeam.class); + ConfigurationSerialization.registerClass(RoadFaction.class); + ConfigurationSerialization.registerClass(SpawnFaction.class); + ConfigurationSerialization.registerClass(GlowstoneMountainFaction.class); + ConfigurationSerialization.registerClass(RoadFaction.NorthRoadFaction.class); + ConfigurationSerialization.registerClass(RoadFaction.EastRoadFaction.class); + ConfigurationSerialization.registerClass(RoadFaction.SouthRoadFaction.class); + ConfigurationSerialization.registerClass(RoadFaction.WestRoadFaction.class); + ConfigurationSerialization.registerClass(RewardableItemStack.class); + ConfigurationSerialization.registerClass(IUser.class); +} + + + + + +private void registerListeners() { + PluginManager manager = getServer().getPluginManager(); + + freezeListener = new FreezeListener(); + Bukkit.getServer().getPluginManager().registerEvents(freezeListener, this); + if (plugin.getConfig().getBoolean("staffmode.enabled")) { + staffModeListener = new StaffModeListener(); + freezeAllListener = new FreezeAllListener(this); + Bukkit.getServer().getPluginManager().registerEvents(staffModeListener, this); + } + manager.registerEvents(this.playTimeManager = new PlayTimeListener(this), this); + manager.registerEvents(new WhitelistMessageListener(), this); + manager.registerEvents(new BottledExpListener(this), this); + manager.registerEvents(new FoundDiamondListener(), this); + manager.registerEvents(new BlockHitFixListener(), this); +if (plugin.getConfig().getBoolean("staffmode.enabled")) { + manager.registerEvents(new StaffChatListener(), this); +} + manager.registerEvents(new WeatherFixListener(), this); + manager.registerEvents(new DuplicationGlitchListener(), this); + manager.registerEvents(new BoatGlitchFixListener(this), this); + manager.registerEvents(new ColorSignListener(), this); + manager.registerEvents(new BookDeenchantListener(this), this); + manager.registerEvents(new ChatListener(this), this); + manager.registerEvents(new ClaimWandListener(this), this); + manager.registerEvents(new CombatLogListener(this), this); + manager.registerEvents(new CoreListener(this), this); + manager.registerEvents(new CrowbarListener(this), this); + manager.registerEvents(new DeathListener(this), this); + manager.registerEvents(new BreedListener(), this); + manager.registerEvents(new CrashFixListener(), this); + manager.registerEvents(new SugarCaneFixListener(), this); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("deathmessages.enabled")) { + manager.registerEvents(new DeathMessageListener(this), this); + } + new DeathSignListener(this); + manager.registerEvents(new DeathbanListener(this), this); + manager.registerEvents(new EnchantLimitListener(this), this); + manager.registerEvents(new BedBombingListener(), this); + manager.registerEvents(new ArmorFixListener(), this); + manager.registerEvents(new EnderChestRemovalListener(this), this); + manager.registerEvents(new EntityLimitListener(this), this); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("faction-utilities.elevators.sign.enabled")) { + manager.registerEvents(new ElevatorListener(), this); + } + manager.registerEvents(new EOTWListener(this), this); + manager.registerEvents(new EventSignListener(), this); + manager.registerEvents(new ExpMultiplierListener(this), this); + manager.registerEvents(new TeamListener(this), this); + manager.registerEvents(new FurnaceSmeltSpeederListener(this), this); + manager.registerEvents(new InfinityArrowFixListener(this), this); + manager.registerEvents(new KitMapListener(this), this); + manager.registerEvents(new PearlGlitchListener(this), this); + manager.registerEvents(new PortalListener(this), this); + manager.registerEvents(new PotionLimitListener(this), this); + manager.registerEvents(new ProtectionListener(this), this); + manager.registerEvents(new SubclaimWandListener(this), this); + manager.registerEvents(new SubclaimListener(this), this); + manager.registerEvents(new ShopListener(this), this); + manager.registerEvents(new SkullListener(this), this); + manager.registerEvents(new SOTWListener(this), this); + manager.registerEvents(new BeaconStrengthFixListener(this), this); + //manager.registerEvents(new ArcherBeaconSpeedFixListener(this), this); + manager.registerEvents(new VoidGlitchFixListener(), this); + manager.registerEvents(new WallBorderListener(this), this); + manager.registerEvents(new WorldListener(), this); + manager.registerEvents(new MobFixListener(), this); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("faction-utilities.elevators.minecart.enabled")) { + manager.registerEvents(new MinecartElevatorListener(), this); + } + manager.registerEvents(new AutoMuteListener(), this); + manager.registerEvents(new CobwebListener(this), this); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("anvil-spam-fixer.enabled")) { + manager.registerEvents(new AnvilSpamListener(this), this); + } + manager.registerEvents(new HungerFixListener(this), this); + manager.registerEvents(new StrengthListener(), this); + manager.registerEvents(new Strength2Listener(this), this); + manager.registerEvents(new PickaxeStatsListener(), this); + //manager.registerEvents(new EventListener(this), this); + //manager.registerEvents(new AnvilDupeFixListener(this), this); + manager.registerEvents(new CobbleCommand(), this); + manager.registerEvents(new MobDropsCommand(), this); + manager.registerEvents(new SettingsCommand(this), this); + manager.registerEvents(new EndPortalCommand(this), this); + manager.registerEvents(new StatsCommand(), this); + manager.registerEvents(new GiveawayCommand(), this); + manager.registerEvents(new GuiFreezeCommand(this), this); + manager.registerEvents(new ItemStatTrackingListener(), this); + manager.registerEvents(new KitListener(this), this); + manager.registerEvents(new PlayerListener(this, chestManager), this); + manager.registerEvents(new SplashPotionListener(this), this); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("killstreaks.enabled")) { + manager.registerEvents(new KillstreakListener(this), this); + } + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("skygear.enabled")) { + manager.registerEvents(new SkyGearListener(), this); + } + manager.registerEvents(new BorderListener(), this); + manager.registerEvents(new ThrowableCobwebsListener(), this); + if (plugin.getConfig().getBoolean("kitmap-selector.enabled")) { + manager.registerEvents(new KitMapKitsListener(this), this); + } + manager.registerEvents(this.endEventHandler, this); + manager.registerEvents(new RestoreInventoryListener(this), this); + //manager.registerEvents(new PearlThroughListener(), this); + //manager.registerEvents(new PickaxeStatisticsListener(), this); + //manager.registerEvents(new MobstackListener(this), this); +} + + + + +private void registerCommands() { + getCommand("kit").setExecutor(new KitExecutor(this)); + getCommand("restoreinventory").setExecutor(new RestoreInventoryCommand(this)); + getCommand("sale").setExecutor(new SaleCommand(this)); + getCommand("reboot").setExecutor(new RebootCommand(this)); + getCommand("oinvsee").setExecutor(new InvseeOfflineCommand()); + getCommand("ffa").setExecutor(new FFACommand()); + getCommand("freezeall").setExecutor(new FreezeAllCommand(this)); + getCommand("famous").setExecutor(new FamousCommand()); + getCommand("youtube").setExecutor(new YoutubeCommand()); + getCommand("store").setExecutor(new StoreCommand(this)); + getCommand("website").setExecutor(new WebsiteCommand(this)); + getCommand("teamspeak").setExecutor(new TeamSpeakCommand()); + getCommand("removeperm").setExecutor(new RemovePermCommand()); +if (plugin.getConfig().getBoolean("staffmode.enabled")) { + getCommand("staffmode").setExecutor(new StaffModeCommand()); +} + getCommand("info").setExecutor(new InfoCommand()); + getCommand("focus").setExecutor(new FocusCommand()); +if (plugin.getConfig().getBoolean("staffmode.enabled")) { + getCommand("staffchat").setExecutor(new StaffChatCommand()); +} + getCommand("conquest").setExecutor(new ConquestExecutor(this)); + getCommand("fury").setExecutor(new FuryExecutor(this)); + getCommand("economy").setExecutor(new EconomyCommand(this)); + getCommand("rec").setExecutor(new RecCommand()); + getCommand("coords").setExecutor(new CoordinatesCommand()); + getCommand("freeze").setExecutor(new FreezeCommand()); + getCommand("playtime").setExecutor(new PlayTimeCommand()); + getCommand("endportal").setExecutor(new EndPortalCommand(this)); + getCommand("settings").setExecutor(new SettingsCommand(this)); + getCommand("spawn").setExecutor(new SpawnCommand()); + getCommand("eotw").setExecutor(new EOTWCommand(this)); + getCommand("help").setExecutor(new HelpCommand()); + getCommand("event").setExecutor(new EventExecutor(this)); + if (plugin.getConfig().getBoolean("kitmap-gui.enabled")) { + getCommand("mapkit").setExecutor(new KitMapGUICommand()); + } else { + getCommand("mapkit").setExecutor(new MapKitCommand()); + } + getCommand("newvideo").setExecutor(new NewVideoCommand()); + getCommand("cobble").setExecutor(new CobbleCommand()); + getCommand("platinum").setExecutor(new Revive1(this)); + getCommand("spawner").setExecutor(new SpawnerCommand()); + getCommand("gold").setExecutor(new Revive2(this)); + getCommand("team").setExecutor(new TeamExecutor(this)); + getCommand("vanish").setExecutor(new VanishCommand()); + getCommand("koth").setExecutor(new KothExecutor(this)); + getCommand("lives").setExecutor(new LivesExecutor(this)); + getCommand("location").setExecutor(new LocationCommand(this)); + getCommand("set").setExecutor(new SetCommand()); + getCommand("logout").setExecutor(new LogoutCommand(this)); + getCommand("lff").setExecutor(new LFFCommand()); + getCommand("giveaway").setExecutor(new GiveawayCommand()); + getCommand("pay").setExecutor(new PayCommand(this)); + getCommand("pvptimer").setExecutor(new PvPTimerCommand(this)); + getCommand("regen").setExecutor(new RegenCommand(this)); + getCommand("servertime").setExecutor(new ServerTimeCommand(this)); + getCommand("sotw").setExecutor(new SOTWCommand(this)); + getCommand("spawncannon").setExecutor(new SpawnCannonCommand(this)); + getCommand("stats").setExecutor(new StatsCommand()); + getCommand("staffrevive").setExecutor(new StaffReviveCommand(this)); + getCommand("glow").setExecutor(new GlowstoneMountainCommand(this)); + getCommand("timer").setExecutor(new TimerExecutor(this)); + getCommand("togglecapzoneentry").setExecutor(new ToggleCapzoneEntryCommand(this)); + getCommand("togglelightning").setExecutor(new ToggleLightningCommand(this)); + getCommand("mobdrops").setExecutor(new MobDropsCommand()); + getCommand("togglesidebar").setExecutor(new ToggleSidebarCommand(this)); + getCommand("togglefd").setExecutor(new ToggleDiamondAlertsCommand(this)); + getCommand("guifreeze").setExecutor(new GuiFreezeCommand(this)); + getCommand("request").setExecutor(new RequestCommand()); + getCommand("report").setExecutor(new ReportCommand()); + getCommand("warp").setExecutor(new WarpExecutor(this)); + getCommand("teleport").setExecutor(new TeleportCommand()); + getCommand("tphere").setExecutor(new TeleportCommand()); + getCommand("fly").setExecutor(new FlyCommand()); + getCommand("list").setExecutor(new ListCommand()); + getCommand("world").setExecutor(new WorldCommand()); + getCommand("gamemode").setExecutor(new GamemodeCommand()); + getCommand("gamemodes").setExecutor(new GamemodeCommand()); + getCommand("gamemodec").setExecutor(new GamemodeCommand()); + getCommand("gamemodea").setExecutor(new GamemodeCommand()); + getCommand("disablechat").setExecutor(new DisableChatCommand(this)); + getCommand("feed").setExecutor(new FeedCommand()); + getCommand("lag").setExecutor(new LagCommand()); + getCommand("slowchat").setExecutor(new SlowchatCommand(this)); + getCommand("give").setExecutor(new GiveCommand()); + getCommand("heal").setExecutor(new HealCommand()); + getCommand("uptime").setExecutor(new UptimeCommand()); + getCommand("top").setExecutor(new TopCommand()); + getCommand("hat").setExecutor(new HatCommand()); + getCommand("invsee").setExecutor(new InvseeCommand()); + getCommand("god").setExecutor(new GodCommand()); + getCommand("tppos").setExecutor(new TeleportCommand()); + getCommand("tpall").setExecutor(new TeleportCommand()); + getCommand("broadcast").setExecutor(new BroadcastCommand()); + getCommand("rename").setExecutor(new RenameCommand()); + getCommand("enchant").setExecutor(new EnchantCommand()); + getCommand("kill").setExecutor(new KillCommand()); + getCommand("message").setExecutor(new MessageCommand(this)); + getCommand("ignore").setExecutor(new IgnoreCommand(this)); + getCommand("reply").setExecutor(new ReplyCommand(this)); + getCommand("messagespy").setExecutor(new MessageSpyCommand(this)); + getCommand("togglemessages").setExecutor(new ToggleMessagesCommand(this)); + getCommand("sounds").setExecutor(new ToggleSoundsCommand(this)); + getCommand("togglechat").setExecutor(new ToggleChatCommand(this)); + getCommand("reclaim").setExecutor(new ReclaimCommand(this)); + getCommand("chest").setExecutor(new ChestCommand(chestManager)); + getCommand("clearchest").setExecutor(new ClearChestCommand(chestManager)); + getCommand("disposal").setExecutor(new DisposalCommand(chestManager)); + getCommand("savechests").setExecutor(new SaveChestsCommand(chestManager)); + getCommand("workbench").setExecutor(new WorkbenchCommand()); + getCommand("panic").setExecutor(new PanicCommand()); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("skygear.enabled")) { + getCommand("skygear").setExecutor(new SkyGearCommand()); + } + getCommand("setborder").setExecutor(new SetBorderCommand()); + getCommand("eotwrevive").setExecutor(new EOTWReviveCommand(this)); + getCommand("tc").setExecutor(new TeamCoordinatesCommand()); + getCommand("hidestaff").setExecutor(new HideStaffCommand()); + getCommand("speed").setExecutor(new SpeedCommand()); + getCommand("more").setExecutor(new MoreItemsCommand()); + getCommand("back").setExecutor(new BackCommand(this)); + getCommand("bardenergy").setExecutor(new BardEnergyCommand()); + getCommand("endevent").setExecutor(new EndEventCommand(this)); + getCommand("crowbar").setExecutor(new CrowbarCommand()); + getCommand("reclaimreset").setExecutor(new ReclaimResetCommand()); + + //getCommand("bottle").setExecutor(new BottleCommand(this)); + Map> map = getDescription().getCommands(); + for (Map.Entry> entry : map.entrySet()) { + PluginCommand command = getCommand(entry.getKey()); + command.setPermission("hcf.command." + entry.getKey()); + command.setPermissionMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("cmd-messages.no-permission"))); + } + +} + + +private void registerManagers() { + + + kitManager = new FlatFileKitManager(this); + claimHandler = new ClaimManager(this); + deathbanManager = new DeathbanFile(this); + serverHandler = new ServerHandler(this); + warpManager = new FlatFileWarpManager(this); + economyManager = new EconomyFile(this); + userManagerr = new IUserManager(this); + effectRestorer = new EffectRestorer(this); + PvPClassManager = new PvPClassManager(this); + eotwHandler = new EOTWHandler(this); + factionManager = new TeamFile(this); + eventScheduler = new EventScheduler2(this); + sotwTimer = new SOTWHandler(); + timerManager = new TimerManager(this); // Needs to be registered before ScoreboardHandler. + scoreboardHandler = new ScoreboardHandler(this); + userManager = new UserManager(this); + visualiseHandler = new VisualiseHandler(); + keyManager = new KeyManager(this); + restoreInventoryManager = new InventoryManager(this); + restoreManager = new RestoreManager(this); + endEventHandler = new EndEventHandler(this); + reviveHandler = new ReviveHandler(this); + getServer().getPluginManager().registerEvents(new KeyListener(this), this); + getCommand("key").setExecutor(new LootExecutor(this)); +} + + + + + +public void setLocation() { + Long hours = Long.valueOf(getConfig().getLong("glowstone-mountain.regeneration")); + Bukkit.getScheduler().scheduleSyncDelayedTask(Bukkit.getPluginManager().getPlugin("HCF"), new Runnable() { + @Override + public void run() { + HardcoreFactionsPlugin.this.setLocation(); + if (getConfig().getBoolean("glowstone-mountain.enabled")) { + try { + Location loc = GlowstoneMountainCommand.destringifyLocation(getConfig().getString("glowstone-mountain.location")); + loadGlowstone(loc); + String message = ChatColor.translateAlternateColorCodes('&', getConfig().getString("glowstone-mountain-messages.regenerated")); + Bukkit.broadcastMessage(message); + } catch (MaxChangedBlocksException | DataException | IOException e) { + e.printStackTrace(); + } + } + } + }, hours.longValue()); + for (Player all : Bukkit.getOnlinePlayers()) { + all.playSound(all.getLocation(), Sound.NOTE_PIANO, 30.0F, 1.0F); + } +} + + + + + +public void loadGlowstone(Location loc) throws DataException, IOException, MaxChangedBlocksException { + String stg = File.separator; + File file = new File(getDataFolder() + stg + "glowstone-mountain.schematic"); + EditSession es = new EditSession(new BukkitWorld(loc.getWorld()), 999999999); + CuboidClipboard cc = CuboidClipboard.loadSchematic(file); + cc.paste(es, BukkitUtil.toVector(loc), false); +} + + + +public static int getSpamCooldown() { + return HardcoreFactionsPlugin.spamCooldown; +} + +public static boolean databaseContains(String name) { + return HardcoreFactionsPlugin.database.containsKey(name); +} + +public static int getMessageCount(String name) { + return HardcoreFactionsPlugin.database.get(name); +} + +public static void addMessage(String name) { + int messageCount; + if (HardcoreFactionsPlugin.database.containsKey(name)) { + messageCount = HardcoreFactionsPlugin.database.get(name); + HardcoreFactionsPlugin.database.remove(name); + } + else { + messageCount = 0; + } + ++messageCount; + HardcoreFactionsPlugin.database.put(name, messageCount); +} + +public static void removeMessageCount(String name) { + HardcoreFactionsPlugin.database.remove(name); +} + +static { + HardcoreFactionsPlugin.database = new HashMap<>(); +} + +public WarpManager getWarpManager() { + return this.warpManager; +} + +public ServerHandler getServerHandler() { + return this.serverHandler; +} + +public DataHandler getDataHandler() { + return this.dataHandler; +} + +public IUserManager getUserManagerr() { + return this.userManagerr; +} + +public FrozenInventory getInventoryManager() { + return this.inventoryManager; +} + +public FrozenManager getFrozenManager() { + return this.frozenManager; +} + +public KeyManager getKeyManager() +{ + return this.keyManager; +} + +public YamlConfiguration getReclaimConfig() { + return reclaimConfig; + } + +public YamlConfiguration getReclaimSettingsConfig() { + return reclaimSettingsConfig; + } + +/* + * In case you want to automatically register Koth games + * you may use this method. Do not forget to import the required + * packages and add your HCF plugin as a library. + */ + +/*private void registerFromFactions(){ + koths.clear(); + for(Faction faction : getFactionManager().getFactions()){ + if(faction instanceof EventFaction){ + if(faction instanceof KothFaction) { + koths.add(faction.getName()); + this.getLogger().info("Registered " + faction.getName() + " in eventGames list."); + } + } + } +}*/ + +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/chests/InventoryIO.java b/src/notifyz/hardcorefactions/chests/InventoryIO.java new file mode 100644 index 0000000..507ea69 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/InventoryIO.java @@ -0,0 +1,119 @@ +package notifyz.hardcorefactions.chests; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; + +import org.bukkit.Bukkit; +import org.bukkit.configuration.ConfigurationSection; +import org.bukkit.configuration.InvalidConfigurationException; +import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +/** + * Utility class to store inventories to file and read them back again. + */ +public class InventoryIO { + + /** + * Loads an inventory from a plain-text file. + * + * @param file the text file to load + * @return the loaded inventory + * @throws IOException if the file could not be read + * @deprecated use {@link #loadFromYaml} instead + */ + @Deprecated + public static Inventory loadFromTextFile(File file) throws IOException { + final Inventory inventory = Bukkit.getServer().createInventory(null, HardcoreFactionsPlugin.getInstance().getConfig().getInt("chest-configuration.size")); + + final BufferedReader in = new BufferedReader(new FileReader(file)); + + String line; + int slot = 0; + + while ((line = in.readLine()) != null) { + if (!line.equals("")) { + final String[] parts = line.split(":"); + + try { + int type = Integer.parseInt(parts[0]); + int amount = Integer.parseInt(parts[1]); + short damage = Short.parseShort(parts[2]); + + if (type != 0) { + inventory.setItem(slot, new ItemStack(type, amount, damage)); + } + } catch (NumberFormatException e) { + // ignore + } + + ++slot; + } + } + + in.close(); + + return inventory; + } + + /** + * Loads an inventory from a YAML configuration file. + * + * @param file the YAML file to load + * @return the loaded inventory + * @throws IOException if the file could not be read + * @throws InvalidConfigurationException if the file could not be parsed + */ + public static Inventory loadFromYaml(File file) throws IOException, InvalidConfigurationException { + YamlConfiguration yaml = new YamlConfiguration(); + yaml.load(file); + + int inventorySize = yaml.getInt("size", HardcoreFactionsPlugin.getInstance().getConfig().getInt("chest-configuration.size")); + + Inventory inventory = Bukkit.getServer().createInventory(null, inventorySize); + + ConfigurationSection items = yaml.getConfigurationSection("items"); + + for (int slot = 0; slot < inventorySize; slot++) { + String slotString = String.valueOf(slot); + + if (items.isItemStack(slotString)) { + ItemStack itemStack = items.getItemStack(slotString); + inventory.setItem(slot, itemStack); + } + } + + return inventory; + } + + /** + * Saves an inventory to a YAML configuration file. + * + * @param inventory the inventory to save + * @param file the YAML file to write + * @throws IOException if the file could not be written + */ + public static void saveToYaml(Inventory inventory, File file) throws IOException { + YamlConfiguration yaml = new YamlConfiguration(); + + int inventorySize = inventory.getSize(); + yaml.set("size", inventorySize); + + ConfigurationSection items = yaml.createSection("items"); + + for (int slot = 0; slot < inventorySize; slot++) { + ItemStack stack = inventory.getItem(slot); + + if (stack != null) { + items.set(String.valueOf(slot), stack); + } + } + + yaml.save(file); + } +} diff --git a/src/notifyz/hardcorefactions/chests/Teller.java b/src/notifyz/hardcorefactions/chests/Teller.java new file mode 100644 index 0000000..56a855f --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/Teller.java @@ -0,0 +1,75 @@ +package notifyz.hardcorefactions.chests; + +import org.bukkit.ChatColor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class Teller { + + private final HardcoreFactionsPlugin plugin; + + private static String prefix; + + private static String infoColor; + private static String successColor; + private static String warningColor; + private static String errorColor; + private static String miscColor; + + public Teller(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + + init(); + } + + public enum Type { + INFO, SUCCESS, WARNING, ERROR, MISC; + } + + /** + * Initializes the Teller prefix and colors. + */ + public void init() { + prefix = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("chest-messages.prefix")); + + infoColor = ChatColor.GREEN.toString(); + successColor = ChatColor.GREEN.toString(); + warningColor = ChatColor.RED.toString(); + errorColor = ChatColor.DARK_RED.toString(); + miscColor = ChatColor.RED.toString(); + } + + /** + * Sends a formatted and colored message to a specified CommandSender with a given type and message. + * + * @param sender the CommandSender to message + * @param type the type of tell message to send + * @param message the message to send + */ + public static void tell(CommandSender sender, Type type, String message) { + String color = ""; + + switch (type) { + case INFO: + color = infoColor; + break; + case SUCCESS: + color = successColor; + break; + case WARNING: + color = warningColor; + break; + case ERROR: + color = errorColor; + break; + case MISC: + color = miscColor; + } + + String parsedMessage = prefix + " " + ChatColor.RESET + color + message; + parsedMessage = ChatColor.translateAlternateColorCodes('&', parsedMessage); + + sender.sendMessage(parsedMessage); + } +} diff --git a/src/notifyz/hardcorefactions/chests/VirtualChestManager.java b/src/notifyz/hardcorefactions/chests/VirtualChestManager.java new file mode 100644 index 0000000..7a5a4b4 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/VirtualChestManager.java @@ -0,0 +1,178 @@ +package notifyz.hardcorefactions.chests; + +import java.io.File; +import java.io.FilenameFilter; +import java.io.IOException; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.Map.Entry; +import java.util.UUID; +import java.util.logging.Level; +import java.util.logging.Logger; + +import org.bukkit.Bukkit; +import org.bukkit.OfflinePlayer; +import org.bukkit.inventory.Inventory; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class VirtualChestManager { + + private static final String YAML_CHEST_EXTENSION = ".chest.yml"; + private static final int YAML_EXTENSION_LENGTH = YAML_CHEST_EXTENSION.length(); + + private final File dataFolder; + private final Logger logger; + private final Map chests = new HashMap<>(); + + public VirtualChestManager(File dataFolder, Logger logger) { + this.logger = logger; + this.dataFolder = dataFolder; + + load(); + } + + /** + * Loads all existing chests from the data folder. + */ + private void load() { + dataFolder.mkdirs(); + + FilenameFilter filter = new FilenameFilter() { + public boolean accept(File dir, String name) { + return name.endsWith(YAML_CHEST_EXTENSION); + } + }; + + for (File chestFile : dataFolder.listFiles(filter)) { + String chestFileName = chestFile.getName(); + try { + try { + UUID playerUUID = UUID.fromString(chestFileName.substring(0, chestFileName.length() - YAML_EXTENSION_LENGTH)); + chests.put(playerUUID, InventoryIO.loadFromYaml(chestFile)); + } catch (IllegalArgumentException e) { + // Assume that the filename isn't a UUID, and is therefore an old player-name chest + String playerName = chestFileName.substring(0, chestFileName.length() - YAML_EXTENSION_LENGTH); + boolean flagPlayerNotFound = true; + + for (OfflinePlayer player : Bukkit.getOfflinePlayers()) { + // Search all the known players, load inventory, flag old file for deletion + if (player.getName().equalsIgnoreCase(playerName)) { + flagPlayerNotFound = false; + chests.put(player.getUniqueId(), InventoryIO.loadFromYaml(chestFile)); + chestFile.deleteOnExit(); + } + } + + if (flagPlayerNotFound) { + logger.log(Level.WARNING, "Couldn't load chest file: " + chestFileName); + } + } + } catch (Exception e) { + logger.log(Level.WARNING, "Couldn't load chest file: " + chestFileName); + } + } + + logger.info("Loaded " + chests.size() + " chests"); + } + + /** + * Saves all existing chests to the data folder. + * + * @return the number of successfully written chests + */ + public int save() { + int savedChests = 0; + + dataFolder.mkdirs(); + + Iterator> chestIterator = chests.entrySet().iterator(); + + while (chestIterator.hasNext()) { + final Entry entry = chestIterator.next(); + final UUID playerUUID = entry.getKey(); + final Inventory chest = entry.getValue(); + + final File chestFile = new File(dataFolder, playerUUID.toString() + YAML_CHEST_EXTENSION); + + if (chest == null) { + // Chest got removed, so we have to delete the file. + chestFile.delete(); + chestIterator.remove(); + } else { + try { + // Write the chest file in YAML format + InventoryIO.saveToYaml(chest, chestFile); + + savedChests++; + } catch (IOException e) { + logger.log(Level.WARNING, "Couldn't save chest file: " + chestFile.getName(), e); + } + } + } + + return savedChests; + } + + /** + * Saves a specified player's chest to the data folder. + * + * @param playerUUID the UUID of the player to save the chest of + */ + public void saveChest(UUID playerUUID) { + dataFolder.mkdirs(); + + final String uuidString = playerUUID.toString(); + final Inventory chest = chests.get(playerUUID); + final File chestFile = new File(dataFolder, uuidString + YAML_CHEST_EXTENSION); + + if (chest == null) { + // Chest got removed, so we have to delete the file. + chestFile.delete(); + } else { + try { + // Write the chest file in YAML format + InventoryIO.saveToYaml(chest, chestFile); + } catch (IOException e) { + logger.log(Level.WARNING, "Couldn't save chest file: " + chestFile.getName(), e); + } + } + } + + /** + * Gets a player's virtual chest. + * + * @param playerUUID the UUID of the player + * @return the player's virtual chest. + */ + public Inventory getChest(UUID playerUUID) { + Inventory chest = chests.get(playerUUID); + + if (chest == null) { + chest = Bukkit.getServer().createInventory(null, HardcoreFactionsPlugin.getInstance().getConfig().getInt("chest-configuration.size")); + chests.put(playerUUID, chest); + } + + return chest; + } + + /** + * Clears a player's virtual chest. + * + * @param playerUUID the UUID of the player + */ + public void removeChest(UUID playerUUID) { + // Put a null to the map so we remember to delete the file when saving! + chests.put(playerUUID, null); + } + + /** + * Gets the number of virtual chests. + * + * @return the number of virtual chests + */ + public int getChestCount() { + return chests.size(); + } +} diff --git a/src/notifyz/hardcorefactions/chests/commands/ChestCommand.java b/src/notifyz/hardcorefactions/chests/commands/ChestCommand.java new file mode 100644 index 0000000..c9d498a --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/commands/ChestCommand.java @@ -0,0 +1,87 @@ +package notifyz.hardcorefactions.chests.commands; + +import org.bukkit.ChatColor; +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.Teller.Type; +import notifyz.hardcorefactions.chests.VirtualChestManager; +import notifyz.hardcorefactions.chests.utils.BukkitUtil; +import notifyz.hardcorefactions.team.utilities.ITeam; + + +public class ChestCommand implements CommandExecutor { + + private final VirtualChestManager chestManager; + + public ChestCommand(VirtualChestManager chestManager) { + this.chestManager = chestManager; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (command.getName().equalsIgnoreCase("chest")) { + // Make sure the sender is a player + if (!(sender instanceof Player)) { + Teller.tell(sender, Type.ERROR, "Only players are able to open chests."); + return true; + } + + Player player = (Player) sender; + + Location location = player.getLocation(); + ITeam factionAt = HardcoreFactionsPlugin.getInstance().getFactionManager().getFactionAt(location); + if ((!factionAt.isSafezone())) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-safezone"))); + return false; + } + + // Prevent opening of the chest in Creative Mode + if (player.getGameMode().equals(GameMode.CREATIVE) && !player.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-bypass")))) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.gamemode-error"))); + return true; + } + + switch (args.length) { + case 0: + // Open the player's own chest + if (player.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-use-chest")))) { + Inventory chest = chestManager.getChest(player.getUniqueId()); + player.openInventory(chest); + } else { + ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission")); + } + + return true; + case 1: + // Open someone else's chest + if (player.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-others-chest")))) { + OfflinePlayer target = BukkitUtil.getOfflinePlayerByName(args[0]); + + if (target != null) { + Inventory chest = chestManager.getChest(target.getUniqueId()); + player.openInventory(chest); + } else { + Teller.tell(player, Type.ERROR, String.format("Chest for %s not found", args[0])); + } + } else { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + } + + return false; + } + + return false; + } +} diff --git a/src/notifyz/hardcorefactions/chests/commands/ClearChestCommand.java b/src/notifyz/hardcorefactions/chests/commands/ClearChestCommand.java new file mode 100644 index 0000000..f314227 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/commands/ClearChestCommand.java @@ -0,0 +1,67 @@ +package notifyz.hardcorefactions.chests.commands; + +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.Teller.Type; +import notifyz.hardcorefactions.chests.VirtualChestManager; +import notifyz.hardcorefactions.chests.utils.BukkitUtil; + +public class ClearChestCommand implements CommandExecutor { + + private final VirtualChestManager chestManager; + + public ClearChestCommand(VirtualChestManager chestManager) { + this.chestManager = chestManager; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (command.getName().equalsIgnoreCase("clearchest")) { + switch (args.length) { + case 0: + // Make sure the sender is a player + if (!(sender instanceof Player)) { + Teller.tell(sender, Type.ERROR, "Only players are able to clear their own chests."); + return true; + } + + Player player = (Player) sender; + + if (player.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-clear-chest")))) { + chestManager.removeChest(player.getUniqueId()); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.cleared-chest"))); + } else { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + case 1: + if (sender.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-others-clear")))) { + OfflinePlayer target = BukkitUtil.getOfflinePlayerByName(args[0]); + + if (target != null) { + chestManager.removeChest(target.getUniqueId()); + Teller.tell(sender, Type.SUCCESS, "Successfully cleared " + args[0] + "\'s chest."); + } else { + Teller.tell(sender, Type.ERROR, String.format("Chest for %s not found", args[0])); + } + } else { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + default: + return false; + } + } + + return false; + } +} diff --git a/src/notifyz/hardcorefactions/chests/commands/DisposalCommand.java b/src/notifyz/hardcorefactions/chests/commands/DisposalCommand.java new file mode 100644 index 0000000..cc28190 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/commands/DisposalCommand.java @@ -0,0 +1,44 @@ +package notifyz.hardcorefactions.chests.commands; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.VirtualChestManager; + + +public class DisposalCommand implements CommandExecutor { + + public DisposalCommand(VirtualChestManager chestManager) { + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (command.getName().equalsIgnoreCase("disposal")) { + // Make sure the sender is a player + if (!(sender instanceof Player)) { + Teller.tell(sender, Teller.Type.ERROR, "Only players are able to open virtual workbenches."); + return true; + } + + Player player = (Player) sender; + + if (player.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-use-disposal")))) { + Inventory disposal = Bukkit.getServer().createInventory(player, 27, "Disposal"); + player.openInventory(disposal); + } else { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + } + + return false; + } +} diff --git a/src/notifyz/hardcorefactions/chests/commands/SaveChestCommand.java b/src/notifyz/hardcorefactions/chests/commands/SaveChestCommand.java new file mode 100644 index 0000000..1f27a43 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/commands/SaveChestCommand.java @@ -0,0 +1,47 @@ +package notifyz.hardcorefactions.chests.commands; + +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.VirtualChestManager; +import notifyz.hardcorefactions.chests.utils.BukkitUtil; + +public class SaveChestCommand implements CommandExecutor { + + private final VirtualChestManager chestManager; + + public SaveChestCommand(VirtualChestManager chestManager) { + this.chestManager = chestManager; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (command.getName().equalsIgnoreCase("savechest")) { + if (args.length == 1) { + if (sender.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-savechest")))) { + OfflinePlayer target = BukkitUtil.getOfflinePlayerByName(args[0]); + + if (target != null) { + chestManager.saveChest(target.getUniqueId()); + Teller.tell(sender, Teller.Type.SUCCESS, "Successfully saved " + args[0] + "\'s chest."); + } else { + Teller.tell(sender, Teller.Type.ERROR, String.format("Chest for %s not found", args[0])); + } + } else { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + } + + return false; + } + + return false; + } +} diff --git a/src/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.java b/src/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.java new file mode 100644 index 0000000..4a6c9d7 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/commands/SaveChestsCommand.java @@ -0,0 +1,36 @@ +package notifyz.hardcorefactions.chests.commands; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.Teller.Type; +import notifyz.hardcorefactions.chests.VirtualChestManager; + +public class SaveChestsCommand implements CommandExecutor { + + private final VirtualChestManager chestManager; + + public SaveChestsCommand(VirtualChestManager chestManager) { + this.chestManager = chestManager; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (command.getName().equalsIgnoreCase("savechests")) { + if (sender.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-savechests")))) { + int savedChests = chestManager.save(); + Teller.tell(sender, Type.SUCCESS, "Saved " + savedChests + " chests."); + } else { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + } + + return false; + } +} diff --git a/src/notifyz/hardcorefactions/chests/commands/WorkbenchCommand.java b/src/notifyz/hardcorefactions/chests/commands/WorkbenchCommand.java new file mode 100644 index 0000000..10533ec --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/commands/WorkbenchCommand.java @@ -0,0 +1,38 @@ +package notifyz.hardcorefactions.chests.commands; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.Teller; +import notifyz.hardcorefactions.chests.Teller.Type; + + +public class WorkbenchCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (command.getName().equalsIgnoreCase("workbench")) { + // Make sure the sender is a player + if (!(sender instanceof Player)) { + Teller.tell(sender, Type.ERROR, "Only players are able to open virtual workbenches."); + return true; + } + + Player player = (Player) sender; + + if (player.hasPermission(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-configuration.permission-use-workbench")))) { + player.openWorkbench(null, true); + } else { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("chest-messages.no-permission"))); + } + + return true; + } + + return false; + } +} diff --git a/src/notifyz/hardcorefactions/chests/listeners/PlayerListener.java b/src/notifyz/hardcorefactions/chests/listeners/PlayerListener.java new file mode 100644 index 0000000..f028946 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/listeners/PlayerListener.java @@ -0,0 +1,64 @@ +package notifyz.hardcorefactions.chests.listeners; + +import java.util.List; + +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.chests.VirtualChestManager; + +public class PlayerListener implements Listener { + + private final VirtualChestManager chestManager; + + private boolean clearOnDeath; + private boolean dropOnDeath; + + public PlayerListener(HardcoreFactionsPlugin hardcoreFactionsPlugin, VirtualChestManager chestManager) { + this.chestManager = chestManager; + + // Load the death event settings + clearOnDeath = hardcoreFactionsPlugin.getConfig().getBoolean("clearOnDeath"); + dropOnDeath = hardcoreFactionsPlugin.getConfig().getBoolean("dropOnDeath"); + } + + /** + * Handles a player's death and clears the chest or drops its contents depending on configuration and permissions. + */ + @EventHandler(ignoreCancelled = true) + public void onPlayerDeath(final PlayerDeathEvent event) { + final Player player = event.getEntity(); + + boolean drop = dropOnDeath; + boolean clear = dropOnDeath || clearOnDeath; + + if (player.hasPermission("chest.keepOnDeath")) { + drop = false; + clear = false; + } else if (player.hasPermission("chest.dropOnDeath")) { + drop = true; + clear = true; + } else if (player.hasPermission("chest.clearOnDeath")) { + drop = false; + clear = true; + } + + if (drop) { + List drops = event.getDrops(); + Inventory chest = chestManager.getChest(player.getUniqueId()); + + for (int i = 0; i < chest.getSize(); i++) { + drops.add(chest.getItem(i)); + } + } + + if (clear) { + chestManager.removeChest(player.getUniqueId()); + } + } +} diff --git a/src/notifyz/hardcorefactions/chests/utils/BukkitUtil.java b/src/notifyz/hardcorefactions/chests/utils/BukkitUtil.java new file mode 100644 index 0000000..bbddf39 --- /dev/null +++ b/src/notifyz/hardcorefactions/chests/utils/BukkitUtil.java @@ -0,0 +1,25 @@ +package notifyz.hardcorefactions.chests.utils; + +import org.bukkit.Bukkit; +import org.bukkit.OfflinePlayer; + +public class BukkitUtil { + + /** + * Searches for and retrieves an offline player by their name. + * + * @param name the name to search for + * @return the found player or null + */ + public static OfflinePlayer getOfflinePlayerByName(String name) { + OfflinePlayer[] offlinePlayers = Bukkit.getOfflinePlayers(); + + for (OfflinePlayer player : offlinePlayers) { + if (player.getName().equalsIgnoreCase(name)) { + return player; + } + } + + return null; + } +} diff --git a/src/notifyz/hardcorefactions/classes/PvPClass.java b/src/notifyz/hardcorefactions/classes/PvPClass.java new file mode 100644 index 0000000..f930c8e --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/PvPClass.java @@ -0,0 +1,62 @@ +package notifyz.hardcorefactions.classes; + +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.concurrent.TimeUnit; + +import org.bukkit.ChatColor; +import org.bukkit.entity.Player; +import org.bukkit.potion.PotionEffect; + +import lombok.Getter; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +/** + * Represents a class that can apply PVP buffs for players. + */ +@SuppressWarnings({ "deprecation" }) +public abstract class PvPClass { + + public static final long DEFAULT_MAX_DURATION = TimeUnit.MINUTES.toMillis(8L); + + private final List passiveEffects = new ArrayList<>(); + + @Getter + protected final String name; + + @Getter + protected final long warmupDelay; + + protected void addPassiveEffect(PotionEffect potionEffect) { + Objects.requireNonNull(potionEffect); + passiveEffects.add(potionEffect); + } + + public PvPClass(String name, long warmupDelay) { + this.name = name; + this.warmupDelay = warmupDelay; + } + + public boolean onEquip(Player player) { + for (PotionEffect effect : passiveEffects) { + player.addPotionEffect(effect, true); + } + for (String pvpclass : HardcoreFactionsPlugin.getPlugin().getConfig().getStringList("classes.class-equiped")) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', pvpclass).replace("%class%", name)); + } + return true; + } + + public void onUnequip(Player player) { + for (PotionEffect effect : passiveEffects) { + player.removePotionEffect(effect.getType()); + } + + for (String pvpclass : HardcoreFactionsPlugin.getPlugin().getConfig().getStringList("classes.class-un-equiped")) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', pvpclass).replace("%class%", name)); + } + } + + public abstract boolean isApplicableFor(Player player); +} diff --git a/src/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.java b/src/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.java new file mode 100644 index 0000000..2b79205 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/events/PvPClassEquipEvent.java @@ -0,0 +1,30 @@ +package notifyz.hardcorefactions.classes.events; + +import org.bukkit.entity.Player; +import org.bukkit.event.HandlerList; +import org.bukkit.event.player.PlayerEvent; + +import lombok.Getter; +import notifyz.hardcorefactions.classes.PvPClass; + +public class PvPClassEquipEvent extends PlayerEvent { + + private static final HandlerList handlers = new HandlerList(); + + @Getter + private final PvPClass PvPClass; + + public PvPClassEquipEvent(Player player, PvPClass PvPClass) { + super(player); + this.PvPClass = PvPClass; + } + + @Override + public HandlerList getHandlers() { + return handlers; + } + + public static HandlerList getHandlerList() { + return handlers; + } +} diff --git a/src/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.java b/src/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.java new file mode 100644 index 0000000..8ec25f2 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/events/PvPClassUnEquipEvent.java @@ -0,0 +1,30 @@ +package notifyz.hardcorefactions.classes.events; + +import org.bukkit.entity.Player; +import org.bukkit.event.HandlerList; +import org.bukkit.event.player.PlayerEvent; + +import lombok.Getter; +import notifyz.hardcorefactions.classes.PvPClass; + +public class PvPClassUnEquipEvent extends PlayerEvent { + + private static final HandlerList handlers = new HandlerList(); + + @Getter + private final PvPClass PvPClass; + + public PvPClassUnEquipEvent(Player player, PvPClass PvPClass) { + super(player); + this.PvPClass = PvPClass; + } + + @Override + public HandlerList getHandlers() { + return handlers; + } + + public static HandlerList getHandlerList() { + return handlers; + } +} diff --git a/src/notifyz/hardcorefactions/classes/manager/PvPClassManager.java b/src/notifyz/hardcorefactions/classes/manager/PvPClassManager.java new file mode 100644 index 0000000..dfc3006 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/manager/PvPClassManager.java @@ -0,0 +1,95 @@ +package notifyz.hardcorefactions.classes.manager; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; + +import javax.annotation.Nullable; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.plugin.PluginManager; + +import lombok.Getter; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.PvPClass; +import notifyz.hardcorefactions.classes.events.PvPClassEquipEvent; +import notifyz.hardcorefactions.classes.events.PvPClassUnEquipEvent; +import notifyz.hardcorefactions.classes.type.archer.ArcherClass; +import notifyz.hardcorefactions.classes.type.bard.BardClass; +import notifyz.hardcorefactions.classes.type.ghost.GhostClass; +import notifyz.hardcorefactions.classes.type.miner.MinerClass; +import notifyz.hardcorefactions.classes.type.rogue.RogueClass; + +public class PvPClassManager implements Listener { + + private final Map equippedClasses = new HashMap<>(); + + @Getter + private final List pvpClasses = new ArrayList<>(); + + public ArcherClass archerClass; + + public PvPClassManager(HardcoreFactionsPlugin plugin) { + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("classes.archer.enabled")) { + pvpClasses.add(archerClass = new ArcherClass(plugin)); + } + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("classes.bard.enabled")) { + pvpClasses.add(new BardClass(plugin)); + } + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("classes.miner.enabled")) { + pvpClasses.add(new MinerClass(plugin)); + } + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("classes.rogue.enabled")) { + pvpClasses.add(new RogueClass(plugin)); + } + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("classes.ghost.enabled")) { + pvpClasses.add(new GhostClass(plugin)); + } + PluginManager manager = plugin.getServer().getPluginManager(); + manager.registerEvents(this, plugin); + pvpClasses.stream().filter(pvpClass -> pvpClass instanceof Listener).forEach(pvpClass -> { + manager.registerEvents((Listener) pvpClass, plugin); + }); + } + + public void onDisable() { + for (Map.Entry entry : new HashMap<>(equippedClasses).entrySet()) { + setEquippedClass(Bukkit.getPlayer(entry.getKey()), null); + } + + pvpClasses.clear(); + equippedClasses.clear(); + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + setEquippedClass(event.getEntity(), null); + } + + public PvPClass getEquippedClass(Player player) { + return equippedClasses.get(player.getUniqueId()); + } + + public boolean hasClassEquipped(Player player, PvPClass pvpClass) { + return getEquippedClass(player) == pvpClass; + } + + public void setEquippedClass(Player player, @Nullable PvPClass pvpClass) { + if (pvpClass == null) { + PvPClass equipped = equippedClasses.remove(player.getUniqueId()); + if (equipped != null) { + equipped.onUnequip(player); + Bukkit.getPluginManager().callEvent(new PvPClassUnEquipEvent(player, equipped)); + } + } else if (pvpClass != this.getEquippedClass(player) && pvpClass.onEquip(player)) { + equippedClasses.put(player.getUniqueId(), pvpClass); + Bukkit.getPluginManager().callEvent(new PvPClassEquipEvent(player, pvpClass)); + } + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/Holder.java b/src/notifyz/hardcorefactions/classes/type/Holder.java new file mode 100644 index 0000000..cd6ae42 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/Holder.java @@ -0,0 +1,24 @@ +package notifyz.hardcorefactions.classes.type; + +import java.util.UUID; + +import org.bukkit.scheduler.BukkitRunnable; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.scoreboard.provider.PvPClassHolder; +import notifyz.hardcorefactions.utilities.utils.Tuple; + +public class Holder implements PvPClassHolder { + + private HardcoreFactionsPlugin plugin; + + public Holder(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @SuppressWarnings("static-access") + @Override + public Tuple getArcherTag(UUID uuid) { + return plugin.getPvPClassManager().archerClass.tagged.get(uuid); + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/archer/ArcherClass.java b/src/notifyz/hardcorefactions/classes/type/archer/ArcherClass.java new file mode 100644 index 0000000..7e4c2d5 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/archer/ArcherClass.java @@ -0,0 +1,240 @@ +package notifyz.hardcorefactions.classes.type.archer; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Color; +import org.bukkit.Material; +import org.bukkit.entity.Arrow; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerKickEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.PlayerInventory; +import org.bukkit.inventory.meta.LeatherArmorMeta; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.scheduler.BukkitRunnable; + +import net.minecraft.util.gnu.trove.map.TObjectLongMap; +import net.minecraft.util.gnu.trove.map.hash.TObjectLongHashMap; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.PvPClass; +import notifyz.hardcorefactions.classes.events.PvPClassUnEquipEvent; +import notifyz.hardcorefactions.scoreboard.utilities.PlayerBoard; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; +import notifyz.hardcorefactions.utilities.utils.Tuple; + +/** + * Represents a {@link PvPClass} used to buff Archer game-play such as Bows. + */ +public class ArcherClass extends PvPClass implements Listener { + + private static final int DAMAGE_BONUS_PERCENT = HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.archer.damage-percentage"); + + private static final PotionEffect ARCHER_SPEED_EFFECT = new PotionEffect(PotionEffectType.SPEED, 160, 3); + private static final long ARCHER_SPEED_COOLDOWN_DELAY = TimeUnit.SECONDS.toMillis(HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.archer.speed-cooldown")); + + public final static Map> tagged = new HashMap<>();//added static + public final static TObjectLongMap archerSpeedCooldowns = new TObjectLongHashMap<>(); + + public static final HashMap tagged2 = new HashMap<>(); + + private final HardcoreFactionsPlugin plugin; + + public ArcherClass(HardcoreFactionsPlugin plugin) { + super(HardcoreFactionsPlugin.getInstance().getConfig().getString("classes.archer.name"), JavaUtils.parse(HardcoreFactionsPlugin.getInstance().getConfig().getString("scoreboard.archer-time"))); + this.plugin = plugin; + + addPassiveEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1)); + addPassiveEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 2)); + } + + private void untag(Player player) { + tagged.remove(player.getUniqueId()); + for (PlayerBoard playerBoard : plugin.getScoreboardHandler().getPlayerBoards().values()) { + playerBoard.addUpdates(Bukkit.getOnlinePlayers()); + } + } + + public TObjectLongMap getSpeedCooldown(){ + return ArcherClass.archerSpeedCooldowns; + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerClassUnequip(PvPClassUnEquipEvent event) { + untag(event.getPlayer()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerDeath(PlayerDeathEvent event) { + untag(event.getEntity()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerQuit(PlayerQuitEvent event) { + untag(event.getPlayer()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerKick(PlayerKickEvent event) { + untag(event.getPlayer()); + } + + private static final long TAG_DURATION = TimeUnit.SECONDS.toMillis(10L); + private static final long TAG_DURATION_TICKS = TAG_DURATION / 50L; + private static final String TAG_DURATION_WORDS = DurationFormatUtils.formatDurationWords(TAG_DURATION,true,true); + + @EventHandler(ignoreCancelled = true, priority = EventPriority.HIGHEST) + public void onEntityDamage(EntityDamageByEntityEvent event) { + Entity entity = event.getEntity(); + Player attacker = BukkitUtils.getFinalAttacker(event, true); + if (attacker != null && !attacker.equals(entity) && entity instanceof Player) { + Player attacked = (Player) entity; + + Tuple tuple = tagged.get(attacked.getUniqueId()); + + if (event.getDamager() instanceof Arrow && plugin.getPvPClassManager().getEquippedClass(attacker) instanceof ArcherClass) { + if (plugin.getPvPClassManager().getEquippedClass(attacked) instanceof ArcherClass) { + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.archer.cannot-tag-archers"))); + return; + } + + if (tuple != null) { + tuple.getValue().cancel(); + } + + BukkitRunnable runnable = new BukkitRunnable() { + @Override + public void run() { + untag(attacked); + } + }; + LeatherArmorMeta helmMeta = (LeatherArmorMeta)attacker.getInventory().getHelmet().getItemMeta(); + LeatherArmorMeta chestMeta = (LeatherArmorMeta)attacker.getInventory().getChestplate().getItemMeta(); + LeatherArmorMeta leggingsMeta = (LeatherArmorMeta)attacker.getInventory().getLeggings().getItemMeta(); + LeatherArmorMeta bootsMeta = (LeatherArmorMeta)attacker.getInventory().getBoots().getItemMeta(); + + if (plugin.getConfig().getBoolean("classes.archer.use-colorful-armor")) { + Color green = Color.fromRGB(6717235); + if ((helmMeta.getColor().equals(green)) && (chestMeta.getColor().equals(green)) && (leggingsMeta.getColor().equals(green)) && (bootsMeta.getColor().equals(green))) + { + attacked.addPotionEffect(new PotionEffect(PotionEffectType.POISON, 120, 0)); + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c&lPoison! &eSince your armor is green, you gave " + attacked.getName() + " the poison effect for 6 seconds.")); + attacked.sendMessage(ChatColor.translateAlternateColorCodes('&', "&2&lPoison! &aSince " + attacker.getName() + "'s armor is green, you were given the poison effect for 6 seconds.")); + } + Color blue = Color.fromRGB(3361970); + if ((helmMeta.getColor().equals(blue)) && (chestMeta.getColor().equals(blue)) && (leggingsMeta.getColor().equals(blue)) && (bootsMeta.getColor().equals(blue))) + { + attacked.addPotionEffect(new PotionEffect(PotionEffectType.SLOW, 120, 0)); + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c&lSlowness! &eSince your armor is blue, you gave " + attacked.getName() + " the slowness effect for 6 seconds.")); + attacked.sendMessage(ChatColor.translateAlternateColorCodes('&', "&3&lSlowness! &bSince " + attacker.getName() + "'s armor is blue, you were given the slowness effect for 6 seconds.")); + } + Color gray = Color.fromRGB(5000268); + if ((helmMeta.getColor().equals(gray)) && (chestMeta.getColor().equals(gray)) && (leggingsMeta.getColor().equals(gray)) && (bootsMeta.getColor().equals(gray))) + { + attacked.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 120, 0)); + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c&lBlindness! &eSince your armor is gray, you gave " + attacked.getName() + " the blindness effect for 6 seconds.")); + attacked.sendMessage(ChatColor.translateAlternateColorCodes('&', "&8&lBlindness! &7Since " + attacker.getName() + "'s armor is gray, you were given the blindness effect for 6 seconds.")); + } + Color black = Color.fromRGB(1644825); + if ((helmMeta.getColor().equals(black)) && (chestMeta.getColor().equals(black)) && (leggingsMeta.getColor().equals(black)) && (bootsMeta.getColor().equals(black))) + { + attacked.addPotionEffect(new PotionEffect(PotionEffectType.WITHER, 120, 0)); + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c&lWither! &eSince your armor is black, you gave " + attacked.getName() + " the wither effect for 6 seconds.")); + attacked.sendMessage(ChatColor.translateAlternateColorCodes('&', "&7&lWither! &fSince " + attacker.getName() + "'s armor is black, you were given the wither effect for 6 seconds.")); + } + } + + /*attacker.sendMessage(ChatColor.RED + "You have tagged " + attacked.getName() + + " for " + TAG_DURATION_WORDS + ", their received damage will be " + DAMAGE_BONUS_PERCENT + "% higher."); + attacked.sendMessage(ChatColor.RED + "You have been archer tagged for " + TAG_DURATION_WORDS + + ", received damage will be " + DAMAGE_BONUS_PERCENT + "% higher."); */ + double distance = attacker.getLocation().distance(attacked.getLocation()); + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', ("&e[&9Arrow Range &e(&c" + String.format("%.0f", Double.valueOf(distance)) + "&e)] " + "&6Marked " + attacked.getName() + " &6for 10 seconds. &9&l(1 heart)"))); + attacked.sendMessage(ChatColor.translateAlternateColorCodes('&', "&c&lMarked! &eAn archer has shot you and marked you (+" + DAMAGE_BONUS_PERCENT + "&e% damage) for " + TAG_DURATION_WORDS + '.')); + //attacker.sendMessage(ChatColor.GOLD + "You have marked " + ChatColor.YELLOW + attacked.getName() + ChatColor.GOLD + " for " + ChatColor.AQUA + TAG_DURATION_WORDS + ChatColor.GOLD + "." + ChatColor.GRAY + " (" + DAMAGE_BONUS_PERCENT + "% damage)"); + //attacked.sendMessage(ChatColor.RED.toString() + "MARKED! " + ChatColor.GOLD + "You are now " + ChatColor.YELLOW + "Archer Tagged " + ChatColor.GOLD + "for " + ChatColor.AQUA + TAG_DURATION_WORDS + ChatColor.GOLD + " by " + attacker.getName() + "." + ChatColor.GRAY + " (" + DAMAGE_BONUS_PERCENT + "% damage)"); + runnable.runTaskLater(plugin, TAG_DURATION_TICKS); + + + tagged.put(attacked.getUniqueId(), tuple = new Tuple<>(System.currentTimeMillis() + TAG_DURATION, runnable)); + for (PlayerBoard playerBoard : plugin.getScoreboardHandler().getPlayerBoards().values()) { + playerBoard.addUpdates(Bukkit.getOnlinePlayers()); + } + } + + if (tuple != null) { + long remaining = tuple.getKey() - System.currentTimeMillis(); + if (remaining > 0L) { + event.setDamage(event.getDamage() * (1.0 + (DAMAGE_BONUS_PERCENT / 100.0))); + } + } + } + } + + @EventHandler(ignoreCancelled = false, priority = EventPriority.HIGH) + public void onPlayerInteract(PlayerInteractEvent event) { + Action action = event.getAction(); + if (action == Action.RIGHT_CLICK_AIR || action == Action.RIGHT_CLICK_BLOCK) { + if (event.hasItem() && event.getItem().getType() == Material.SUGAR) { + if (plugin.getPvPClassManager().getEquippedClass(event.getPlayer()) != this) { + return; + } + + Player player = event.getPlayer(); + UUID uuid = player.getUniqueId(); + long timestamp = archerSpeedCooldowns.get(uuid); + long millis = System.currentTimeMillis(); + long remaining = timestamp == archerSpeedCooldowns.getNoEntryValue() ? -1L : timestamp - millis; + if (remaining > 0L) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.archer.speed-cooldown").replace("%cooldown%", DurationFormatUtils.formatDurationWords(remaining, true, true)))); + } else { + ItemStack stack = player.getItemInHand(); + if (stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + plugin.getEffectRestorer().setRestoreEffect(player, ARCHER_SPEED_EFFECT); + archerSpeedCooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + ARCHER_SPEED_COOLDOWN_DELAY); + } + } + } + } + + @Override + public boolean isApplicableFor(Player player) { + PlayerInventory playerInventory = player.getInventory(); + + ItemStack helmet = playerInventory.getHelmet(); + if (helmet == null || helmet.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.archer.equipment.helmet"))) + return false; + + ItemStack chestplate = playerInventory.getChestplate(); + if (chestplate == null || chestplate.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.archer.equipment.chestplate"))) + return false; + + ItemStack leggings = playerInventory.getLeggings(); + if (leggings == null || leggings.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.archer.equipment.leggings"))) + return false; + + ItemStack boots = playerInventory.getBoots(); + return !(boots == null || boots.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.archer.equipment.boots"))); + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/bard/BardClass.java b/src/notifyz/hardcorefactions/classes/type/bard/BardClass.java new file mode 100644 index 0000000..63038b1 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/bard/BardClass.java @@ -0,0 +1,340 @@ +package notifyz.hardcorefactions.classes.type.bard; + +import java.util.Collection; +import java.util.EnumMap; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import org.bukkit.event.Event; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerItemHeldEvent; +import org.bukkit.event.player.PlayerKickEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.scheduler.BukkitRunnable; + +import gnu.trove.map.TObjectLongMap; +import gnu.trove.map.hash.TObjectLongHashMap; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.PvPClass; +import notifyz.hardcorefactions.classes.type.bard.utilties.BardData; +import notifyz.hardcorefactions.classes.type.bard.utilties.BardEffect; +import notifyz.hardcorefactions.team.type.PlayerTeam; +import notifyz.hardcorefactions.team.utilities.ITeam; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.Lang; + +@SuppressWarnings("deprecation") +public class BardClass extends PvPClass implements Listener { + + public static final long HELD_EFFECT_DURATION_TICKS = TimeUnit.SECONDS.toMillis(HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.bard.buff-duration")); // the amount of time in ticks to apply a Held potion effect for faction members + + private static final long BUFF_COOLDOWN_MILLIS = TimeUnit.SECONDS.toMillis(HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.bard.buff-cooldown")); // time in milliseconds for Bard buff cooldowns + private static final int TEAMMATE_NEARBY_RADIUS = HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.bard.teammate-nearby"); + private static final long HELD_REAPPLY_TICKS = 20L; + @SuppressWarnings("unused") + private static final String MARK = BukkitUtils.STRAIGHT_LINE_DEFAULT.substring(0, 8); + private final Map bardDataMap = new HashMap<>(); + private final Map bardEffects = new EnumMap<>(Material.class); + private final HardcoreFactionsPlugin plugin; + private final TObjectLongMap msgCooldowns = new TObjectLongHashMap<>(); + + public BardClass(HardcoreFactionsPlugin plugin) { + super(HardcoreFactionsPlugin.getInstance().getConfig().getString("classes.bard.name"), TimeUnit.SECONDS.toMillis(1L)); + this.plugin = plugin; + + addPassiveEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1)); + addPassiveEffect(new PotionEffect(PotionEffectType.REGENERATION, Integer.MAX_VALUE, 0)); + addPassiveEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1)); + + this.bardEffects.put(Material.FERMENTED_SPIDER_EYE, new BardEffect(60, new PotionEffect(PotionEffectType.INVISIBILITY, 120, 1),new PotionEffect(PotionEffectType.INVISIBILITY, 100, 0))); + this.bardEffects.put(Material.WHEAT, new BardEffect(35, new PotionEffect(PotionEffectType.SATURATION, 120, 1), new PotionEffect(PotionEffectType.SATURATION, 100, 0))); + this.bardEffects.put(Material.SUGAR, new BardEffect(25, new PotionEffect(PotionEffectType.SPEED, 120, 2), new PotionEffect(PotionEffectType.SPEED, 100, 1))); + this.bardEffects.put(Material.BLAZE_POWDER, new BardEffect(50, new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 120, 1), new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 100, 0))); + this.bardEffects.put(Material.IRON_INGOT, new BardEffect(35, new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 80, 2), new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 100, 0))); + this.bardEffects.put(Material.GHAST_TEAR, new BardEffect(45, new PotionEffect(PotionEffectType.REGENERATION, 60, 2), new PotionEffect(PotionEffectType.REGENERATION, 100, 0))); + this.bardEffects.put(Material.FEATHER, new BardEffect(30, new PotionEffect(PotionEffectType.JUMP, 120, 5), new PotionEffect(PotionEffectType.JUMP, 100, 0))); + this.bardEffects.put(Material.SPIDER_EYE, new BardEffect(50, new PotionEffect(PotionEffectType.WITHER, 100, 1), null)); + this.bardEffects.put(Material.MAGMA_CREAM, new BardEffect(10, new PotionEffect(PotionEffectType.FIRE_RESISTANCE, 900, 0), new PotionEffect(PotionEffectType.FIRE_RESISTANCE, 120, 0))); + } + + @Override + public boolean onEquip(Player player) { + if (HardcoreFactionsPlugin.getPlugin().getTimerManager().getInvincibilityTimer().getRemainingCooldown(player) > 0L) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.bard.cannot-equip-class"))); + return false; + } + + if (!super.onEquip(player)) { + return false; + } + + BardData bardData = new BardData(); + bardDataMap.put(player.getUniqueId(), bardData); + bardData.startEnergyTracking(); + bardData.heldTask = new BukkitRunnable() { + int lastEnergy; + + @Override + public void run() { + // Apply the bard effects here. + ItemStack held = player.getItemInHand(); + if (held != null) { + BardEffect bardEffect = bardEffects.get(held.getType()); + if (bardEffect == null || bardEffect.heldable == null) { + return; + } + + if (bardEffect.heldable.getType() == PotionEffectType.JUMP) { + plugin.getEffectRestorer().setRestoreEffect(player, bardEffect.heldable); + } + + if (!HardcoreFactionsPlugin.getPlugin().getFactionManager().getFactionAt(player.getLocation()).isSafezone()) { + // Apply the held effect to faction members. + PlayerTeam playerFaction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player); + if (playerFaction != null) { + Collection nearbyEntities = player.getNearbyEntities(TEAMMATE_NEARBY_RADIUS, TEAMMATE_NEARBY_RADIUS, TEAMMATE_NEARBY_RADIUS); + for (Entity nearby : nearbyEntities) { + if (nearby instanceof Player && !player.equals(nearby)) { + Player target = (Player) nearby; + if (playerFaction.getMembers().containsKey(target.getUniqueId())) { + plugin.getEffectRestorer().setRestoreEffect(target, bardEffect.heldable); + } + } + } + } + } + } + + int energy = (int) getEnergy(player); + // the -1 check is for offsets with the energy per millisecond + if (energy != 0 && energy != lastEnergy && (energy % 10 == 0 || lastEnergy - energy - 1 > 0 || energy == BardData.MAX_ENERGY)) { + lastEnergy = energy; + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.bard.energy-announcer").replace("%energy%", energy + ""))); + } + } + }.runTaskTimer(plugin, 0L, HELD_REAPPLY_TICKS); + return true; + } + + @Override + public void onUnequip(Player player) { + super.onUnequip(player); + clearBardData(player.getUniqueId()); + } + + private void clearBardData(UUID uuid) { + BardData bardData = bardDataMap.remove(uuid); + if (bardData != null && bardData.getHeldTask() != null) { + bardData.getHeldTask().cancel(); + } + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerQuit(PlayerQuitEvent event) { + clearBardData(event.getPlayer().getUniqueId()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerKick(PlayerKickEvent event) { + clearBardData(event.getPlayer().getUniqueId()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onItemHeld(PlayerItemHeldEvent event) { + Player player = event.getPlayer(); + PvPClass equipped = plugin.getPvPClassManager().getEquippedClass(player); + if (equipped == null || !equipped.equals(this)) { + return; + } + + UUID uuid = player.getUniqueId(); + long lastMessage = msgCooldowns.get(uuid); + long millis = System.currentTimeMillis(); + if (lastMessage != msgCooldowns.getNoEntryValue() && lastMessage - millis > 0L) { + return; + } + + ItemStack newStack = player.getInventory().getItem(event.getNewSlot()); + if (newStack != null) { + BardEffect bardEffect = bardEffects.get(newStack.getType()); + if (bardEffect != null) { + msgCooldowns.put(uuid, millis + 1500L); + //player.sendMessage(ChatColor.GOLD + "Bard Effect: " + ChatColor.GOLD); + //player.sendMessage(ChatColor.GOLD + "\u00bb " + ChatColor.YELLOW + "Clickable Effect: " + ChatColor.AQUA + Lang.fromPotionEffectType(bardEffect.clickable.getType()) + ' ' + (bardEffect.clickable.getAmplifier() + 1) + ChatColor.GRAY + " (" + (bardEffect.clickable.getDuration() / 20) + "s)"); + //player.sendMessage(ChatColor.GOLD + "\u00bb " + ChatColor.YELLOW + "Energy Cost: " + ChatColor.AQUA + bardEffect.energyCost); + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("classes.bard.held-item-message")) { + for (String bard : HardcoreFactionsPlugin.getPlugin().getConfig().getStringList("classes.bard.effect-message")) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', bard).replace("%energycost%", Integer.toString(bardEffect.energyCost)).replace("%effect%", Lang.fromPotionEffectType(bardEffect.clickable.getType()) + ' ' + (bardEffect.clickable.getAmplifier() + 1) + ChatColor.GRAY + " (" + (bardEffect.clickable.getDuration() / 20) + "s)")); + } + } + } + } + } + + @EventHandler(ignoreCancelled = false, priority = EventPriority.MONITOR) + public void onPlayerInteract(final PlayerInteractEvent event) { + if (!event.hasItem()) { + return; + } + final Action action = event.getAction(); + if (action == Action.RIGHT_CLICK_AIR || (!event.isCancelled() && action == Action.RIGHT_CLICK_BLOCK)) { + final ItemStack stack = event.getItem(); + final BardEffect bardEffect = this.bardEffects.get(stack.getType()); + if (bardEffect == null || bardEffect.clickable == null) { + return; + } + event.setUseItemInHand(Event.Result.DENY); + final Player player = event.getPlayer(); + final BardData bardData = this.bardDataMap.get(player.getUniqueId()); + if (bardData != null) { + if (!this.canUseBardEffect(player, bardData, bardEffect, true)) { + return; + } + if (stack.getAmount() > 1) { + stack.setAmount(stack.getAmount() - 1); + HardcoreFactionsPlugin.getPlugin().getTimerManager().getCombatTimer().setCooldown(player, player.getUniqueId()); + } else { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } + if (bardEffect != null && !HardcoreFactionsPlugin.getPlugin().getFactionManager().getFactionAt(player.getLocation()).isSafezone()) { + final PlayerTeam playerFaction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player); + if (playerFaction != null && !bardEffect.clickable.getType().equals(PotionEffectType.WITHER)) { + final Collection nearbyEntities = player.getNearbyEntities(25.0, 25.0, 25.0); + for (final Entity nearby : nearbyEntities) { + if (nearby instanceof Player && !player.equals(nearby)) { + final Player target = (Player) nearby; + if (!playerFaction.getMembers().containsKey(target.getUniqueId())) { + continue; + } + plugin.getEffectRestorer().setRestoreEffect(target, bardEffect.clickable); + } + } + } else if (playerFaction != null && bardEffect.clickable.getType().equals(PotionEffectType.WITHER)) { + final Collection nearbyEntities = player.getNearbyEntities(25.0, 25.0, 25.0); + for (final Entity nearby : nearbyEntities) { + if (nearby instanceof Player && !player.equals(nearby)) { + final Player target = (Player) nearby; + if (playerFaction.getMembers().containsKey(target.getUniqueId())) { + continue; + } + HardcoreFactionsPlugin.getPlugin().getTimerManager().getCombatTimer().setCooldown(target, target.getUniqueId()); + plugin.getEffectRestorer().setRestoreEffect(target, bardEffect.clickable); + } + } + } else if (bardEffect.clickable.getType().equals(PotionEffectType.WITHER)) { + final Collection nearbyEntities = player.getNearbyEntities(25.0, 25.0, 25.0); + for (final Entity nearby : nearbyEntities) { + if (nearby instanceof Player && !player.equals(nearby)) { + final Player target = (Player) nearby; + plugin.getEffectRestorer().setRestoreEffect(target, bardEffect.clickable); + } + } + } + } + plugin.getEffectRestorer().setRestoreEffect(player, bardEffect.clickable); + bardData.setBuffCooldown(BUFF_COOLDOWN_MILLIS); + + @SuppressWarnings("unused") + double newEnergy = this.setEnergy(player, bardData.getEnergy() - bardEffect.energyCost); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.bard.buff-used").replace("%cost%", bardEffect.energyCost + ""))); + //player.sendMessage(ChatColor.GOLD + "You have just used " + name + " buff " + ChatColor.RED + Lang.fromPotionEffectType(bardEffect.clickable.getType()) + ' ' + // + (bardEffect.clickable.getAmplifier() + 1) + ChatColor.GOLD + " costing you " + ChatColor.BOLD + bardEffect.energyCost + ChatColor.YELLOW + " energy. " + // + "Your energy is now " + ChatColor.GREEN + ((newEnergy * 10.0) / 10.0)/* TODO:neeeded? */+ ChatColor.YELLOW + '.'); + } + } + } + + private boolean canUseBardEffect(Player player, BardData bardData, BardEffect bardEffect, boolean sendFeedback) { + String errorFeedback = null; + double currentEnergy = bardData.getEnergy(); + if (bardEffect.energyCost > currentEnergy) { + errorFeedback = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.bard.no-enough-energy").replace("%energy%", currentEnergy + "").replace("%cost%", bardEffect.energyCost + "")); + } + + long remaining = bardData.getRemainingBuffDelay() / 1000; + if (remaining > 0L) { + errorFeedback = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.bard.buff-cooldown").replace("%cooldown%", remaining + "")); + } + + ITeam factionAt = HardcoreFactionsPlugin.getPlugin().getFactionManager().getFactionAt(player.getLocation()); + if (factionAt.isSafezone()) { + errorFeedback = ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.bard.buff-in-safezone")); + } + + if (sendFeedback && errorFeedback != null) { + player.sendMessage(errorFeedback); + } + + return errorFeedback == null; + } + + @Override + public boolean isApplicableFor(Player player) { + ItemStack helmet = player.getInventory().getHelmet(); + if (helmet == null || helmet.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.bard.equipment.helmet"))) return false; + + ItemStack chestplate = player.getInventory().getChestplate(); + if (chestplate == null || chestplate.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.bard.equipment.chestplate"))) return false; + + ItemStack leggings = player.getInventory().getLeggings(); + if (leggings == null || leggings.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.bard.equipment.leggings"))) return false; + + ItemStack boots = player.getInventory().getBoots(); + return !(boots == null || boots.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.bard.equipment.boots"))); + } + + public long getRemainingBuffDelay(Player player) { + synchronized (bardDataMap) { + BardData bardData = bardDataMap.get(player.getUniqueId()); + return bardData == null ? 0L : bardData.getRemainingBuffDelay(); + } + } + + /** + * Gets the energy of a {@link Player}. + * + * @param player the {@link Player} to get for + * @return the energy, or 0 if not tracking this player + */ + public double getEnergy(Player player) { + synchronized (bardDataMap) { + BardData bardData = bardDataMap.get(player.getUniqueId()); + return bardData == null ? 0 : bardData.getEnergy(); + } + } + + public long getEnergyMillis(Player player) { + synchronized (bardDataMap) { + BardData bardData = bardDataMap.get(player.getUniqueId()); + return bardData == null ? 0 : bardData.getEnergyMillis(); + } + } + + /** + * Sets the energy of a {@link Player}. + * + * @param player the {@link Player} to set for + * @param energy the energy amount to set + * @return the new energy amount + */ + public double setEnergy(Player player, double energy) { + BardData bardData = bardDataMap.get(player.getUniqueId()); + if (bardData == null) return 0.0; + + bardData.setEnergy(energy); + return bardData.getEnergy(); + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.java b/src/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.java new file mode 100644 index 0000000..3dcf4c2 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/bard/utilties/BardData.java @@ -0,0 +1,66 @@ +package notifyz.hardcorefactions.classes.type.bard.utilties; + +import org.bukkit.scheduler.BukkitTask; + +import com.google.common.base.Preconditions; + +import lombok.Getter; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.type.bard.BardClass; + +/** + * Holds data about a {@link BardClass}. + */ +public class BardData { + + public static final double ENERGY_PER_MILLISECOND = HardcoreFactionsPlugin.getInstance().getConfig().getDouble("classes.bard.energy-per-second"); + public static final double MIN_ENERGY = 0.0D; + public static final double MAX_ENERGY = HardcoreFactionsPlugin.getInstance().getConfig().getDouble("classes.bard.max-energy"); + public static final long MAX_ENERGY_MILLIS = (long) (MAX_ENERGY * 1000L); + + @Getter + private long buffCooldown; + + @Getter + public BukkitTask heldTask; //TODO: find a way to make private + + private long energyStart; + + public void setBuffCooldown(long millis) { + this.buffCooldown = System.currentTimeMillis() + millis; + } + + public long getRemainingBuffDelay() { + return this.buffCooldown - System.currentTimeMillis(); + } + + /** + * Begins tracking energy. + */ + public void startEnergyTracking() { + this.setEnergy(0); + } + + /** + * Gets the energy in milliseconds. + * + * @return energy in milliseconds + */ + public long getEnergyMillis() { + if (this.energyStart == 0L) { + return 0L; + } + + return Math.min(MAX_ENERGY_MILLIS, (long) (ENERGY_PER_MILLISECOND * (System.currentTimeMillis() - this.energyStart))); + } + + public double getEnergy() { + return Math.round(this.getEnergyMillis() / MAX_ENERGY) / 10.0; + } + + public void setEnergy(double energy) { + Preconditions.checkArgument(energy >= MIN_ENERGY, "Energy cannot be less than " + MIN_ENERGY); + Preconditions.checkArgument(energy <= MAX_ENERGY, "Energy cannot be more than " + MAX_ENERGY); + this.energyStart = (long) (System.currentTimeMillis() - (1000L * energy)); + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/bard/utilties/BardEffect.java b/src/notifyz/hardcorefactions/classes/type/bard/utilties/BardEffect.java new file mode 100644 index 0000000..213172b --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/bard/utilties/BardEffect.java @@ -0,0 +1,21 @@ +package notifyz.hardcorefactions.classes.type.bard.utilties; + +import org.bukkit.potion.PotionEffect; + +import notifyz.hardcorefactions.classes.type.bard.BardClass; + +/** + * Represents a {@link BardClass} effect. + */ +public class BardEffect { + + public final int energyCost; + public final PotionEffect clickable; + public final PotionEffect heldable; + + public BardEffect(int energyCost, PotionEffect clickable, PotionEffect heldable) { + this.energyCost = energyCost; + this.clickable = clickable; + this.heldable = heldable; + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/classes/type/bard/utilties/EffectRestorer.java b/src/notifyz/hardcorefactions/classes/type/bard/utilties/EffectRestorer.java new file mode 100644 index 0000000..d53f1e8 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/bard/utilties/EffectRestorer.java @@ -0,0 +1,76 @@ +package notifyz.hardcorefactions.classes.type.bard.utilties; + +import java.util.Collection; +import java.util.UUID; + +import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.PotionEffectExpireEvent; +import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; + +import com.google.common.collect.HashBasedTable; +import com.google.common.collect.Table; + +import notifyz.hardcorefactions.classes.PvPClass; +import notifyz.hardcorefactions.classes.events.PvPClassUnEquipEvent; +import notifyz.hardcorefactions.classes.type.bard.BardClass; + +public class EffectRestorer implements Listener { + + private final Table restores = HashBasedTable.create(); + + public EffectRestorer(JavaPlugin plugin) { + plugin.getServer().getPluginManager().registerEvents(this, plugin); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPvpClassUnequip(PvPClassUnEquipEvent event) { + restores.rowKeySet().remove(event.getPlayer().getUniqueId()); + } + + public void setRestoreEffect(Player player, PotionEffect effect) { + boolean shouldCancel = true; + Collection activeList = player.getActivePotionEffects(); + for (PotionEffect active : activeList) { + if (!active.getType().equals(effect.getType())) continue; + + // If the current potion effect has a higher amplifier, ignore this one. + if (effect.getAmplifier() < active.getAmplifier()) { + return; + } else if (effect.getAmplifier() == active.getAmplifier()) { + // If the current potion effect has a longer duration, ignore this one. + if (effect.getDuration() < active.getDuration()) { + return; + } + } + + restores.put(player.getUniqueId(), active.getType(), active); + shouldCancel = false; + break; + } + + // Cancel the previous restore. + player.addPotionEffect(effect, true); + if (shouldCancel && effect.getDuration() > BardClass.HELD_EFFECT_DURATION_TICKS && effect.getDuration() < PvPClass.DEFAULT_MAX_DURATION) { + restores.remove(player.getUniqueId(), effect.getType()); + } + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPotionEffectExpire(PotionEffectExpireEvent event) { + LivingEntity livingEntity = event.getEntity(); + if (livingEntity instanceof Player) { + Player player = (Player) livingEntity; + PotionEffect previous = restores.remove(player.getUniqueId(), event.getEffect().getType()); + if (previous != null) { + event.setCancelled(true); + player.addPotionEffect(previous, true); + } + } + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/ghost/GhostClass.java b/src/notifyz/hardcorefactions/classes/type/ghost/GhostClass.java new file mode 100644 index 0000000..e931c34 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/ghost/GhostClass.java @@ -0,0 +1,237 @@ +package notifyz.hardcorefactions.classes.type.ghost; + +import java.util.HashMap; +import java.util.concurrent.TimeUnit; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Effect; +import org.bukkit.Material; +import org.bukkit.Sound; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.PlayerInventory; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.scheduler.BukkitRunnable; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.PvPClass; +import notifyz.hardcorefactions.classes.events.PvPClassUnEquipEvent; +import notifyz.hardcorefactions.utilities.chat.Cooldowns; + + + +public class GhostClass + extends PvPClass + implements Listener +{ + private HardcoreFactionsPlugin plugin; + public HashMap firstAssassinEffects; + public HashMap modes; + public GhostClass(HardcoreFactionsPlugin plugin) + { + super(HardcoreFactionsPlugin.getInstance().getConfig().getString("classes.ghost.name"), TimeUnit.SECONDS.toMillis(1L)); + this.firstAssassinEffects = new HashMap<>(); + this.modes = new HashMap<>(); + this.plugin = plugin; + addPassiveEffect(new PotionEffect(PotionEffectType.FIRE_RESISTANCE, Integer.MAX_VALUE, 0)); + addPassiveEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1)); + addPassiveEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1)); + } + + @EventHandler + public void onUnEquip(PvPClassUnEquipEvent e) + { + Player p = e.getPlayer(); + for (Player on : Bukkit.getOnlinePlayers()) { + if ((!on.canSee(p)) && (!on.hasPermission("hcf.command.staffmode"))) { + on.showPlayer(p); + } + } + this.firstAssassinEffects.remove(p); + } + + @EventHandler + public void onDamageSelf(EntityDamageEvent e) + { + if ((e.getEntity() instanceof Player)) + { + Player p = (Player)e.getEntity(); + if ((this.plugin.getPvPClassManager().getEquippedClass(p) == null) || (!this.plugin.getPvPClassManager().getEquippedClass(p).equals(this))) { + return; + } + if ((this.firstAssassinEffects.containsKey(p.getName())) && (this.firstAssassinEffects.get(p.getName()).intValue() == 1)) { + for (Entity entity : p.getNearbyEntities(20.0D, 20.0D, 20.0D)) { + if ((entity instanceof Player)) + { + Player players = (Player)entity; + players.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.ghost.damage-near"))); + } + } + } + } + } + + @EventHandler + public void onHitOtherPlayers(EntityDamageByEntityEvent e) + { + if (((e.getDamager() instanceof Player)) && ((e.getEntity() instanceof Player))) + { + Player p = (Player)e.getDamager(); + if ((this.firstAssassinEffects.containsKey(p.getName())) && (this.firstAssassinEffects.get(p.getName()).intValue() == 1)) { + afterFiveSeconds(p, true); + } + } + } + + @EventHandler + public void onClickItem(PlayerInteractEvent e) + { + Player p = e.getPlayer(); + if ((e.getAction() == Action.RIGHT_CLICK_BLOCK) || (e.getAction() == Action.RIGHT_CLICK_AIR)) + { + PvPClass equipped = this.plugin.getPvPClassManager().getEquippedClass(p); + if ((equipped == null) || (!equipped.equals(this))) { + return; + } + if (p.getItemInHand().getType() == Material.QUARTZ) + { + if (Cooldowns.isOnCooldown("Assassin_item_cooldown", p)) + { + p.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.ghost.cooldown").replace("%cooldown%", HardcoreFactionsPlugin.getRemaining(Cooldowns.getCooldownForPlayerLong("Assassin_item_cooldown", p), true)))); + return; + } + if (p.getItemInHand().getAmount() == 1) { + p.getInventory().remove(p.getItemInHand()); + } + p.getItemInHand().setAmount(p.getItemInHand().getAmount() - 1); + p.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.ghost.stealth-mode"))); + for (Player on : Bukkit.getOnlinePlayers()) + { + on.playEffect(p.getLocation().add(0.5D, 2.0D, 0.5D), Effect.ENDER_SIGNAL, 5); + on.playEffect(p.getLocation().add(0.5D, 1.5D, 0.5D), Effect.ENDER_SIGNAL, 5); + on.playEffect(p.getLocation().add(0.5D, 1.0D, 0.5D), Effect.ENDER_SIGNAL, 5); + on.playSound(p.getLocation(), Sound.ENDERMAN_TELEPORT, 1.0F, 1.0F); + if (!on.hasPermission("hcf.command.staffmode")) { + on.hidePlayer(p); + } + } + for (Entity entity : p.getNearbyEntities(20.0D, 20.0D, 20.0D)) { + if ((entity instanceof Player)) + { + Player players = (Player)entity; + players.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.ghost.damage-near"))); + } + } + Cooldowns.addCooldown("Assassin_item_cooldown", p, HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.ghost.mode-cooldown")); + ((CraftPlayer)p).removePotionEffect(PotionEffectType.SPEED); + this.firstAssassinEffects.put(p.getName(), Integer.valueOf(1)); + p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 100, 4), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.ABSORPTION, 100, 0), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, 100, 0), true); + new BukkitRunnable() + { + @Override + public void run() + { + if ((GhostClass.this.isApplicableFor(p)) && (GhostClass.this.firstAssassinEffects.containsKey(p.getName())) && (GhostClass.this.firstAssassinEffects.get(p.getName()).intValue() == 1)) { + GhostClass.this.afterFiveSeconds(p, false); + } + } + } + + .runTaskLater(this.plugin, 100L); + } + } + } + + public void afterFiveSeconds(Player p, boolean force) + { + if ((this.firstAssassinEffects.containsKey(p.getName())) && (isApplicableFor(p))) + { + for (Player on : Bukkit.getOnlinePlayers()) + { + if ((!on.canSee(p)) && (!on.hasPermission("hcf.command.staffmode"))) { + on.showPlayer(p); + } + on.playEffect(p.getLocation().add(0.0D, 2.0D, 0.0D), Effect.ENDER_SIGNAL, 3); + on.playEffect(p.getLocation().add(0.0D, 1.5D, 0.0D), Effect.ENDER_SIGNAL, 3); + on.playEffect(p.getLocation().add(0.0D, 1.0D, 0.0D), Effect.ENDER_SIGNAL, 3); + on.playEffect(p.getLocation().add(0.0D, 2.0D, 0.0D), Effect.BLAZE_SHOOT, 5); + on.playEffect(p.getLocation().add(0.0D, 1.5D, 0.0D), Effect.BLAZE_SHOOT, 5); + on.playEffect(p.getLocation().add(0.0D, 1.0D, 0.0D), Effect.BLAZE_SHOOT, 5); + } + new BukkitRunnable() + { + @Override + public void run() + { + if ((GhostClass.this.firstAssassinEffects.containsKey(p.getName())) && (GhostClass.this.firstAssassinEffects.get(p.getName()).intValue() == 2)) + { + GhostClass.this.firstAssassinEffects.remove(p.getName()); + p.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.ghost.normal-mode"))); + if (GhostClass.this.isApplicableFor(p)) + { + p.addPotionEffect(new PotionEffect(PotionEffectType.FIRE_RESISTANCE, Integer.MAX_VALUE, 0), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1), true); + } + } + } + } + + .runTaskLater(this.plugin, 100L); + if (force) + { + p.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 0), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 120, 1), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 120, 0), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.ABSORPTION, 120, 1), true); + ((CraftPlayer)p).removePotionEffect(PotionEffectType.INVISIBILITY); + this.firstAssassinEffects.remove(p.getName()); + this.firstAssassinEffects.put(p.getName(), Integer.valueOf(2)); + p.sendMessage(ChatColor.YELLOW + "You have been forced into " + ChatColor.RED + "Power" + ChatColor.YELLOW + " Mode" + ChatColor.GRAY.toString() + ChatColor.ITALIC + " (5 Seconds)"); + return; + } + this.firstAssassinEffects.remove(p.getName()); + this.firstAssassinEffects.put(p.getName(), Integer.valueOf(2)); + p.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.ghost.power-mode"))); + p.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 1), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 0), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 120, 1), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 120, 0), true); + p.addPotionEffect(new PotionEffect(PotionEffectType.ABSORPTION, 120, 1), true); + ((CraftPlayer)p).removePotionEffect(PotionEffectType.INVISIBILITY); + } + } + + @Override +public boolean isApplicableFor(Player player) + { + PlayerInventory playerInventory = player.getInventory(); + ItemStack helmet = playerInventory.getHelmet(); + if ((helmet == null) || (helmet.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.ghost.equipment.helmet")))) { + return false; + } + ItemStack chestplate = playerInventory.getChestplate(); + if ((chestplate == null) || (chestplate.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.ghost.equipment.chestplate")))) { + return false; + } + ItemStack leggings = playerInventory.getLeggings(); + if ((leggings == null) || (leggings.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.ghost.equipment.leggings")))) { + return false; + } + ItemStack boots = playerInventory.getBoots(); + return (boots != null) && (boots.getType() == Material.matchMaterial(plugin.getConfig().getString("classes.ghost.equipment.boots"))); + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/miner/MinerClass.java b/src/notifyz/hardcorefactions/classes/type/miner/MinerClass.java new file mode 100644 index 0000000..bbb9ccb --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/miner/MinerClass.java @@ -0,0 +1,138 @@ +package notifyz.hardcorefactions.classes.type.miner; + +import java.util.concurrent.TimeUnit; + +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.player.PlayerMoveEvent; +import org.bukkit.event.player.PlayerTeleportEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.PlayerInventory; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.PvPClass; +import notifyz.hardcorefactions.classes.events.PvPClassEquipEvent; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + +/** + * Represents a {@link PvPClass} used to enhance mining quality. + */ +public class MinerClass extends PvPClass implements Listener { + + // The minimum height level to obtain the Invisibility effect. + private static final int INVISIBILITY_HEIGHT_LEVEL = HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.miner.invisibility-y"); + private static final PotionEffect HEIGHT_INVISIBILITY = new PotionEffect(PotionEffectType.INVISIBILITY, Integer.MAX_VALUE, 0); + + private final HardcoreFactionsPlugin plugin; + + public MinerClass(HardcoreFactionsPlugin plugin) { + super(HardcoreFactionsPlugin.getInstance().getConfig().getString("classes.miner.name"), TimeUnit.SECONDS.toMillis(1L)); + this.plugin = plugin; + + addPassiveEffect(new PotionEffect(PotionEffectType.FAST_DIGGING, Integer.MAX_VALUE, 1)); + addPassiveEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0)); + addPassiveEffect(new PotionEffect(PotionEffectType.FIRE_RESISTANCE, Integer.MAX_VALUE, 0)); + } + + private void removeInvisibilitySafely(Player player) { + for (PotionEffect active : player.getActivePotionEffects()) { + if (active.getType().equals(PotionEffectType.INVISIBILITY) && active.getDuration() > DEFAULT_MAX_DURATION) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.miner.invisibility-removed"))); + player.removePotionEffect(active.getType()); + break; + } + } + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerDamage(EntityDamageByEntityEvent event) { + Entity entity = event.getEntity(); + if (entity instanceof Player && BukkitUtils.getFinalAttacker(event, false) != null) { + Player player = (Player) entity; + if (plugin.getPvPClassManager().hasClassEquipped(player, this)) { + removeInvisibilitySafely(player); + } + } + } + + @Override + public void onUnequip(Player player) { + super.onUnequip(player); + removeInvisibilitySafely(player); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerMove(PlayerMoveEvent event) { + conformMinerInvisibility(event.getPlayer(), event.getFrom(), event.getTo()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerTeleport(PlayerTeleportEvent event) { + conformMinerInvisibility(event.getPlayer(), event.getFrom(), event.getTo()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onClassEquip(PvPClassEquipEvent event) { + Player player = event.getPlayer(); + if (event.getPvPClass() == this && player.getLocation().getBlockY() <= INVISIBILITY_HEIGHT_LEVEL) { + player.addPotionEffect(HEIGHT_INVISIBILITY, true); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.miner.invisibility-added"))); + } + } + + + /** + * Applies the {@link MinerClass} invisibility {@link PotionEffect} depending + * on the {@link Player}s {@link Location}. + * + * @param player the {@link Player} to apply for + * @param from the from {@link Location} + * @param to the to {@link Location} + */ + private void conformMinerInvisibility(Player player, Location from, Location to) { + int fromY = from.getBlockY(); + int toY = to.getBlockY(); + if (fromY != toY && plugin.getPvPClassManager().hasClassEquipped(player, this)) { + boolean isInvisible = player.hasPotionEffect(PotionEffectType.INVISIBILITY); + if (toY > INVISIBILITY_HEIGHT_LEVEL) { + if (fromY <= INVISIBILITY_HEIGHT_LEVEL && isInvisible) { + removeInvisibilitySafely(player); + } + } else { + if (!isInvisible) { + player.addPotionEffect(HEIGHT_INVISIBILITY, true); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.miner.invisibility-added"))); + } + } + } + } + + @Override + public boolean isApplicableFor(Player player) { + PlayerInventory playerInventory = player.getInventory(); + + ItemStack helmet = playerInventory.getHelmet(); + if (helmet == null || helmet.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.miner.equipment.helmet"))) + return false; + + ItemStack chestplate = playerInventory.getChestplate(); + if (chestplate == null || chestplate.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.miner.equipment.chestplate"))) + return false; + + ItemStack leggings = playerInventory.getLeggings(); + if (leggings == null || leggings.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.miner.equipment.leggings"))) + return false; + + ItemStack boots = playerInventory.getBoots(); + return !(boots == null || boots.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.miner.equipment.boots"))); + } +} diff --git a/src/notifyz/hardcorefactions/classes/type/rogue/RogueClass.java b/src/notifyz/hardcorefactions/classes/type/rogue/RogueClass.java new file mode 100644 index 0000000..bb55bb0 --- /dev/null +++ b/src/notifyz/hardcorefactions/classes/type/rogue/RogueClass.java @@ -0,0 +1,197 @@ +package notifyz.hardcorefactions.classes.type.rogue; + +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.Sound; +import org.bukkit.entity.Damageable; +import org.bukkit.entity.Entity; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.PlayerInventory; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; + +import net.minecraft.util.gnu.trove.map.TObjectLongMap; +import net.minecraft.util.gnu.trove.map.hash.TObjectLongHashMap; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.PvPClass; + +public class RogueClass extends PvPClass implements Listener { + + private final HardcoreFactionsPlugin plugin; + + private static final PotionEffect ROGUE_SPEED_EFFECT = new PotionEffect(PotionEffectType.SPEED, 160, 3); + private static final long ROGUE_SPEED_COOLDOWN_DELAY = TimeUnit.MINUTES.toMillis(HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.rogue.speed-cooldown")); + + private static final PotionEffect ROGUE_JUMP_EFFECT = new PotionEffect(PotionEffectType.JUMP, 160, 5); + private static final long ROGUE_JUMP_COOLDOWN_DELAY = TimeUnit.MINUTES.toMillis(HardcoreFactionsPlugin.getInstance().getConfig().getInt("classes.rogue.jump-cooldown")); + + public final static TObjectLongMap rogueSpeedCooldowns = new TObjectLongHashMap<>(); + public final static TObjectLongMap rogueJumpCooldowns = new TObjectLongHashMap<>(); + + public RogueClass(HardcoreFactionsPlugin plugin) { + super(HardcoreFactionsPlugin.getInstance().getConfig().getString("classes.rogue.name"), TimeUnit.SECONDS.toMillis(1L)); + + this.plugin = plugin; + addPassiveEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, Integer.MAX_VALUE, 0)); + addPassiveEffect(new PotionEffect(PotionEffectType.REGENERATION, Integer.MAX_VALUE, 0)); + addPassiveEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 2)); + addPassiveEffect(new PotionEffect(PotionEffectType.JUMP, Integer.MAX_VALUE, 1)); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.HIGHEST) + public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { + if (((event.getEntity() instanceof Player)) && ((event.getDamager() instanceof Player))) { + Entity entity = event.getEntity(); + Entity damager = event.getDamager(); + Player attacker = (Player) damager; + if (this.plugin.getPvPClassManager().getEquippedClass(attacker) == this) { + ItemStack stack = attacker.getItemInHand(); + if ((stack != null) && (stack.getType() == Material.GOLD_SWORD) && (stack.getEnchantments().isEmpty())) { + Player player = (Player) entity; + if (direction(attacker) == direction(player)) { + Damageable damage = player; + if (damage.getHealth() <= 0.0D) { + return; + } + if (damage.getHealth() <= 6.0D) { + damage.damage(20.0D); + } else { + damage.setHealth(damage.getHealth() - 6.0D); + } + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.rogue.backstabbed-you").replace("%player%", attacker.getName()))); + player.playSound(player.getLocation(), Sound.ITEM_BREAK, 1.0F, 1.0F); + attacker.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.rogue.you-backstabbed").replace("%player%", player.getName()))); + attacker.setItemInHand(new ItemStack(Material.AIR, 1)); + attacker.playSound(player.getLocation(), Sound.ITEM_BREAK, 1.0F, 1.0F); + attacker.addPotionEffect(new PotionEffect(PotionEffectType.SLOW, 60, 1)); + event.setCancelled(true); + } + } + } + } + } + + @EventHandler(ignoreCancelled = false, priority = EventPriority.HIGH) + public void onSpeed(PlayerInteractEvent event) { + Action action = event.getAction(); + if (action == Action.RIGHT_CLICK_AIR || action == Action.RIGHT_CLICK_BLOCK) { + if (event.hasItem() && event.getItem().getType() == Material.SUGAR) { + if (plugin.getPvPClassManager().getEquippedClass(event.getPlayer()) != this) { + return; + } + + Player player = event.getPlayer(); + UUID uuid = player.getUniqueId(); + long timestamp = rogueSpeedCooldowns.get(uuid); + long millis = System.currentTimeMillis(); + long remaining = timestamp == rogueSpeedCooldowns.getNoEntryValue() ? -1L : timestamp - millis; + if (remaining > 0L) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.rogue.speed-cooldown").replace("%cooldown%", DurationFormatUtils.formatDurationWords(remaining, true, true)))); + } else { + ItemStack stack = player.getItemInHand(); + if (stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + plugin.getEffectRestorer().setRestoreEffect(player, ROGUE_SPEED_EFFECT); + rogueSpeedCooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + ROGUE_SPEED_COOLDOWN_DELAY); + } + } + } + } + + @EventHandler(ignoreCancelled = false, priority = EventPriority.HIGH) + public void onJump(PlayerInteractEvent event) { + Action action = event.getAction(); + if (action == Action.RIGHT_CLICK_AIR || action == Action.RIGHT_CLICK_BLOCK) { + if (event.hasItem() && event.getItem().getType() == Material.FEATHER) { + if (plugin.getPvPClassManager().getEquippedClass(event.getPlayer()) != this) { + return; + } + + Player player = event.getPlayer(); + UUID uuid = player.getUniqueId(); + long timestamp = rogueJumpCooldowns.get(uuid); + long millis = System.currentTimeMillis(); + long remaining = timestamp == rogueJumpCooldowns.getNoEntryValue() ? -1L : timestamp - millis; + if (remaining > 0L) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("classes-messages.rogue.jump-cooldown").replace("%cooldown%", DurationFormatUtils.formatDurationWords(remaining, true, true)))); + } else { + ItemStack stack = player.getItemInHand(); + if (stack.getAmount() == 1) { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } else { + stack.setAmount(stack.getAmount() - 1); + } + + plugin.getEffectRestorer().setRestoreEffect(player, ROGUE_JUMP_EFFECT); + rogueJumpCooldowns.put(event.getPlayer().getUniqueId(), System.currentTimeMillis() + ROGUE_JUMP_COOLDOWN_DELAY); + } + } + } + } + + public Byte direction(Player player) { + double rotation = (player.getLocation().getYaw() - 90) % 360; + if (rotation < 0) { + rotation += 360.0; + } + if (0 <= rotation && rotation < 22.5) { + return 0xC; // S > E + } else if (22.5 <= rotation && rotation < 67.5) { + return 0xE; // SW > SE + } else if (67.5 <= rotation && rotation < 112.5) { + return 0x0; // W > E + } else if (112.5 <= rotation && rotation < 157.5) { + return 0x2; // NW > SW + } else if (157.5 <= rotation && rotation < 202.5) { + return 0x4; // N > W + } else if (202.5 <= rotation && rotation < 247.5) { + return 0x6; // NE > NW + } else if (247.5 <= rotation && rotation < 292.5) { + return 0x8; // E > N + } else if (292.5 <= rotation && rotation < 337.5) { + return 0xA; // SE > NE + } else if (337.5 <= rotation && rotation < 360.0) { + return 0xC; // S > E + } else { + return null; + } + } + + @Override + public boolean isApplicableFor(Player player) { + PlayerInventory playerInventory = player.getInventory(); + + ItemStack helmet = playerInventory.getHelmet(); + if (helmet == null || helmet.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.rogue.equipment.helmet"))) { + return false; + } + + ItemStack chestplate = playerInventory.getChestplate(); + if (chestplate == null || chestplate.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.rogue.equipment.chestplate"))) { + return false; + } + + ItemStack leggings = playerInventory.getLeggings(); + if (leggings == null || leggings.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.rogue.equipment.leggings"))) { + return false; + } + + ItemStack boots = playerInventory.getBoots(); + return !(boots == null || boots.getType() != Material.matchMaterial(plugin.getConfig().getString("classes.rogue.equipment.boots"))); + } +} diff --git a/src/notifyz/hardcorefactions/combatloggers/CombatLogEntry.java b/src/notifyz/hardcorefactions/combatloggers/CombatLogEntry.java new file mode 100644 index 0000000..60c49c7 --- /dev/null +++ b/src/notifyz/hardcorefactions/combatloggers/CombatLogEntry.java @@ -0,0 +1,15 @@ +package notifyz.hardcorefactions.combatloggers; + +import org.bukkit.scheduler.BukkitTask; + +public class CombatLogEntry +{ + public final LoggerEntity loggerEntity; + public final BukkitTask task; + + public CombatLogEntry(LoggerEntity loggerEntity, BukkitTask task) + { + this.loggerEntity = loggerEntity; + this.task = task; + } +} diff --git a/src/notifyz/hardcorefactions/combatloggers/CombatLogListener.java b/src/notifyz/hardcorefactions/combatloggers/CombatLogListener.java new file mode 100644 index 0000000..9ba7578 --- /dev/null +++ b/src/notifyz/hardcorefactions/combatloggers/CombatLogListener.java @@ -0,0 +1,176 @@ +package notifyz.hardcorefactions.combatloggers; + + +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.Map; +import java.util.Set; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftLivingEntity; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityInteractEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.EntityEquipment; +import org.bukkit.inventory.PlayerInventory; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.scheduler.BukkitRunnable; +import org.spigotmc.event.player.PlayerSpawnLocationEvent; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class CombatLogListener + implements Listener +{ + @SuppressWarnings("rawtypes") +private static final Set SAFE_DISCONNECTS = new HashSet(); + @SuppressWarnings("rawtypes") +private static final Map LOGGERS = new HashMap(); + private final HardcoreFactionsPlugin plugin; + + public CombatLogListener(HardcoreFactionsPlugin plugin) + { + this.plugin = plugin; + } + + public static void safelyDisconnect(Player player, String reason) + { + if (SAFE_DISCONNECTS.add(player.getUniqueId())) { + player.kickPlayer(reason); + } + } + + public static void removeCombatLoggers() + { + Iterator iterator = LOGGERS.values().iterator(); + while (iterator.hasNext()) + { + CombatLogEntry entry = iterator.next(); + entry.task.cancel(); + entry.loggerEntity.getBukkitEntity().remove(); + iterator.remove(); + } + SAFE_DISCONNECTS.clear(); + } + + @EventHandler(ignoreCancelled=true, priority=EventPriority.MONITOR) + public void onPlayerQuitSafe(PlayerQuitEvent event) + { + SAFE_DISCONNECTS.remove(event.getPlayer().getUniqueId()); + } + + @EventHandler(ignoreCancelled=true, priority=EventPriority.HIGH) + public void onLoggerInteract(EntityInteractEvent event) + { + Collection entries = LOGGERS.values(); + Iterator var3 = entries.iterator(); + while (var3.hasNext()) + { + CombatLogEntry entry = var3.next(); + if (entry.loggerEntity.getBukkitEntity().equals(event.getEntity())) + { + event.setCancelled(true); + break; + } + } + } + + @EventHandler(ignoreCancelled=true, priority=EventPriority.MONITOR) + public void onLoggerDeath(LoggerDeathEvent event) + { + CombatLogEntry entry = LOGGERS.remove(event.getLoggerEntity().getPlayerUUID()); + if (entry != null) { + entry.task.cancel(); + } + this.plugin.getTimerManager().getCombatTimer().clearCooldown(event.getLoggerEntity().getPlayerUUID()); + System.out.println("Logger died with combat timer on so we cleared it."); + } + + @EventHandler(ignoreCancelled=true, priority=EventPriority.HIGHEST) + public void onPlayerSpawnLocation(PlayerSpawnLocationEvent event) + { + CombatLogEntry combatLogEntry = LOGGERS.remove(event.getPlayer().getUniqueId()); + if (combatLogEntry != null) + { + CraftLivingEntity loggerEntity = combatLogEntry.loggerEntity.getBukkitEntity(); + Player player = event.getPlayer(); + event.setSpawnLocation(loggerEntity.getLocation()); + player.setFallDistance(loggerEntity.getFallDistance()); + player.setHealth(Math.min(((CraftPlayer)player).getMaxHealth(), loggerEntity.getHealth())); + + player.setRemainingAir(loggerEntity.getRemainingAir()); + loggerEntity.remove(); + combatLogEntry.task.cancel(); + } + } + + @EventHandler(ignoreCancelled=true, priority=EventPriority.NORMAL) + public void onPlayerQuit(PlayerQuitEvent event) + { + Player player = event.getPlayer(); + UUID uuid = player.getUniqueId(); + PlayerInventory inventory = player.getInventory(); + if ((player.getGameMode() != GameMode.CREATIVE) && (!player.isDead()) && (!SAFE_DISCONNECTS.contains(uuid))) + { + if ((this.plugin.getTimerManager().getInvincibilityTimer().getRemainingCooldown(uuid) > 0L)) { + return; + } + if (this.plugin.getTimerManager().teleportTimer.getNearbyEnemies(player, 64) <= 0) { + return; + } + Location location = player.getLocation(); + if (this.plugin.getFactionManager().getFactionAt(location).isSafezone()) { + return; + } + if (LOGGERS.containsKey(player.getUniqueId())) { + return; + } + World world = location.getWorld(); + LoggerEntity loggerEntity = new LoggerEntity(world, location, player); + LoggerSpawnEvent calledEvent = new LoggerSpawnEvent(loggerEntity); + Bukkit.getPluginManager().callEvent(calledEvent); + LOGGERS.put(uuid, new CombatLogEntry(loggerEntity, new LoggerRemovable(uuid, loggerEntity).runTaskLater(this.plugin, plugin.getConfiguration().getCombatlogDespawnDelayTicks()))); + CraftLivingEntity craftEntity = loggerEntity.getBukkitEntity(); + if (craftEntity != null) + { + CraftLivingEntity craftLivingEntity = craftEntity; + EntityEquipment entityEquipment = craftLivingEntity.getEquipment(); + entityEquipment.setItemInHand(inventory.getItemInHand()); + entityEquipment.setArmorContents(inventory.getArmorContents()); + craftLivingEntity.addPotionEffect(new PotionEffect(PotionEffectType.FIRE_RESISTANCE, 999999, 1)); + } + } + } + + private static class LoggerRemovable + extends BukkitRunnable + { + private final UUID uuid; + private final LoggerEntity loggerEntity; + + public LoggerRemovable(UUID uuid, LoggerEntity loggerEntity) + { + this.uuid = uuid; + this.loggerEntity = loggerEntity; + } + + @Override + public void run() + { + if (CombatLogListener.LOGGERS.remove(this.uuid) != null) { + this.loggerEntity.dead = true; + } + } + } +} diff --git a/src/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.java b/src/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.java new file mode 100644 index 0000000..b048dae --- /dev/null +++ b/src/notifyz/hardcorefactions/combatloggers/CustomEntityRegistration.java @@ -0,0 +1,61 @@ +package notifyz.hardcorefactions.combatloggers; + +import java.lang.reflect.Field; +import java.util.Map; +import net.minecraft.server.v1_7_R4.EntityTypes; + +public class CustomEntityRegistration +{ + public static void registerCustomEntities() + { + try + { + registerCustomEntity(LoggerEntity.class, "CraftSkeleton", 51); + } + catch (Exception var1) + { + var1.printStackTrace(); + } + } + + @SuppressWarnings("rawtypes") +public static void registerCustomEntity(Class entityClass, String name, int id) + { + setFieldPrivateStaticMap("d", entityClass, name); + setFieldPrivateStaticMap("f", entityClass, Integer.valueOf(id)); + } + + public static void unregisterCustomEntities() {} + + @SuppressWarnings("rawtypes") +public static void setFieldPrivateStaticMap(String fieldName, Object key, Object value) + { + try + { + Field ex = EntityTypes.class.getDeclaredField(fieldName); + ex.setAccessible(true); + Map map = (Map)ex.get(null); + map.put(key, value); + ex.set(null, map); + } + catch (SecurityException|IllegalArgumentException|IllegalAccessException|NoSuchFieldException var5) + { + var5.printStackTrace(); + } + } + + public static void setField(String fieldName, Object key, Object value) + { + try + { + Field ex = key.getClass().getDeclaredField(fieldName); + ex.setAccessible(true); + ex.set(key, value); + ex.setAccessible(false); + } + catch (Exception var4) + { + var4.printStackTrace(); + } + } +} diff --git a/src/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.java b/src/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.java new file mode 100644 index 0000000..b7ce213 --- /dev/null +++ b/src/notifyz/hardcorefactions/combatloggers/LoggerDeathEvent.java @@ -0,0 +1,31 @@ +package notifyz.hardcorefactions.combatloggers; + +import org.bukkit.event.Event; +import org.bukkit.event.HandlerList; + +public class LoggerDeathEvent + extends Event +{ + private static final HandlerList handlers = new HandlerList(); + private final LoggerEntity loggerEntity; + + public LoggerDeathEvent(LoggerEntity loggerEntity) + { + this.loggerEntity = loggerEntity; + } + + public static HandlerList getHandlerList() + { + return handlers; + } + + public LoggerEntity getLoggerEntity() + { + return this.loggerEntity; + } + + public HandlerList getHandlers() + { + return handlers; + } +} diff --git a/src/notifyz/hardcorefactions/combatloggers/LoggerEntity.java b/src/notifyz/hardcorefactions/combatloggers/LoggerEntity.java new file mode 100644 index 0000000..a059a71 --- /dev/null +++ b/src/notifyz/hardcorefactions/combatloggers/LoggerEntity.java @@ -0,0 +1,189 @@ +package notifyz.hardcorefactions.combatloggers; + +import java.util.ArrayList; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.OfflinePlayer; +import org.bukkit.World; +import org.bukkit.craftbukkit.v1_7_R4.CraftServer; +import org.bukkit.craftbukkit.v1_7_R4.CraftWorld; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftLivingEntity; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; +import org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory; +import org.bukkit.entity.Player; +import org.bukkit.event.entity.CreatureSpawnEvent; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.PlayerInventory; + +import com.google.common.base.Function; + +import net.minecraft.server.v1_7_R4.DamageSource; +import net.minecraft.server.v1_7_R4.Entity; +import net.minecraft.server.v1_7_R4.EntityHuman; +import net.minecraft.server.v1_7_R4.EntityPlayer; +import net.minecraft.server.v1_7_R4.EntitySkeleton; +import net.minecraft.server.v1_7_R4.PlayerInteractManager; +import net.minecraft.server.v1_7_R4.WorldServer; +import net.minecraft.util.com.mojang.authlib.GameProfile; + +public class LoggerEntity extends EntitySkeleton +{ + @SuppressWarnings("rawtypes") + private static final Function DAMAGE_FUNCTION; + private final UUID playerUUID; + + public LoggerEntity(final World world, final Location location, final Player player) { + super(((CraftWorld)world).getHandle()); + this.lastDamager = ((CraftPlayer)player).getHandle().lastDamager; + final double x = location.getX(); + final double y = location.getY(); + final double z = location.getZ(); + final String playerName = player.getName(); + final boolean hasSpawned = ((CraftWorld)world).getHandle().addEntity(this, CreatureSpawnEvent.SpawnReason.CUSTOM); + Bukkit.getConsoleSender().sendMessage(ChatColor.GOLD + "Combat Logger for [" + playerName + "] " + (hasSpawned ? (ChatColor.GREEN + "successfully spawned") : (ChatColor.RED + "failed to spawn")) + ChatColor.GOLD + " at (" + String.format("%.1f", x) + ", " + String.format("%.1f", y) + ", " + String.format("%.1f", z) + ')'); + this.playerUUID = player.getUniqueId(); + if (hasSpawned) { + this.setCustomName(playerName); + this.setCustomNameVisible(true); + this.setPositionRotation(x, y, z, location.getYaw(), location.getPitch()); + } + } + + private static PlayerNmsResult getResult(final World world, final UUID playerUUID) { + final OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerUUID); + if (offlinePlayer.hasPlayedBefore()) { + final WorldServer worldServer = ((CraftWorld)world).getHandle(); + final EntityPlayer entityPlayer = new EntityPlayer(((CraftServer)Bukkit.getServer()).getServer(), worldServer, new GameProfile(playerUUID, offlinePlayer.getName()), new PlayerInteractManager(worldServer)); + final CraftPlayer player = entityPlayer.getBukkitEntity(); + if (player != null) { + player.loadData(); + return new PlayerNmsResult(player, entityPlayer); + } + } + return null; + } + + public UUID getPlayerUUID() { + return this.playerUUID; + } + + @Override + public void move(final double d0, final double d1, final double d2) { + } + + @Override + public void b(final int i) { + } + + @Override + public void dropDeathLoot(final boolean flag, final int i) { + } + + @Override + public Entity findTarget() { + return null; + } + + @Override + public boolean damageEntity(final DamageSource damageSource, final float amount) { + final PlayerNmsResult nmsResult = getResult(this.world.getWorld(), this.playerUUID); + if (nmsResult == null) { + return true; + } + final EntityPlayer entityPlayer = nmsResult.entityPlayer; + if (entityPlayer != null) { + entityPlayer.setPosition(this.locX, this.locY, this.locZ); + final EntityDamageEvent event = CraftEventFactory.handleLivingEntityDamageEvent(entityPlayer, damageSource, amount, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, LoggerEntity.DAMAGE_FUNCTION, LoggerEntity.DAMAGE_FUNCTION, LoggerEntity.DAMAGE_FUNCTION, LoggerEntity.DAMAGE_FUNCTION, LoggerEntity.DAMAGE_FUNCTION, LoggerEntity.DAMAGE_FUNCTION); + if (event.isCancelled()) { + return false; + } + } + return super.damageEntity(damageSource, amount); + } + + @Override + public boolean a(final EntityHuman entityHuman) { + return false; + } + + @Override + public void h() { + super.h(); + } + + @Override + public void collide(final Entity entity) { + } + + @Override + @SuppressWarnings("rawtypes") + public void die(final DamageSource damageSource) { + final PlayerNmsResult playerNmsResult = getResult(this.world.getWorld(), this.playerUUID); + if (playerNmsResult != null) { + final Player player = playerNmsResult.player; + final PlayerInventory inventory = player.getInventory(); + final boolean keepInventory = this.world.getGameRules().getBoolean("keepInventory"); + final ArrayList drops = new ArrayList(); + if (!keepInventory) { + for (final ItemStack loggerDeathEvent : inventory.getContents()) { + if (loggerDeathEvent != null && loggerDeathEvent.getType() != Material.AIR) { + drops.add(loggerDeathEvent); + } + } + for (final ItemStack loggerDeathEvent : inventory.getArmorContents()) { + if (loggerDeathEvent != null && loggerDeathEvent.getType() != Material.AIR) { + drops.add(loggerDeathEvent); + } + } + } + String var13 = ChatColor.RED + "(Combat-Logger) " + this.combatTracker.b().c(); + final EntityPlayer var14 = playerNmsResult.entityPlayer; + var14.combatTracker = this.combatTracker; + if (Bukkit.getPlayer(var14.getName()) != null) { + Bukkit.getPlayer(var14.getUniqueID()).getInventory().clear(); + Bukkit.getPlayer(var14.getUniqueID()).kickPlayer("error"); + } + final PlayerDeathEvent var15 = CraftEventFactory.callPlayerDeathEvent(var14, drops, var13, keepInventory); + var13 = var15.getDeathMessage(); + if (var13 != null && !var13.isEmpty()) { + Bukkit.broadcastMessage(var13); + } + super.die(damageSource); + final LoggerDeathEvent var16 = new LoggerDeathEvent(this); + Bukkit.getPluginManager().callEvent(var16); + if (!var15.getKeepInventory()) { + inventory.clear(); + inventory.setArmorContents(new ItemStack[inventory.getArmorContents().length]); + } + var14.setLocation(this.locX, this.locY, this.locZ, this.yaw, this.pitch); + var14.setHealth(0.0f); + player.saveData(); + } + } + + @Override + public CraftLivingEntity getBukkitEntity() { + return (CraftLivingEntity)super.getBukkitEntity(); + } + + static { + DAMAGE_FUNCTION = (f1 -> 0.0); + } + + public static final class PlayerNmsResult + { + public final Player player; + public final EntityPlayer entityPlayer; + + public PlayerNmsResult(final Player player, final EntityPlayer entityPlayer) { + this.player = player; + this.entityPlayer = entityPlayer; + } + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.java b/src/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.java new file mode 100644 index 0000000..ae7d86c --- /dev/null +++ b/src/notifyz/hardcorefactions/combatloggers/LoggerSpawnEvent.java @@ -0,0 +1,31 @@ +package notifyz.hardcorefactions.combatloggers; + +import org.bukkit.event.Event; +import org.bukkit.event.HandlerList; + +public class LoggerSpawnEvent + extends Event +{ + private static final HandlerList handlers = new HandlerList(); + private final LoggerEntity loggerEntity; + + public LoggerSpawnEvent(LoggerEntity loggerEntity) + { + this.loggerEntity = loggerEntity; + } + + public static HandlerList getHandlerList() + { + return handlers; + } + + public LoggerEntity getLoggerEntity() + { + return this.loggerEntity; + } + + public HandlerList getHandlers() + { + return handlers; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/BackCommand.java b/src/notifyz/hardcorefactions/commands/essentials/BackCommand.java new file mode 100644 index 0000000..72a6335 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/BackCommand.java @@ -0,0 +1,79 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.event.player.PlayerTeleportEvent; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.api.utilties.command.IConstantsAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.user.IUser; + +public class BackCommand extends ICommandAPI implements Listener +{ + private HardcoreFactionsPlugin plugin; + + public BackCommand(HardcoreFactionsPlugin plugin) { + super("back", "Go to a players last known location."); + this.setUsage("/(command) [playerName]"); + Bukkit.getPluginManager().registerEvents(this, this.plugin = plugin); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + Player target; + if (args.length > 0 && sender.hasPermission(command.getPermission() + ".others")) { + target = BukkitUtils.playerWithNameOrUUID(args[0]); + if (target == null) { + sender.sendMessage(String.format(IConstantsAPI.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[0])); + return true; + } + } + else { + target = (Player)sender; + } + IUser targetUser = this.plugin.getUserManagerr().getUser(target.getUniqueId()); + Location previous = targetUser.getBackLocation(); + if (previous == null) { + sender.sendMessage(ChatColor.RED + target.getName() + " doesn't have a back location."); + return true; + } + ((Player)sender).teleport(previous); + sender.sendMessage(ChatColor.YELLOW + "Teleported to back location of " + target.getName() + '.'); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return (args.length == 1) ? null : Collections.emptyList(); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerDeath(PlayerDeathEvent event) { + Player player = event.getEntity(); + this.plugin.getUserManagerr().getUser(player.getUniqueId()).setBackLocation(player.getLocation().clone()); + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerTeleport(PlayerTeleportEvent event) { + if (event.getCause() != PlayerTeleportEvent.TeleportCause.ENDER_PEARL) { + this.plugin.getUserManagerr().getUser(event.getPlayer().getUniqueId()).setBackLocation(event.getFrom().clone()); + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/BroadcastCommand.java b/src/notifyz/hardcorefactions/commands/essentials/BroadcastCommand.java new file mode 100644 index 0000000..bb19db1 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/BroadcastCommand.java @@ -0,0 +1,33 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class BroadcastCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("broadcast")) { + if (!sender.hasPermission("hcf.command.broadcast") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (args.length == 0) { + sender.sendMessage("§cUsage: /broadcast "); + return true; + } + StringBuilder str = new StringBuilder(); + for(int i = 0; i < args.length; i++) { + str.append(args[i] + " "); + } + String msg = str.toString(); + Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.alert-message").replace("%message%", msg.toString()))); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/DisableChatCommand.java b/src/notifyz/hardcorefactions/commands/essentials/DisableChatCommand.java new file mode 100644 index 0000000..edf38bb --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/DisableChatCommand.java @@ -0,0 +1,51 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.concurrent.TimeUnit; + +import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; + +public class DisableChatCommand extends ICommandAPI { + private static final long DEFAULT_DELAY; + private final HardcoreFactionsPlugin plugin; + + public DisableChatCommand(HardcoreFactionsPlugin plugin) { + super("disablechat", "Disables the chat for non-staff."); + this.setAliases(new String[] { "mutechat", "restrictchat", "mc", "rc" }); + this.setUsage("/(command)"); + this.plugin = plugin; + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, + final String[] args) { + final long oldTicks = this.plugin.getServerHandler().getRemainingChatDisabledMillis(); + long newTicks; + if (oldTicks > 0L) { + newTicks = 0L; + } else if (args.length < 1) { + newTicks = DisableChatCommand.DEFAULT_DELAY; + } else { + newTicks = JavaUtils.parse(StringUtils.join(args, ' ', 0, args.length)); + if (newTicks == -1L) { + sender.sendMessage(ChatColor.RED + "Invalid duration, use the correct format: 10m1s"); + return true; + } + } + this.plugin.getServerHandler().setChatDisabledMillis(newTicks); + Bukkit.broadcastMessage(ChatColor.YELLOW + "Global chat is now " + ((newTicks > 0L) ? (ChatColor.RED + "disabled" + ChatColor.YELLOW + " for " + ChatColor.GOLD + DurationFormatUtils.formatDurationWords(newTicks, true, true)) : (ChatColor.GREEN + "enabled"))); + return true; + } + + static { + DEFAULT_DELAY = TimeUnit.MINUTES.toMillis(3L); + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/EnchantCommand.java b/src/notifyz/hardcorefactions/commands/essentials/EnchantCommand.java new file mode 100644 index 0000000..d31ea9a --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/EnchantCommand.java @@ -0,0 +1,147 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; + +public class EnchantCommand implements CommandExecutor { + + + public static String convertEnchantmentAliases(String args) { + String s = args; + if (args.equalsIgnoreCase("protection") || args.equalsIgnoreCase("prot")) { + s = "PROTECTION_ENVIRONMENTAL"; + } + if (args.equalsIgnoreCase("fireprotection") || args.equalsIgnoreCase("fireprot")) { + s = "PROTECTION_FIRE"; + } + if (args.equalsIgnoreCase("silktouch") || args.equalsIgnoreCase("silk")) { + s = "SILK_TOUCH"; + } + if (args.equalsIgnoreCase("featherfalling") || args.equalsIgnoreCase("ff") || args.equalsIgnoreCase("fallprotection") || args.equalsIgnoreCase("fallprot")) { + s = "PROTECTION_FALL"; + } + if (args.equalsIgnoreCase("unbreaking") || args.equalsIgnoreCase("dura")) { + s = "DURABILITY"; + } + if (args.equalsIgnoreCase("blastprotection") || args.equalsIgnoreCase("blastprot")) { + s = "PROTECTION_EXPLOSIONS"; + } + if (args.equalsIgnoreCase("fortune") || args.equalsIgnoreCase("fort")) { + s = "LOOT_BONUS_BLOCKS"; + } + if (args.equalsIgnoreCase("efficiency") || args.equalsIgnoreCase("eff")) { + s = "DIG_SPEED"; + } + if (args.equalsIgnoreCase("projectileprotection") || args.equalsIgnoreCase("projectileprot") || args.equalsIgnoreCase("projprot") || args.equalsIgnoreCase("proj")) { + s = "PROTECTION_PROJECTILE"; + } + if (args.equalsIgnoreCase("sharpness") || args.equalsIgnoreCase("sharp")) { + s = "DAMAGE_ALL"; + } + if (args.equalsIgnoreCase("power")) { + s = "ARROW_DAMAGE"; + } + if (args.equalsIgnoreCase("smite")) { + s = "DAMAGE_UNDEAD"; + } + if (args.equalsIgnoreCase("punch")) { + s = "ARROW_KNOCKBACK"; + } + if (args.equalsIgnoreCase("baneofarthropods") || args.equalsIgnoreCase("arthropods") || args.equalsIgnoreCase("bane")) { + s = "DAMAGE_ARTHROPODS"; + } + if (args.equalsIgnoreCase("flame")) { + s = "ARROW_FIRE"; + } + if (args.equalsIgnoreCase("kb")) { + s = "KNOCKBACK"; + } + if (args.equalsIgnoreCase("infinity") || args.equalsIgnoreCase("infinite")) { + s = "ARROW_INFINITE"; + } + if (args.equalsIgnoreCase("fireaspect") || args.equalsIgnoreCase("fire") || args.equalsIgnoreCase("aspect")) { + s = "FIRE_ASPECT"; + } + if (args.equalsIgnoreCase("looting") || args.equalsIgnoreCase("loot")) { + s = "LOOT_BONUS_MOBS"; + } + int n = 0; + Enchantment[] enchants = Enchantment.values(); + for (Enchantment enchant : enchants) { + if (s.equalsIgnoreCase(enchant.getName())) { + n++; + } + } + if (n == 0) { + s = "Invalid"; + } + return s.toUpperCase(); + } + + public boolean isInt(String s) { + try{ + Integer.parseInt(s); + return true; + } catch(NumberFormatException e) { + return false; + } + } + + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (cmd.getName().equalsIgnoreCase("enchant")) { + if (!sender.hasPermission("hcf.command.enchant") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (args.length == 0 || args.length == 1) { + sender.sendMessage("§c/enchant [enchantment] [level]"); + return true; + } + Player p = (Player) sender; + + ItemStack i = p.getItemInHand(); + String enchantment = convertEnchantmentAliases(args[0]); + if (enchantment.equalsIgnoreCase("Invalid")) { + sender.sendMessage("§cInvalid enchantment ID."); + return true; + } + if (i.getType() == Material.AIR) { + sender.sendMessage("§cYou must have an item in your hand."); + return true; + } + if (!isInt(args[1])) { + sender.sendMessage("§cLevel must be an integer."); + return true; + } + int level = Integer.parseInt(args[1]); + if (level < 0) { + sender.sendMessage("§cLevel cannot be negative of less than 0."); + return true; + } + if (level == 0) { + if (!i.containsEnchantment(Enchantment.getByName(enchantment))) { + sender.sendMessage("§eThis item doesn't contain the enchantment §c" + args[0] + "§e."); + return true; + } + i.removeEnchantment(Enchantment.getByName(enchantment)); + sender.sendMessage("§eYou have removed the enchantment §c" + args[0] + " §efrom the item in your hand."); + }else{ + i.addUnsafeEnchantment(Enchantment.getByName(enchantment), level); + sender.sendMessage("§eYou have binded §c" + args[0] + " §elevel §c" + level + " §eto the item in your hand."); + } + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/FeedCommand.java b/src/notifyz/hardcorefactions/commands/essentials/FeedCommand.java new file mode 100644 index 0000000..9df985d --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/FeedCommand.java @@ -0,0 +1,50 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class FeedCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("feed")) { + if (!sender.hasPermission("hcf.command.feed") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage("§cNo Console"); + return true; + } + Player p = (Player) sender; + p.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.feed-message"))); + p.setFoodLevel(20); + p.setSaturation(10); + return true; + } + if (args.length > 1) { + sender.sendMessage("§c/feed "); + return true; + } + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + sender.sendMessage("§c" + t.getName() + "'s §eappetite has been repleted."); + t.sendMessage("§eYour appetite has been repleted by §c" + sender.getName() + "§e."); + t.setFoodLevel(20); + t.setSaturation(10); + return true; + } + return true; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/FlyCommand.java b/src/notifyz/hardcorefactions/commands/essentials/FlyCommand.java new file mode 100644 index 0000000..d93f1dd --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/FlyCommand.java @@ -0,0 +1,65 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class FlyCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("fly")) { + if (!sender.hasPermission("hcf.command.fly") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = (Player) sender; + if (!p.getAllowFlight()) { + p.setAllowFlight(true); + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.flight-enabled"))); + return true; + } + if (p.getAllowFlight()) { + p.setAllowFlight(false); + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.flight-disabled"))); + return true; + } + } + + if (args.length == 1) { + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + if (!t.getAllowFlight()) { + t.setAllowFlight(true); + sender.sendMessage("§c" + t.getName() + " §enow has flight set to §cenabled§e."); + t.sendMessage("§eYou now have flight §cenabled§e."); + return true; + } + if (t.getAllowFlight()) { + t.setAllowFlight(false); + sender.sendMessage("§c" + t.getName() + " §enow has flight set to §cdisabled§e."); + t.sendMessage("§eYou now have flight §cdisabled§e."); + return true; + } + return true; + } + + sender.sendMessage("§cUsage: /fly [player]"); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.java b/src/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.java new file mode 100644 index 0000000..706673e --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/FreezeAllCommand.java @@ -0,0 +1,36 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class FreezeAllCommand implements CommandExecutor { + + private final HardcoreFactionsPlugin plugin; + + public FreezeAllCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + + if (args.length > 0) { + sender.sendMessage(ChatColor.RED + "Usage: /freezeall"); + return true; + } + + if (plugin.getFreezeAllListener().isServerFrozen()) { + plugin.getFreezeAllListener().setServerFreeze(false); + sender.sendMessage(ChatColor.GREEN + "Server is no longer frozen."); + return true; + } else { + plugin.getFreezeAllListener().setServerFreeze(true); + sender.sendMessage(ChatColor.RED + "Server is now frozen."); + return true; + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/FreezeCommand.java b/src/notifyz/hardcorefactions/commands/essentials/FreezeCommand.java new file mode 100644 index 0000000..5979a8c --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/FreezeCommand.java @@ -0,0 +1,67 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.Color; +import notifyz.hardcorefactions.utilities.utils.Utils; + +public class FreezeCommand implements CommandExecutor, TabCompleter { + + private final HardcoreFactionsPlugin staffMode = HardcoreFactionsPlugin.getPlugin(); + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length == 0 || args.length > 1) { + sender.sendMessage(Color.translate("&cUsage: /" + label + " ")); + } else { + Player target = Bukkit.getServer().getPlayerExact(args[0]); + if (target == null) { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.freeze-player-not-found").replace("%target%", args[0]))); + } else { + if (target.equals(sender)) { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.freeze-no-yourself"))); + } else { + if (sender instanceof Player) { + if (target.hasPermission("hcf.command.freeze") || target.isOp()) { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.freeze-no-staffmember"))); + } else { + if (staffMode.getFreezeListener().isFrozen(target)) { + staffMode.getFreezeListener().setFreeze(sender, target, false); + } else { + Bukkit.dispatchCommand(sender, "msg " + args[0]+ " You have been frozen. Please, join our teamspeak, " + Utils.TEAMSPEAK + ". If you logout it'll result in a permanent ban due to your refusing to screenshare."); + staffMode.getFreezeListener().setFreeze(sender, target, true); + } + } + } else { + if (staffMode.getFreezeListener().isFrozen(target)) { + staffMode.getFreezeListener().setFreeze(sender, target, false); + } else { + Bukkit.dispatchCommand(sender, "msg " + args[0] + " You have been frozen. Please, join our teamspeak, " + Utils.TEAMSPEAK + ". If you logout it'll result in a permanent ban due to your refusing to screenshare."); + staffMode.getFreezeListener().setFreeze(sender, target, true); + } + } + } + } + } + return true; + } + + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + if (args.length > 1) { + return Collections.emptyList(); + } + return null; + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/essentials/GamemodeCommand.java b/src/notifyz/hardcorefactions/commands/essentials/GamemodeCommand.java new file mode 100644 index 0000000..e4b10ee --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/GamemodeCommand.java @@ -0,0 +1,188 @@ +package notifyz.hardcorefactions.commands.essentials; + + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.GameMode; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class GamemodeCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("gamemode")) { + if (!sender.hasPermission("hcf.command.gamemode") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + + if (args.length != 0) { + if (args[0].equalsIgnoreCase("survival") || args[0].equalsIgnoreCase("s") || args[0].equalsIgnoreCase("0")) { + if (args.length == 1) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = (Player) sender; + p.setGameMode(GameMode.SURVIVAL); + sender.sendMessage("§eYou have set your gamemode to §cSurvival§e."); + return true; + } + if (args.length == 2) { + Player t = Bukkit.getPlayer(args[1]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.setGameMode(GameMode.SURVIVAL); + sender.sendMessage("§eYou have set the gamemode of §c" + t.getName() + " §eto §cSurvival§e."); + return true; + } + } + + if (args[0].equalsIgnoreCase("creative") || args[0].equalsIgnoreCase("c") || args[0].equalsIgnoreCase("1")) { + if (args.length == 1) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + Player p = (Player) sender; + p.setGameMode(GameMode.CREATIVE); + sender.sendMessage("§eYou have set your gamemode to §cCreative§e."); + return true; + } + if (args.length == 2) { + Player t = Bukkit.getPlayer(args[1]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.setGameMode(GameMode.CREATIVE); + sender.sendMessage("§eYou have set the gamemode of §c" + t.getName() + " §eto §cCreative§e."); + return true; + } + } + + if (args[0].equalsIgnoreCase("adventure") || args[0].equalsIgnoreCase("a") || args[0].equalsIgnoreCase("2")) { + if (args.length == 1) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + Player p = (Player) sender; + p.setGameMode(GameMode.ADVENTURE); + sender.sendMessage("§eYou have set your gamemode to §cAdventure§e."); + return true; + } + if (args.length == 2) { + Player t = Bukkit.getPlayer(args[1]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.setGameMode(GameMode.ADVENTURE); + sender.sendMessage("§eYou have set the gamemode of §c" + t.getName() + " §eto §cAdventure§e."); + return true; + } + } + } + + sender.sendMessage("§c/gamemode "); + } + + if (cmd.getName().equalsIgnoreCase("gamemodes")) { + if (!sender.hasPermission("hcf.command.gamemode") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = (Player) sender; + p.setGameMode(GameMode.SURVIVAL); + sender.sendMessage("§eYou have set your gamemode to §cSurvival§e."); + return true; + } + + if (args.length == 1) { + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.setGameMode(GameMode.SURVIVAL); + sender.sendMessage("§eYou have set the gamemode of §c" + t.getName() + " §eto §cSurvival§e."); + return true; + } + + sender.sendMessage("§c/gms "); + } + + if (cmd.getName().equalsIgnoreCase("gamemodec")) { + if (!sender.hasPermission("hcf.command.gamemode") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + Player p = (Player) sender; + p.setGameMode(GameMode.CREATIVE); + sender.sendMessage("§eYou have set your gamemode to §cCreative§e."); + return true; + } + if (args.length == 1) { + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.setGameMode(GameMode.CREATIVE); + sender.sendMessage("§eYou have set the gamemode of §c" + t.getName() + " §eto §cCreative§e."); + return true; + } + + sender.sendMessage("§c/gmc "); + } + + if (cmd.getName().equalsIgnoreCase("gamemodea")) { + if (!sender.hasPermission("hcf.command.gamemode") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + Player p = (Player) sender; + p.setGameMode(GameMode.ADVENTURE); + sender.sendMessage("§eYou have set your gamemode to §cAdventure§e."); + return true; + } + if (args.length == 1) { + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.setGameMode(GameMode.ADVENTURE); + sender.sendMessage("§eYou have set the gamemode of §c" + t.getName() + " §eto §cAdventure§e."); + return true; + } + + sender.sendMessage("§c/gma "); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/GiveCommand.java b/src/notifyz/hardcorefactions/commands/essentials/GiveCommand.java new file mode 100644 index 0000000..20d5733 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/GiveCommand.java @@ -0,0 +1,84 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; + +import notifyz.hardcorefactions.utilities.api.IPluginAPI; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; + +public class GiveCommand extends ICommandAPI { + public GiveCommand() { + super("give", "Spawns an item."); + this.setAliases(new String[] { "i", "get", "item" }); + this.setUsage("/(command) [quantity]"); + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, + final String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + final Player p = (Player) sender; + if (args.length == 0) { + p.sendMessage(ChatColor.RED + this.getUsage()); + return true; + } + if (IPluginAPI.getPlugin().getItemDb().getItem(args[0]) == null) { + sender.sendMessage(ChatColor.GOLD + "Item named or with ID '" + ChatColor.RESET + args[0] + ChatColor.GOLD + + "' not found."); + return true; + } + if (args.length == 1) { + if (!p.getInventory().addItem(new ItemStack[] { IPluginAPI.getPlugin().getItemDb().getItem(args[0], + IPluginAPI.getPlugin().getItemDb().getItem(args[0]).getMaxStackSize()) }).isEmpty()) { + p.sendMessage(ChatColor.RED + "Your inventory is full."); + return true; + } + for (final Player on : Bukkit.getOnlinePlayers()) { + if (on.hasPermission("base.command.give")) { + if (on != p) { + on.sendMessage(ChatColor.GRAY + "[" + ChatColor.GOLD + p.getName() + ChatColor.YELLOW + + " has given himself " + ChatColor.GRAY + + IPluginAPI.getPlugin().getItemDb().getItem(args[0]).getMaxStackSize() + ", " + + IPluginAPI.getPlugin().getItemDb() + .getName(IPluginAPI.getPlugin().getItemDb().getItem(args[0])) + + "]"); + } else { + on.sendMessage(ChatColor.GOLD + "You gave yourself " + + IPluginAPI.getPlugin().getItemDb().getItem(args[0]).getMaxStackSize() + ", " + + IPluginAPI.getPlugin().getItemDb() + .getName(IPluginAPI.getPlugin().getItemDb().getItem(args[0]))); + } + } + } + } + if (args.length == 2) { + if (!p.getInventory().addItem( + new ItemStack[] { IPluginAPI.getPlugin().getItemDb().getItem(args[0], Integer.parseInt(args[1])) }) + .isEmpty()) { + p.sendMessage(ChatColor.RED + "Your inventory is full."); + return true; + } + for (final Player on : Bukkit.getOnlinePlayers()) { + if (on.hasPermission("base.command.give")) { + if (on != p) { + on.sendMessage(ChatColor.GRAY + "[" + ChatColor.GOLD + p.getName() + ChatColor.YELLOW + + " has given himself" + ChatColor.GRAY + " " + args[1] + ", " + IPluginAPI.getPlugin() + .getItemDb().getName(IPluginAPI.getPlugin().getItemDb().getItem(args[0])) + + " ]"); + } else { + on.sendMessage(ChatColor.GOLD + "You gave yourself " + args[1] + ", " + IPluginAPI.getPlugin() + .getItemDb().getName(IPluginAPI.getPlugin().getItemDb().getItem(args[0]))); + } + } + } + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/GiveawayCommand.java b/src/notifyz/hardcorefactions/commands/essentials/GiveawayCommand.java new file mode 100644 index 0000000..bed366c --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/GiveawayCommand.java @@ -0,0 +1,89 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.IllegalFormatException; + +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.AsyncPlayerChatEvent; + +import notifyz.hardcorefactions.utilities.utils.RandomUtils; +import notifyz.hardcorefactions.utilities.utils.Utils; + +public class GiveawayCommand implements CommandExecutor, Listener { + public static boolean giveawayActive = false; + public static int giveawayNumber = 0; + + public static void endGiveaway() { + giveawayActive = false; + giveawayNumber = 0; + } + + public static void endGiveaway(Player winner) { + if (winner.getType() + "giveawayNumber" != null) + Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), "disablechat"); + Bukkit.broadcastMessage("§8[§4§l" + Utils.SERVER_NAME + "§8] §4» §cThe giveaway has been §cended§c. The winner is §4§l" + winner.getName() + "§c who guessed the correct number, §c" + giveawayNumber + "§c."); + giveawayActive = false; + giveawayNumber = 0; + } + + @EventHandler + public void playerWinGiveaway(AsyncPlayerChatEvent e) { + if (giveawayActive) { + try { + //int no = Integer.parseInt(e.getMessage()); + if (e.getMessage().contains(giveawayNumber + "")) { + endGiveaway(e.getPlayer()); + } + } catch (IllegalFormatException ee) { + } + } + } + + @Override + public boolean onCommand(CommandSender s, Command cmd, String label, String[] args) { + + if (s.isOp()) { + if (args.length == 0) { + s.sendMessage("§cTo start the giveaway use /giveaway start (maxNumber)."); + s.sendMessage("§cTo end the giveaway use /giveaway end."); + } else if (args.length == 1) { + if (args[0].equalsIgnoreCase("end") || args[0].equalsIgnoreCase("stop") + || args[0].equalsIgnoreCase("cancel")) { + if (giveawayActive) { + giveawayActive = false; + Bukkit.broadcastMessage("§8[§4§l" + Utils.SERVER_NAME + "§8] §4» §cThe giveaway has been §ccancelled§c. The correct number was §c" + giveawayNumber + "§c."); + } else { + s.sendMessage("§cThere is no active giveaway."); + } + } else { + s.sendMessage("§cTo start the giveaway use /giveaway start (maxNumber)."); + s.sendMessage("§cTo end the giveaway use /giveaway end."); + } + } else if (args.length == 2) { + if (args[0].equalsIgnoreCase("start")) { + try { + int no = Integer.parseInt(args[1]); + giveawayActive = true; + RandomUtils utils = new RandomUtils(); + giveawayNumber = utils.getRandomNumber(1, no); + s.sendMessage("§aThe winning number is " + giveawayNumber + "!"); + Bukkit.broadcastMessage("§8[§4§l" + Utils.SERVER_NAME + "§8] §4» §cA giveaway has started. Type a number in chat between 1 and " + + no + " to enter!"); + } catch (IllegalFormatException e) { + s.sendMessage("§cYou did not enter a valid integer. (0-" + Integer.MAX_VALUE + ")"); + } + } + } + } else { + s.sendMessage("§cYou do not have permission."); + } + + return true; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/GodCommand.java b/src/notifyz/hardcorefactions/commands/essentials/GodCommand.java new file mode 100644 index 0000000..0d47669 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/GodCommand.java @@ -0,0 +1,64 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.ArrayList; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class GodCommand implements CommandExecutor { + + public static ArrayList god = new ArrayList(); + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + + if (cmd.getName().equalsIgnoreCase("god")) { + if (!sender.hasPermission("hcf.command.god") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (args.length == 0) { + if (!god.contains(sender.getName())) { + god.add(sender.getName()); + sender.sendMessage("§eYou have §cenabled §egod mode."); + }else{ + god.remove(sender.getName()); + sender.sendMessage("§eYou have §cdisabled §egod mode."); + } + return true; + } + + if (args.length == 1) { + if (!sender.hasPermission("hcf.command.god.others") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + if (!god.contains(t.getName())) { + god.add(t.getName()); + t.sendMessage("§eGod mode §cenabled§e by §c" + sender.getName() + "§e!"); + sender.sendMessage("§eGod mode §cenabled §efor §c" + t.getName() + "§e."); + }else{ + god.remove(t.getName()); + t.sendMessage("§eGod mode §cdisabled§e by §c" + sender.getName() + "§e!"); + sender.sendMessage("§eGod mode §cdisabled §efor §c" + t.getName() + "§e."); + } + return true; + } + sender.sendMessage("§cUsage: /god [player]"); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/GuiFreezeCommand.java b/src/notifyz/hardcorefactions/commands/essentials/GuiFreezeCommand.java new file mode 100644 index 0000000..43b8277 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/GuiFreezeCommand.java @@ -0,0 +1,114 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryCloseEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.scheduler.BukkitRunnable; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.Color; +import notifyz.hardcorefactions.utilities.utils.Utils; + +public class GuiFreezeCommand implements CommandExecutor, Listener { + private HardcoreFactionsPlugin plugin; + + public GuiFreezeCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String s, String[] args) { + if (!sender.hasPermission("hcf.command.guifreeze")) { + sender.sendMessage(ChatColor.RED + "You do not have permission to execute this command."); + return true; + } + if (args.length != 1) { + return false; + } + Player target = this.plugin.getServer().getPlayer(args[0]); + if (target == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline."); + return true; + } + if(target == sender) { + sender.sendMessage(ChatColor.RED + "You cannot freeze yourself."); + return true; + } + if (this.plugin.getFrozenManager().isFrozen(target.getUniqueId())) { + this.plugin.getFrozenManager().unfreezeUUID(target.getUniqueId()); + sender.sendMessage(ChatColor.GREEN + "You unfroze " + target.getName()); + target.sendMessage(ChatColor.GREEN + "You have been unfrozen by a staff member."); + target.closeInventory(); + return true; + } + this.plugin.getFrozenManager().freezeUUID(target.getUniqueId()); + sender.sendMessage(ChatColor.GREEN + "You froze " + target.getName()); + target.sendMessage(ChatColor.GRAY + BukkitUtils.STRAIGHT_LINE_DEFAULT); + target.sendMessage(""); + target.sendMessage(Color.translate("&eYou have been&4&l Frozen&e.")); + target.sendMessage(Color.translate(" &eYou have 3 minutes to join teamspeak.")); + target.sendMessage(Color.translate(" &eTeamSpeak: &4&l" + Utils.TEAMSPEAK)); + target.sendMessage(""); + target.sendMessage(Color.translate("&eIf you log out you will be&4&l BANNED&e.")); + target.sendMessage(""); + target.sendMessage(ChatColor.GRAY + BukkitUtils.STRAIGHT_LINE_DEFAULT); + target.openInventory(this.plugin.getInventoryManager().getFrozenInv()); + return true; + } + + @EventHandler + public void onEntityDamageByEntity(EntityDamageByEntityEvent e) { + if (e.getEntity() instanceof Player && e.getDamager() instanceof Player) { + Player playerDamaged = (Player)e.getEntity(); + Player playerDamager = (Player)e.getDamager(); + if (this.plugin.getFrozenManager().isFrozen(playerDamaged.getUniqueId()) || this.plugin.getFrozenManager().isFrozen(playerDamager.getUniqueId())) { + e.setCancelled(true); + } + } + } + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + if (event.getClickedInventory() != null) { + Inventory inv = event.getInventory(); + if ((inv.getName() != null) && (inv.getName().contains(ChatColor.DARK_RED + ChatColor.BOLD.toString() + "Frozen!"))) { + event.setCancelled(true); + if ((event.getCurrentItem() == null) && (event.getCurrentItem().getType() == Material.AIR)) { + event.setCancelled(true); + return; + } + ItemStack item = event.getCurrentItem(); + switch (item.getType()) { + case BOOK_AND_QUILL: + break; + default: + break; + } + } + } + } + + @EventHandler + public void onInvClose(InventoryCloseEvent e) { + Player player = (Player)e.getPlayer(); + if (this.plugin.getFrozenManager().isFrozen(player.getUniqueId())) { + new BukkitRunnable() { + @Override + public void run() { + player.openInventory(HardcoreFactionsPlugin.getPlugin().getInventoryManager().getFrozenInv()); + } + }.runTaskLater(this.plugin, 1L); + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/HatCommand.java b/src/notifyz/hardcorefactions/commands/essentials/HatCommand.java new file mode 100644 index 0000000..200dce5 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/HatCommand.java @@ -0,0 +1,54 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.PlayerInventory; + +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; + +public class HatCommand extends ICommandAPI { + public HatCommand() { + super("hat", "Wear something on your head."); + this.setUsage("/(command)"); + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, + final String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + final Player player = (Player) sender; + final ItemStack stack = player.getItemInHand(); + if (stack == null || stack.getType() == Material.AIR) { + sender.sendMessage(ChatColor.RED + "You are not holding anything."); + return true; + } + if (stack.getType().getMaxDurability() != 0) { + sender.sendMessage(ChatColor.RED + "The item you are holding is not suitable to wear for a hat."); + return true; + } + final PlayerInventory inventory = player.getInventory(); + ItemStack helmet = inventory.getHelmet(); + if (helmet != null && helmet.getType() != Material.AIR) { + sender.sendMessage(ChatColor.RED + "You are already wearing something as your hat."); + return true; + } + int amount = stack.getAmount(); + if (amount > 1) { + --amount; + stack.setAmount(amount); + } else { + player.setItemInHand(new ItemStack(Material.AIR, 1)); + } + helmet = stack.clone(); + helmet.setAmount(1); + inventory.setHelmet(helmet); + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/HealCommand.java b/src/notifyz/hardcorefactions/commands/essentials/HealCommand.java new file mode 100644 index 0000000..bee201c --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/HealCommand.java @@ -0,0 +1,53 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class HealCommand implements CommandExecutor { + + @Override + @SuppressWarnings("deprecation") + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("heal")) { + if (!sender.hasPermission("hcf.command.heal") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage("§cNo Console"); + return true; + } + Player p = (Player) sender; + p.sendMessage("§eYou have been §ccured §eof any diseases."); + p.setHealth(20); + p.setFireTicks(0); + p.setFoodLevel(20); + p.setSaturation(10); + return true; + } + if (args.length > 1) { + sender.sendMessage("§c/heal "); + return true; + } + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + sender.sendMessage("§c" + t.getName() + " §ehas been cured of any diseases."); + t.sendMessage("§eYou have been §ccured §eof any diseases thanks to §c" + sender.getName() + "§e."); + t.setHealth(20); + t.setFireTicks(0); + t.setFoodLevel(20); + t.setSaturation(10); + return true; + } + return true; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.java b/src/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.java new file mode 100644 index 0000000..ba7024b --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/HideStaffCommand.java @@ -0,0 +1,41 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.listeners.essentials.HideStaffListener; + +public class HideStaffCommand implements CommandExecutor +{ + + @Override + public boolean onCommand(CommandSender player, Command cmd, String label, String[] args) { + Player sender = (Player)player; + HideStaffListener.getStaff(); + if (!(player instanceof Player)) { + player.sendMessage(ChatColor.RED + "You must be a player to use this commad."); + } + else if (!player.hasPermission("hcf.command.hidestaff")) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.no-permission"))); + } + else if (HideStaffListener.showStaffEnabled(sender)) { + HideStaffListener.showStaff.put(sender, false); + for (int i = 0; i < HideStaffListener.staff.size(); ++i) { + sender.hidePlayer(HideStaffListener.staff.get(i)); + } + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.hidestaff-hide"))); + } + else { + HideStaffListener.showStaff.put(sender, true); + for (int i = 0; i < HideStaffListener.staff.size(); ++i) { + sender.showPlayer(HideStaffListener.staff.get(i)); + } + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.hidestaff-show"))); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.java b/src/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.java new file mode 100644 index 0000000..3fef14f --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/IgnoreCommand.java @@ -0,0 +1,220 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Set; +import java.util.UUID; + +import org.apache.commons.lang.StringUtils; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandArgument; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandWrapper; +import notifyz.hardcorefactions.utilities.api.utilties.command.IConstantsAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.user.IUser; +import notifyz.hardcorefactions.utilities.utils.StaffPriority; + +public class IgnoreCommand extends ICommandAPI { + private final ICommandWrapper handler; + + public IgnoreCommand(HardcoreFactionsPlugin plugin) { + super("ignore", "Ignores a player from messages."); + this.setUsage("/(command) [playerName]"); + ArrayList arguments = new ArrayList<>(4); + arguments.add(new IgnoreClearArgument(plugin)); + arguments.add(new IgnoreListArgument(plugin)); + arguments.add(new IgnoreAddArgument(plugin)); + arguments.add(new IgnoreDeleteArgument(plugin)); + Collections.sort(arguments, new ICommandWrapper.ArgumentComparator()); + this.handler = new ICommandWrapper(arguments); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + return this.handler.onCommand(sender, command, label, args); + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return this.handler.onTabComplete(sender, command, label, args); + } + + private static class IgnoreDeleteArgument extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public IgnoreDeleteArgument(HardcoreFactionsPlugin plugin) { + super("delete", "Un-ignores a player."); + this.plugin = plugin; + this.aliases = new String[] { "del", "remove", "unset" }; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName() + " "; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + if (args.length < 2) { + sender.sendMessage(ChatColor.RED + "Usage: " + this.getUsage(label)); + return true; + } + sender.sendMessage(ChatColor.YELLOW + "You are " + + (this.plugin.getUserManagerr().getUser(((Player) sender).getUniqueId()).getIgnoring().remove( + args[1]) ? new StringBuilder().append(ChatColor.RED).append("not").toString() + : new StringBuilder().append(ChatColor.GREEN).append("no longer") + .toString()) + + ChatColor.YELLOW + " ignoring " + args[1] + '.'); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return null; + } + } + + private static class IgnoreListArgument extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public IgnoreListArgument(HardcoreFactionsPlugin plugin) { + super("list", "Lists all ignored players."); + this.plugin = plugin; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName(); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + Set ignoring = this.plugin.getUserManagerr().getUser(((Player) sender).getUniqueId()).getIgnoring(); + if (ignoring.isEmpty()) { + sender.sendMessage(ChatColor.YELLOW + "You are not ignoring anyone."); + return true; + } + sender.sendMessage(ChatColor.YELLOW + "You are ignoring (" + ignoring.size() + ") members: " + '[' + + ChatColor.WHITE + StringUtils.join(ignoring, ", ") + ChatColor.YELLOW + + ']'); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + } + } + + private static class IgnoreClearArgument extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public IgnoreClearArgument(HardcoreFactionsPlugin plugin) { + super("clear", "Clears all ignored players."); + this.plugin = plugin; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName(); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + Set ignoring = this.plugin.getUserManagerr().getUser(((Player) sender).getUniqueId()).getIgnoring(); + if (ignoring.isEmpty()) { + sender.sendMessage(ChatColor.RED + "Your ignore list is already empty."); + return true; + } + ignoring.clear(); + sender.sendMessage(ChatColor.YELLOW + "Your ignore list has been cleared."); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + } + } + + private static class IgnoreAddArgument extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public IgnoreAddArgument(HardcoreFactionsPlugin plugin) { + super("add", "Starts ignoring a player."); + this.plugin = plugin; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName() + " "; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + if (args.length < 2) { + sender.sendMessage(this.getUsage(label)); + return true; + } + Player player = (Player) sender; + UUID uuid = player.getUniqueId(); + IUser baseUser = this.plugin.getUserManagerr().getUser(uuid); + Set ignoring = baseUser.getIgnoring(); + Player target = BukkitUtils.playerWithNameOrUUID(args[1]); + if (target == null || !ICommandAPI.canSee(sender, target)) { + sender.sendMessage(String.format(IConstantsAPI.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[1])); + return true; + } + if (sender.equals(target)) { + sender.sendMessage(ChatColor.RED + "You may not ignore yourself."); + return true; + } + StaffPriority selfPriority = StaffPriority.of(player); + if (StaffPriority.of(target).isMoreThan(selfPriority)) { + sender.sendMessage(ChatColor.RED + "You cannot ignore this player."); + return true; + } + if (target.hasPermission("hcf.command.ignore.exempt")) { + sender.sendMessage(ChatColor.RED + "You do not have permission to ignore this player."); + return true; + } + String targetName = target.getName(); + if (ignoring.add(target.getName())) { + sender.sendMessage(ChatColor.GOLD + "You are now ignoring " + targetName + '.'); + } else { + sender.sendMessage( + ChatColor.RED + "You are already ignoring someone named " + targetName + '.'); + } + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 2 ? null : Collections.emptyList(); + } + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/InvseeCommand.java b/src/notifyz/hardcorefactions/commands/essentials/InvseeCommand.java new file mode 100644 index 0000000..3fb46f5 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/InvseeCommand.java @@ -0,0 +1,44 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class InvseeCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = (Player) sender; + if (cmd.getName().equalsIgnoreCase("invsee")) { + if (!p.hasPermission("hcf.command.invsee") && !p.hasPermission("hcf.command.*") && !p.hasPermission("*")) { + p.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (args.length == 0 || args.length > 1) { + p.sendMessage("§cUsage: /invsee [player]"); + return true; + } + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + p.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.invsee-player-not-found"))); + return true; + } + if (t.hasPermission("hcf.command.invsee")) { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.invsee-error"))); + return true; + } + p.openInventory(t.getInventory()); + } + return true; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/InvseeOfflineCommand.java b/src/notifyz/hardcorefactions/commands/essentials/InvseeOfflineCommand.java new file mode 100644 index 0000000..563b6f4 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/InvseeOfflineCommand.java @@ -0,0 +1,68 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.craftbukkit.v1_7_R4.CraftServer; +import org.bukkit.craftbukkit.v1_7_R4.CraftWorld; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; + +import net.minecraft.server.v1_7_R4.EntityPlayer; +import net.minecraft.server.v1_7_R4.MinecraftServer; +import net.minecraft.server.v1_7_R4.PlayerInteractManager; +import net.minecraft.util.com.mojang.authlib.GameProfile; + +public class InvseeOfflineCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if (!(sender instanceof Player)) { + return true; + } + Player player = (Player) sender; + if (sender.hasPermission("hcf.command.oinvsee")) { + if (args.length > 0) { + OfflinePlayer offline = Bukkit.getOfflinePlayer(args[0]); + if (offline == null || !offline.hasPlayedBefore()) { + sender.sendMessage(ChatColor.RED + "Player not found."); + return true; + } + + player.openInventory(getPlayerInventory(offline, player.getLocation())); + } else { + sender.sendMessage(ChatColor.RED + "Usage: /oinvsee "); + } + } + return true; + } + + private Inventory getPlayerInventory(OfflinePlayer offline, Location location) { + Player player = getOfflinePlayer(offline.getName(), offline.getUniqueId(), location); + Inventory inventory = Bukkit.createInventory(null, 36, player.getName() + "'s Inventory (Offline)"); + inventory.setContents(player.getInventory().getContents()); + return inventory; + } + + private Player getOfflinePlayer(String name, UUID uuid, Location location) { + Player target = null; + GameProfile profile = new GameProfile(uuid, name); + + MinecraftServer server = ((CraftServer) Bukkit.getServer()).getServer(); + EntityPlayer entity = new EntityPlayer(server, server.getWorldServer(0), profile, new PlayerInteractManager(server.getWorldServer(0))); + entity.setPositionRotation(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch()); + entity.world = ((CraftWorld) location.getWorld()).getHandle(); + target = entity == null ? null : (Player) entity.getBukkitEntity(); + if (target != null) { + target.loadData(); + return target; + } + return target; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/KillCommand.java b/src/notifyz/hardcorefactions/commands/essentials/KillCommand.java new file mode 100644 index 0000000..5256fd1 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/KillCommand.java @@ -0,0 +1,44 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class KillCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("kill")) { + if (!sender.hasPermission("hcf.command.kill") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (args.length == 0) { + if (!(sender instanceof Player)) { + sender.sendMessage("§cNo Console"); + return true; + } + Player p = (Player) sender; + p.sendMessage("§cUsage: /kill ."); + return true; + } + if (args.length > 1) { + sender.sendMessage("§c/kill "); + return true; + } + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + sender.sendMessage("§c" + t.getName() + "'s §ehas been killed."); + t.setHealth(0); + return true; + } + return true; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/LagCommand.java b/src/notifyz/hardcorefactions/commands/essentials/LagCommand.java new file mode 100644 index 0000000..94d1022 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/LagCommand.java @@ -0,0 +1,133 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.lang.management.ManagementFactory; +import java.text.DecimalFormat; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Chunk; +import org.bukkit.World; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; + +import net.minecraft.util.org.apache.commons.lang3.text.WordUtils; +import net.minecraft.util.org.apache.commons.lang3.time.DurationFormatUtils; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.ClickAction; +import notifyz.hardcorefactions.utilities.chat.Text; + +public class LagCommand extends ICommandAPI { + private static long MEGABYTE = 1048576L; + private static long GIGABYTE = 1073741824L; + private static double MAXIMUM_TPS = 20.0; + private long lastServerTick; + + public LagCommand() { + super("lag", "Checks the lag of the server."); + this.setLastServerTick(0L); + this.setUsage("/(command)"); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + double tps = Bukkit.spigot().getTPS()[0]; + + if (args.length == 0) { + sendTPSFormat(sender, tps); + + if (sender.hasPermission("hcf.command.lag.statistics")) { + Text text = new Text(); + text.append(ChatColor.YELLOW + ChatColor.ITALIC.toString() + "Click to show more...").setClick(ClickAction.RUN_COMMAND, "/lag statistics").setHoverText(ChatColor.GOLD + "Click to show more about lag statistics.").send(sender); + } + return true; + } + if (args.length > 0 && args[0].equalsIgnoreCase("statistics") && sender.hasPermission("hcf.command.lag.statistics")) { + sender.sendMessage(ChatColor.GRAY + ChatColor.STRIKETHROUGH.toString() + BukkitUtils.STRAIGHT_LINE_DEFAULT); + sendExtraStatistics(sender); + sender.sendMessage(ChatColor.GRAY + ChatColor.STRIKETHROUGH.toString() + BukkitUtils.STRAIGHT_LINE_DEFAULT); + return true; + } + return true; + } + + public static double getMaximumTps() { + return MAXIMUM_TPS; + } + + public static long getGigabyte() { + return GIGABYTE; + } + + public static long getMegabyte() { + return MEGABYTE; + } + + public long getLastServerTick() { + return lastServerTick; + } + + public void setLastServerTick(long lastServerTick) { + this.lastServerTick = lastServerTick; + } + + private void sendExtraStatistics(CommandSender sender) { + double tps = Bukkit.spigot().getTPS()[0]; + double lag = Math.round((1.0 - tps / 20.0) * 100.0); + sender.sendMessage(ChatColor.GOLD + "Server performance lag: " + ChatColor.WHITE + String.format("%.1f", lag).replace("-", "") + "%"); + if (Bukkit.spigot().getTPS().length == 4) { + sender.sendMessage(ChatColor.GOLD + "Full Server Tick: " + ChatColor.WHITE + String.format("%.1f", Bukkit.spigot().getTPS()[3]).replace("-", "") + "ms"); + } + if (sender.hasPermission("hcf.command.lag.statistics")) { + Runtime runtime = Runtime.getRuntime(); + long maxMemory = runtime.maxMemory(); + long totalMemory = runtime.totalMemory(); + long freeMemory = runtime.freeMemory(); + long currentMemory = totalMemory - freeMemory; + long startTime = ManagementFactory.getRuntimeMXBean().getStartTime(); + double percentage = currentMemory / totalMemory * 100.0; + String upTime = DurationFormatUtils.formatDurationWords(System.currentTimeMillis() - startTime, true, true); + sender.sendMessage(ChatColor.GOLD + "Available Processors: " + ChatColor.WHITE + runtime.availableProcessors()); + sender.sendMessage(ChatColor.GOLD + "Up-time: " + ChatColor.WHITE + upTime + ChatColor.GRAY + " (" + UptimeCommand.TIME_FORMATTER.format(startTime) + ')'); + sender.sendMessage(ChatColor.GOLD + "Maximum Memory: " + ChatColor.WHITE + String.format("%.1f", maxMemory / 1.073741824E9) + "GB"); + sender.sendMessage(ChatColor.GOLD + "Memory Usage: " + ChatColor.WHITE + String.format("%.1f", currentMemory / 1.073741824E9) + "GB / " + String.format("%.1f", totalMemory / 1.073741824E9) + "GB"); + sender.sendMessage(ChatColor.GOLD + "Percentage Usage: " + ChatColor.WHITE + String.format("%.1f", percentage) + "%"); + List worlds = Bukkit.getWorlds(); + for (World world : worlds) { + World.Environment environment = world.getEnvironment(); + String environmentName = WordUtils.capitalizeFully(environment.name().replace('_', ' ')); + int tileEntities = 0; + Chunk[] loadedChunks3; + Chunk[] loadedChunks2; + Chunk[] allChunks = loadedChunks2 = (loadedChunks3 = world.getLoadedChunks()); + for (int chunks = loadedChunks2.length, chunksMax = 0; chunksMax < chunks; ++chunksMax) { + Chunk chunk = allChunks[chunksMax]; + tileEntities += chunk.getTileEntities().length; + } + sender.sendMessage(ChatColor.GOLD + world.getName() + '(' + environmentName + "): " + ChatColor.WHITE + loadedChunks3.length + " chunks, " + world.getEntities().size() + " entities, " + tileEntities + " tile entities."); + } + } + } + + private void sendTPSFormat(CommandSender sender, double tps) { + StringBuilder stringBuilder = new StringBuilder("||||||||||||||||||||"); + + ChatColor color; + + if(tps >= 18) { + color = ChatColor.GREEN; + } else if(tps >= 10) { + color = ChatColor.YELLOW; + } else { + color = ChatColor.RED; + } + + DecimalFormat decimalFormat = new DecimalFormat("0.0"); + + stringBuilder.insert(0, color); + stringBuilder.insert(color.toString().length() + (tps > 20 ? 20 : (int) Math.ceil(tps)), ChatColor.DARK_GRAY); + + sender.sendMessage(ChatColor.GOLD + "Server performance: " + color + (tps > 20.0D ? "*20" : "" + decimalFormat.format(tps)) + ChatColor.GOLD + '/' + 20.0D + " [" + stringBuilder.toString() + ChatColor.GOLD + ']'); + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/ListCommand.java b/src/notifyz/hardcorefactions/commands/essentials/ListCommand.java new file mode 100644 index 0000000..a518de5 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/ListCommand.java @@ -0,0 +1,24 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; + +public class ListCommand extends ICommandAPI { + public ListCommand() { + super("list", "Lists players online"); + this.setAliases(new String[] { "who" }); + this.setUsage("/(command)"); + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, + final String[] args) { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.list-message").replace("%maxplayers%", Integer.toString(Bukkit.getMaxPlayers())).replace("%onlineplayers%", Integer.toString(Bukkit.getOnlinePlayers().size())))); + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/MessageCommand.java b/src/notifyz/hardcorefactions/commands/essentials/MessageCommand.java new file mode 100644 index 0000000..ce72d48 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/MessageCommand.java @@ -0,0 +1,57 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; +import java.util.Set; + +import org.apache.commons.lang.StringUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.api.utilties.command.IConstantsAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.MessageEvent; + +public class MessageCommand extends ICommandAPI { + public MessageCommand(HardcoreFactionsPlugin plugin) { + super("message", "Sends a message to a recipient(s)."); + this.setAliases(new String[] { "msg", "m", "whisper", "w", "tell" }); + this.setUsage("/(command) [text...]"); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + if (args.length < 2) { + sender.sendMessage(ChatColor.RED + "Usage: " + this.getUsage(label)); + return true; + } + Player player = (Player) sender; + Player target = BukkitUtils.playerWithNameOrUUID(args[0]); + if (target == null || !ICommandAPI.canSee(sender, target)) { + sender.sendMessage(String.format(IConstantsAPI.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[0])); + return true; + } + String message = StringUtils.join(args, ' ', 1, args.length); + Set recipients = Collections.singleton(target); + MessageEvent playerMessageEvent = new MessageEvent(player, recipients, message, false); + Bukkit.getPluginManager().callEvent(playerMessageEvent); + if (!playerMessageEvent.isCancelled()) { + playerMessageEvent.send(); + } + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return null; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.java b/src/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.java new file mode 100644 index 0000000..f012a71 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/MessageSpyCommand.java @@ -0,0 +1,225 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; +import java.util.UUID; + +import org.apache.commons.lang.StringUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; + +import com.google.common.collect.Iterables; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandArgument; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandWrapper; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; +import notifyz.hardcorefactions.utilities.utils.ServerParticipator; + +public class MessageSpyCommand +extends ICommandAPI { + private final ICommandWrapper handler; + + public MessageSpyCommand(HardcoreFactionsPlugin plugin) { + super("socialspy", "Spies on the PM's of a player."); + this.setUsage("/(command) [playerName]"); + ArrayList arguments = new ArrayList(4); + arguments.add(new MessageSpyListArgument(plugin)); + arguments.add(new IgnoreClearArgument(plugin)); + arguments.add(new MessageSpyAddArgument(plugin)); + arguments.add(new MessageSpyDeleteArgument(plugin)); + Collections.sort(arguments, new ICommandWrapper.ArgumentComparator()); + this.handler = new ICommandWrapper(arguments); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + return this.handler.onCommand(sender, command, label, args); + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return this.handler.onTabComplete(sender, command, label, args); + } + + private static class MessageSpyListArgument + extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public MessageSpyListArgument(HardcoreFactionsPlugin plugin) { + super("list", "Lists all players you're spying on."); + this.plugin = plugin; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName(); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + ServerParticipator participator = this.plugin.getUserManagerr().getParticipator(sender); + if (participator == null) { + sender.sendMessage(ChatColor.RED + "You are not able to message spy."); + return true; + } + LinkedHashSet spyingNames = new LinkedHashSet(); + Set messageSpying = participator.getMessageSpying(); + if (messageSpying.size() == 1 && Iterables.getOnlyElement(messageSpying).equals("all")) { + sender.sendMessage(ChatColor.GRAY + "You are currently spying on the messages of all players."); + return true; + } + for (String spyingId : messageSpying) { + String name = Bukkit.getOfflinePlayer(UUID.fromString(spyingId)).getName(); + if (name == null) continue; + spyingNames.add(name); + } + if (spyingNames.isEmpty()) { + sender.sendMessage(ChatColor.RED + "You are not spying on the messages of any players."); + return true; + } + sender.sendMessage(ChatColor.GRAY + "You are currently spying on the messages of (" + spyingNames.size() + " players): " + ChatColor.RED + StringUtils.join(spyingNames, new StringBuilder().append(ChatColor.GRAY.toString()).append(", ").append(ChatColor.RED).toString()) + ChatColor.GRAY + '.'); + return true; + } + } + + private static class IgnoreClearArgument + extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public IgnoreClearArgument(HardcoreFactionsPlugin plugin) { + super("clear", "Clears your current spy list."); + this.plugin = plugin; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName(); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + ServerParticipator participator = this.plugin.getUserManagerr().getParticipator(sender); + if (participator == null) { + sender.sendMessage(ChatColor.RED + "You are not able to message spy."); + return true; + } + participator.getMessageSpying().clear(); + sender.sendMessage(ChatColor.YELLOW + "You are no longer spying the messages of anyone."); + return true; + } + } + + private static class MessageSpyAddArgument + extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public MessageSpyAddArgument(HardcoreFactionsPlugin plugin) { + super("add", "Adds a player to your message spy list."); + this.plugin = plugin; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName() + " "; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + ServerParticipator participator = this.plugin.getUserManagerr().getParticipator(sender); + if (participator == null) { + sender.sendMessage(ChatColor.RED + "You are not able to message spy."); + return true; + } + if (args.length < 2) { + sender.sendMessage(ChatColor.RED + "Usage: " + this.getUsage(label)); + return true; + } + Set messageSpying = participator.getMessageSpying(); + boolean all = messageSpying.contains("all"); + if (all || JavaUtils.containsIgnoreCase(messageSpying, args[1])) { + sender.sendMessage(ChatColor.RED + "You are already spying on the messages of " + (all ? "all players" : args[1]) + '.'); + return true; + } + if (args[1].equalsIgnoreCase("all")) { + messageSpying.clear(); + messageSpying.add("all"); + sender.sendMessage(ChatColor.GREEN + "You are now spying on the messages of all players."); + return true; + } + OfflinePlayer offlineTarget = Bukkit.getOfflinePlayer(args[1]); + if (!offlineTarget.hasPlayedBefore() && offlineTarget.getPlayer() == null) { + sender.sendMessage(ChatColor.GOLD + "Player '" + ChatColor.WHITE + args[1] + ChatColor.GOLD + "' not found."); + return true; + } + if (offlineTarget.equals(sender)) { + sender.sendMessage(ChatColor.RED + "You cannot spy on the messages of yourself."); + return true; + } + sender.sendMessage(ChatColor.YELLOW + "You are " + (messageSpying.add(offlineTarget.getUniqueId().toString()) ? new StringBuilder().append(ChatColor.GREEN).append("now").toString() : new StringBuilder().append(ChatColor.RED).append("already").toString()) + ChatColor.YELLOW + " spying on the messages of " + offlineTarget.getName() + '.'); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 2 ? null : Collections.emptyList(); + } + } + + private static class MessageSpyDeleteArgument + extends ICommandArgument { + private final HardcoreFactionsPlugin plugin; + + public MessageSpyDeleteArgument(HardcoreFactionsPlugin plugin) { + super("delete", "Deletes a player from your message spy list."); + this.plugin = plugin; + this.aliases = new String[]{"del", "remove"}; + } + + @Override + public String getUsage(String label) { + return "" + '/' + label + ' ' + this.getName() + " "; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + ServerParticipator participator = this.plugin.getUserManagerr().getParticipator(sender); + if (participator == null) { + sender.sendMessage(ChatColor.RED + "You are not able to message spy."); + return true; + } + if (args.length < 2) { + sender.sendMessage(ChatColor.RED + "Usage: " + this.getUsage(label)); + return true; + } + Set messageSpying = participator.getMessageSpying(); + if (args[1].equalsIgnoreCase("all")) { + messageSpying.remove("all"); + sender.sendMessage(ChatColor.RED + "You are no longer spying on the messages of all players."); + return true; + } + OfflinePlayer offlineTarget = BukkitUtils.offlinePlayerWithNameOrUUID(args[1]); + if (!offlineTarget.hasPlayedBefore() && !offlineTarget.isOnline()) { + sender.sendMessage(ChatColor.GOLD + "Player named or with UUID '" + ChatColor.WHITE + args[1] + ChatColor.GOLD + "' not found."); + return true; + } + sender.sendMessage("You are " + (messageSpying.remove(offlineTarget.getUniqueId().toString()) ? new StringBuilder().append(ChatColor.GREEN).append("no longer").toString() : new StringBuilder().append(ChatColor.RED).append("still not").toString()) + ChatColor.YELLOW + " spying on the messages of " + offlineTarget.getName() + '.'); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 2 ? null : Collections.emptyList(); + } + } + +} + diff --git a/src/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.java b/src/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.java new file mode 100644 index 0000000..13acb36 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/MoreItemsCommand.java @@ -0,0 +1,60 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; + +import net.minecraft.util.com.google.common.primitives.Ints; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; + +public class MoreItemsCommand extends ICommandAPI +{ + public MoreItemsCommand() { + super("more", "Sets your item to its maximum amount."); + this.setUsage("/(command)"); + } + + @Override + public boolean isPlayerOnlyCommand() { + return true; + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, final String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + final Player player = (Player)sender; + final ItemStack stack = player.getItemInHand(); + if (stack == null || stack.getType() == Material.AIR) { + sender.sendMessage(ChatColor.RED + "You are not holding any item."); + return true; + } + Integer amount; + if (args.length > 0) { + amount = Ints.tryParse(args[0]); + if (amount == null) { + sender.sendMessage(ChatColor.RED + "'" + args[0] + "' is not a number."); + return true; + } + if (amount <= 0) { + sender.sendMessage(ChatColor.RED + "Item amounts must be positive."); + return true; + } + } + else { + final int curAmount = stack.getAmount(); + amount = stack.getMaxStackSize(); + if (curAmount >= amount) { + sender.sendMessage(ChatColor.RED + "You already have the maximum amount: " + amount + '.'); + return true; + } + } + stack.setAmount(amount); + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/NewVideoCommand.java b/src/notifyz/hardcorefactions/commands/essentials/NewVideoCommand.java new file mode 100644 index 0000000..a5807e4 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/NewVideoCommand.java @@ -0,0 +1,63 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import net.md_5.bungee.api.ChatColor; +import net.md_5.bungee.api.chat.BaseComponent; +import net.md_5.bungee.api.chat.ClickEvent; +import net.md_5.bungee.api.chat.ComponentBuilder; +import net.md_5.bungee.api.chat.HoverEvent; +import net.md_5.bungee.api.chat.TextComponent; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.Color; +import notifyz.hardcorefactions.utilities.utils.Utils; + +@SuppressWarnings("deprecation") +public class NewVideoCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage("Only players !"); + return true; + } + Player player = (Player) sender; + if (!player.hasPermission("hcf.command.rec")) { + player.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (args.length == 0) { + player.sendMessage(ChatColor.RED + ("Usage: /newvideo ")); + return true; + } + if (args.length == 1) { + String url = args[0]; + if (!url.toLowerCase().startsWith("https://") || !url.toLowerCase().contains("youtube.com")) { + player.sendMessage(Color.translate("&cInvalid url!")); + player.sendMessage(Color.translate("&cExample: /newvideo &ehttps://www.youtube.com/" + Utils.SERVER_NAME)); + return true; + } + Bukkit.broadcastMessage(ChatColor.BOLD + BukkitUtils.STRAIGHT_LINE_DEFAULT); + Bukkit.broadcastMessage(""); + Bukkit.broadcastMessage(Color.translate("&f&lYou&4&lTube &8» " + player.getDisplayName() + " &7has published a new video.")); + Bukkit.spigot().broadcast(newVideo(player, url)); + Bukkit.broadcastMessage(Color.translate(" ")); + Bukkit.broadcastMessage(ChatColor.BOLD + BukkitUtils.STRAIGHT_LINE_DEFAULT); + player.sendMessage("§4§lALERT: §cSpamming with this command, may result a PUNISHMENT."); + } + return false; + } + + private BaseComponent newVideo(Player player, String url) { + String msg = String.valueOf(Color.translate(" &f&l* &a&lLINK")); + TextComponent text = new TextComponent(msg); + text.setClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, url)); + text.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, + new ComponentBuilder(Color.translate("&7Click to copy!")).create())); + return text; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/RecCommand.java b/src/notifyz/hardcorefactions/commands/essentials/RecCommand.java new file mode 100644 index 0000000..fe82b70 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/RecCommand.java @@ -0,0 +1,50 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.HashSet; +import java.util.Set; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + +public class RecCommand implements CommandExecutor { + + public static Set recToggle = new HashSet(); + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage("Only players !"); + return true; + } + Player player = (Player) sender; + if (!player.hasPermission("hcf.command.rec")) { + player.sendMessage("§cYou do not have acces to this command."); + return true; + } + if (recToggle.contains(player.getUniqueId())) { + recToggle.remove(player.getUniqueId()); + Bukkit.broadcastMessage(ChatColor.BOLD + BukkitUtils.STRAIGHT_LINE_DEFAULT); + Bukkit.broadcastMessage(""); + Bukkit.broadcastMessage("§f§lYou§4§lTube §8» " + player.getDisplayName() + " §7has stopped recording."); + Bukkit.broadcastMessage(""); + Bukkit.broadcastMessage(ChatColor.BOLD + BukkitUtils.STRAIGHT_LINE_DEFAULT); + player.sendMessage("§4§lALERT: §cSpamming with this command, may result a PUNISHMENT."); + return true; + } + recToggle.add(player.getUniqueId()); + Bukkit.broadcastMessage(ChatColor.BOLD + BukkitUtils.STRAIGHT_LINE_DEFAULT); + Bukkit.broadcastMessage(""); + Bukkit.broadcastMessage("§f§lYou§4§lTube §8» " + player.getDisplayName() + " §7has started recording."); + Bukkit.broadcastMessage(""); + Bukkit.broadcastMessage(ChatColor.BOLD + BukkitUtils.STRAIGHT_LINE_DEFAULT); + player.sendMessage("§4§lALERT: §cSpamming with this command, may result a PUNISHMENT."); + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.java b/src/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.java new file mode 100644 index 0000000..258dfaf --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/RemovePermCommand.java @@ -0,0 +1,49 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +/** + * Created by Notifyz. + */ +public class RemovePermCommand implements CommandExecutor, TabCompleter { + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length == 0) { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + " "); + return true; + + } + + Player target = Bukkit.getServer().getPlayer(args[0]); + + if (target == null) { + sender.sendMessage(ChatColor.RED + "That player is not online."); + return true; + } + Player player = target; + Bukkit.dispatchCommand(sender, "deop " + player.getName()); + Bukkit.dispatchCommand(sender, "manudelp " + player.getName() + " *"); + Bukkit.dispatchCommand(sender, "setrank " + player.getName() + " member"); + Bukkit.dispatchCommand(sender, "pex user " + player.getName() + " remove *"); + Bukkit.dispatchCommand(sender, "pex user " + player.getName() + " group set default"); + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.removeperm-message").replace("%target%", target.getName()))); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/RenameCommand.java b/src/notifyz/hardcorefactions/commands/essentials/RenameCommand.java new file mode 100644 index 0000000..ecb8d4f --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/RenameCommand.java @@ -0,0 +1,69 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.Cooldowns; + +public class RenameCommand implements CommandExecutor { + + public static String format(final int i) { + final int ms = i / 60; + final int ss = i % 60; + final String m = ((ms < 10) ? "0" : "") + ms; + final String s = ((ss < 10) ? "0" : "") + ss; + final String f = m + ":" + s; + return f; + } + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = (Player) sender; + if (cmd.getName().equalsIgnoreCase("rename")) { + if (!sender.hasPermission("hcf.command.rename") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (args.length == 0) { + sender.sendMessage("§cUsage: /rename "); + return true; + } + if (p.getItemInHand().getType() == Material.AIR) { + sender.sendMessage("§cInvalid Item."); + return true; + } + if (Cooldowns.isOnCooldown("rename_cooldown", p) && !p.isOp()) { + sender.sendMessage(ChatColor.RED + "You still have rename cooldown for another " + format(Cooldowns.getCooldownForPlayerInt("rename_cooldown", p))); + return true; + } + if (args[0].contains(ChatColor.stripColor(HardcoreFactionsPlugin.getInstance().getConfig().getString("throwable-cobwebs.cobweb-name"))) && !p.isOp()) { + sender.sendMessage(ChatColor.RED + "You cannot rename to that item!"); + return true; + } + StringBuilder str = new StringBuilder(); + for(int i = 0; i < args.length; i++) { + str.append(args[i] + " "); + } + String name = str.toString(); + ItemStack i = p.getItemInHand(); + ItemMeta im = i.getItemMeta(); + im.setDisplayName(ChatColor.translateAlternateColorCodes('&', name)); + i.setItemMeta(im); + p.setItemInHand(i); + p.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.rename-message").replace("%name%", name))); + Cooldowns.addCooldown("rename_cooldown", p, 3600); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/ReplyCommand.java b/src/notifyz/hardcorefactions/commands/essentials/ReplyCommand.java new file mode 100644 index 0000000..997d508 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/ReplyCommand.java @@ -0,0 +1,75 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.HashSet; +import java.util.List; +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +import org.apache.commons.lang.StringUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import com.google.common.collect.Sets; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.chat.MessageEvent; +import notifyz.hardcorefactions.utilities.user.IUser; + +public class ReplyCommand extends ICommandAPI { + private static final long VANISH_REPLY_TIMEOUT = TimeUnit.SECONDS.toMillis(45); + private final HardcoreFactionsPlugin plugin; + + public ReplyCommand(HardcoreFactionsPlugin plugin) { + super("reply", "Replies to the last conversing player."); + this.setAliases(new String[] { "r" }); + this.setUsage("/(command) "); + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + Player target; + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + Player player = (Player) sender; + UUID uuid = player.getUniqueId(); + IUser baseUser = this.plugin.getUserManagerr().getUser(uuid); + UUID lastReplied = baseUser.getLastRepliedTo(); + @SuppressWarnings("unused") + Player player2 = target = lastReplied == null ? null : Bukkit.getPlayer(lastReplied); + if (args.length < 1) { + sender.sendMessage(ChatColor.RED + "Usage: " + this.getUsage(label)); + if (lastReplied != null && ICommandAPI.canSee(sender, target)) { + sender.sendMessage(ChatColor.RED + "You are in a conversation with " + target.getName() + '.'); + } + return true; + } + long millis = System.currentTimeMillis(); + if (target == null || !ICommandAPI.canSee(sender, target) + && millis - baseUser.getLastReceivedMessageMillis() > VANISH_REPLY_TIMEOUT) { + sender.sendMessage(ChatColor.GOLD + "There is no player to reply to."); + return true; + } + String message = StringUtils.join(args, ' '); + @SuppressWarnings("rawtypes") + HashSet recipients = Sets.newHashSet((Object[]) new Player[] { target }); + @SuppressWarnings("unchecked") + MessageEvent playerMessageEvent = new MessageEvent(player, recipients, message, false); + Bukkit.getPluginManager().callEvent(playerMessageEvent); + if (!playerMessageEvent.isCancelled()) { + playerMessageEvent.send(); + } + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return null; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/ServerTimeCommand.java b/src/notifyz/hardcorefactions/commands/essentials/ServerTimeCommand.java new file mode 100644 index 0000000..f277d6f --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/ServerTimeCommand.java @@ -0,0 +1,40 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; +import java.util.Locale; + +import org.apache.commons.lang.time.FastDateFormat; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +/** + * Command used to check the current time for the server. + */ +public class ServerTimeCommand implements CommandExecutor, TabCompleter { + + private final FastDateFormat format; + + public ServerTimeCommand(HardcoreFactionsPlugin plugin) { + format = FastDateFormat.getInstance("E MMM dd h:mm:ssa z yyyy", + plugin.getConfiguration().getServerTimeZone(), Locale.ENGLISH); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + sender.sendMessage(ChatColor.GREEN + "The server time is " + ChatColor.LIGHT_PURPLE + + format.format(System.currentTimeMillis()) + ChatColor.GREEN + '.'); + + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.java b/src/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.java new file mode 100644 index 0000000..e1e44a5 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/SetBorderCommand.java @@ -0,0 +1,98 @@ + package notifyz.hardcorefactions.commands.essentials; + + + import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.bukkit.ChatColor; +import org.bukkit.World; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; + +import net.minecraft.util.com.google.common.base.Enums; +import net.minecraft.util.com.google.common.base.Optional; +import net.minecraft.util.com.google.common.primitives.Ints; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.utils.Utils; + + + + @SuppressWarnings("deprecation") +public class SetBorderCommand + implements CommandExecutor, TabCompleter + { + private static final int MIN_SET_SIZE = 1000; + private static final int MAX_SET_SIZE = 25000; + + @Override +public boolean onCommand(CommandSender sender, Command command, String label, String[] args) + { +/* 29 */ if (args.length < 2) + { +/* 31 */ sender.sendMessage(ChatColor.RED + "Usage: /" + label + " "); +/* 32 */ return true; + } +/* 34 */ Optional optional = Enums.getIfPresent(World.Environment.class, args[0]); +/* 35 */ if (!optional.isPresent()) + { +/* 37 */ sender.sendMessage(ChatColor.RED + "Environment '" + args[0] + "' not found."); +/* 38 */ return true; + } +/* 40 */ Integer amount = Ints.tryParse(args[1]); +/* 41 */ if (amount == null) + { +/* 43 */ sender.sendMessage(ChatColor.RED + "'" + args[1] + "' is not a valid number."); +/* 44 */ return true; + } +/* 46 */ if (amount.intValue() < MIN_SET_SIZE) + { +/* 48 */ sender.sendMessage(ChatColor.RED + "Minimum border size is " + MIN_SET_SIZE + '.'); +/* 49 */ return true; + } +/* 51 */ if (amount.intValue() > MAX_SET_SIZE) + { +/* 53 */ sender.sendMessage(ChatColor.RED + "Maximum border size is " + MAX_SET_SIZE + '.'); +/* 54 */ return true; + } +/* 56 */ World.Environment environment = optional.get(); +/* 57 */ Utils.BORDER_SIZES.put(environment, amount); +/* 58 */ Command.broadcastCommandMessage(sender, ChatColor.YELLOW + "Set border size of environment " + environment.name() + " to " + amount + '.'); + if (args[0].equals("NORMAL")) { + HardcoreFactionsPlugin.getInstance().getConfig().set("world-border.worldBorder", amount); + HardcoreFactionsPlugin.getInstance().saveConfig(); + System.out.println("XXXX"); + return true; + } + if (args[0].equals("NETHER")) { + HardcoreFactionsPlugin.getInstance().getConfig().set("world-border.netherBorder", amount); + HardcoreFactionsPlugin.getInstance().saveConfig(); + return true; + } + if (args[0].equals("THE_END")) { + HardcoreFactionsPlugin.getInstance().getConfig().set("world-border.endBorder", amount); + HardcoreFactionsPlugin.getInstance().saveConfig(); + return true; + } + HardcoreFactionsPlugin.getInstance().saveConfig(); + return true; + } + + @Override +@SuppressWarnings({ "unchecked", "rawtypes" }) +public List onTabComplete(CommandSender sender, Command command, String label, String[] args) + { +/* 64 */ if (args.length != 1) { +/* 65 */ return Collections.emptyList(); + } +/* 67 */ World.Environment[] values = World.Environment.values(); +/* 68 */ List results = new ArrayList(values.length); +/* 69 */ for (World.Environment environment : values) { +/* 70 */ results.add(environment.name()); + } +/* 72 */ return BukkitUtils.getCompletions(args, results); + } + } diff --git a/src/notifyz/hardcorefactions/commands/essentials/SettingsCommand.java b/src/notifyz/hardcorefactions/commands/essentials/SettingsCommand.java new file mode 100644 index 0000000..9693c28 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/SettingsCommand.java @@ -0,0 +1,246 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Arrays; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.commands.hcf.CobbleCommand; +import notifyz.hardcorefactions.commands.hcf.MobDropsCommand; +import notifyz.hardcorefactions.scoreboard.utilities.PlayerBoard; +import notifyz.hardcorefactions.team.utilities.TeamUser; +import notifyz.hardcorefactions.utilities.chat.Color; +import notifyz.hardcorefactions.utilities.user.IUser; + +public class SettingsCommand implements CommandExecutor, Listener { + + + //private JavaPlugin deathPlugin; + + + public SettingsCommand(HardcoreFactionsPlugin hcf) { + /*try { + Class deathPluginClass = Class.forName("com.sainttx.deathmessages.DeathPlugin"); + if (deathPluginClass != null && deathPluginClass.isAssignableFrom(JavaPlugin.class)) { + deathPlugin = JavaPlugin.getPlugin((Class) deathPluginClass); + } + } catch(ClassNotFoundException exception) {}*/ + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String stringList, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "No Console."); + return true; + } + Player player = (Player) sender; + if (command.getName().equalsIgnoreCase("settings")) { + if (!player.hasPermission("hcf.command.settings")) { + return true; + } + openGui(player); + return true; + } + return false; + + } + + + public void openGui(Player player) { + Inventory inventory = Bukkit.createInventory(null, 27, ChatColor.LIGHT_PURPLE + "Options"); + TeamUser teamUser = HardcoreFactionsPlugin.getInstance().getUserManager().getUser(player.getUniqueId()); + IUser iUser = HardcoreFactionsPlugin.getInstance().getUserManagerr().getUser(player.getUniqueId()); + PlayerBoard playerBoard = HardcoreFactionsPlugin.getInstance().getScoreboardHandler().getPlayerBoard(player.getUniqueId()); + + ItemStack diamondAlerts = new ItemStack(Material.DIAMOND); + ItemStack scoreboard = new ItemStack(Material.BOOK); + ItemStack cobblestonepick = new ItemStack(Material.COBBLESTONE); + ItemStack lighting = new ItemStack(Material.ARROW); + ItemStack mobdrops = new ItemStack(Material.ROTTEN_FLESH); + ItemStack capzone = new ItemStack(Material.PAPER); + ItemStack tab = new ItemStack(Material.ENCHANTED_BOOK); + ItemStack sign = new ItemStack(Material.SIGN); + ItemStack painting = new ItemStack(Material.PAINTING); + ItemStack juke = new ItemStack(Material.JUKEBOX); + + ItemMeta diamondMeta = diamondAlerts.getItemMeta(); + ItemMeta scoreboardMeta = scoreboard.getItemMeta(); + ItemMeta cobblestoneMeta = cobblestonepick.getItemMeta(); + ItemMeta lightingMeta = lighting.getItemMeta(); + ItemMeta mobdropsMeta = mobdrops.getItemMeta(); + ItemMeta capzoneMeta = capzone.getItemMeta(); + ItemMeta tabMeta = tab.getItemMeta(); + ItemMeta signMeta = sign.getItemMeta(); + ItemMeta paintingMeta = painting.getItemMeta(); + ItemMeta jukeMeta = juke.getItemMeta(); + + diamondMeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Found Diamonds"); + if (teamUser.isFdalerts()) { + diamondMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "found-diamonds messages?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Show messages", ChatColor.BLUE + " " + ChatColor.GRAY + "Hide messages")); + } else { + diamondMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "found-diamonds messages?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Show messages", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hide messages")); + } + + scoreboardMeta.setDisplayName(Color.translate("&dScoreboard")); + if (playerBoard.isSidebarVisible()) { + scoreboardMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "scoreboard?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Show scoreboard", ChatColor.BLUE + " " + ChatColor.GRAY + "Hide scoreboard")); + } else { + scoreboardMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "scoreboard?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Show scoreboard", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hide scoreboard")); + } + + cobblestoneMeta.setDisplayName(Color.translate("&dCobblestone Pickups")); + if (!CobbleCommand.disabled.contains(player)) { + cobblestoneMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to pickup", ChatColor.BLUE + "cobblestone?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Pickup cobblestone", ChatColor.BLUE + " " + ChatColor.GRAY + "Don't pickup cobblestone")); + } else { + cobblestoneMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to pickup", ChatColor.BLUE + "cobblestone?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Pickup cobblestone", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Don't pickup cobblestone")); + } + + mobdropsMeta.setDisplayName(Color.translate("&dMob Drops")); + if (!MobDropsCommand.disabled.contains(player)) { + mobdropsMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to pickup", ChatColor.BLUE + "mob drops?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Pickup mob drops", ChatColor.BLUE + " " + ChatColor.GRAY + "Don't pickup mob drops")); + } else { + mobdropsMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to pickup", ChatColor.BLUE + "mob drops?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Pickup mob drops", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Don't pickup mob drops")); + } + + lightingMeta.setDisplayName(Color.translate("&dLighting Strikes")); + if (teamUser.isShowLightning()) { + lightingMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "lighting on death?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Show lighting", ChatColor.BLUE + " " + ChatColor.GRAY + "Hide lighting")); + } else { + lightingMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "lighting on death?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Show lighting", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hide lighting")); + } + + capzoneMeta.setDisplayName(Color.translate("&dCapzone Entries")); + if (teamUser.isCapzoneEntryAlerts()) { + capzoneMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "capzone entry messages?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Show messages", ChatColor.BLUE + " " + ChatColor.GRAY + "Hide messages")); + } else { + capzoneMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "capzone entry messages?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Show messages", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hide messages")); + } + + signMeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Public Chat"); + if (iUser.isGlobalChatVisible()) { + signMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "public chat messages?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Show public chat", ChatColor.BLUE + " " + ChatColor.GRAY + "Hide public chat")); + } else { + signMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "public chat messages?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Show public chat", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hide public chat")); + } + + paintingMeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Private Messages"); + if (iUser.isMessagesVisible()) { + paintingMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "private messages?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Show private messages", ChatColor.BLUE + " " + ChatColor.GRAY + "Hide private messages")); + } else { + paintingMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to see", ChatColor.BLUE + "private messages?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Show private messages", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hide private messages")); + } + + jukeMeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Sound Messages"); + if (iUser.isMessagingSounds()) { + jukeMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to hear", ChatColor.BLUE + "sound messages?", "", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Hear sound messages", ChatColor.BLUE + " " + ChatColor.GRAY + "Don't hear sound messages")); + } else { + jukeMeta.setLore(Arrays.asList("", ChatColor.BLUE + "Do you want to hear", ChatColor.BLUE + "sound messages?", "", ChatColor.BLUE + " " + ChatColor.GRAY + "Hear sound messages", ChatColor.BLUE + " â–º " + ChatColor.GREEN + "Don't hear sound messages")); + } + + painting.setItemMeta(paintingMeta); + diamondAlerts.setItemMeta(diamondMeta); + scoreboard.setItemMeta(scoreboardMeta); + cobblestonepick.setItemMeta(cobblestoneMeta); + lighting.setItemMeta(lightingMeta); + mobdrops.setItemMeta(mobdropsMeta); + capzone.setItemMeta(capzoneMeta); + tab.setItemMeta(tabMeta); + sign.setItemMeta(signMeta); + juke.setItemMeta(jukeMeta); + + inventory.setItem(9, scoreboard); + inventory.setItem(23, cobblestonepick); + inventory.setItem(17, lighting); + inventory.setItem(21, mobdrops); + inventory.setItem(11, capzone); + inventory.setItem(5, sign); + inventory.setItem(1, diamondAlerts); + inventory.setItem(13, painting); + inventory.setItem(15, juke); + + //for (int i = 0; i < 36; i ++) { + // if (inventory.getContents()[i] == null) inventory.setItem(i, new SettingsBuilder(Material.STAINED_GLASS_PANE, ChatColor.GRAY + "", 1, (byte)14, new String[0]).getItem()); + //} + + player.openInventory(inventory); + } + + @EventHandler + public void onClick(InventoryClickEvent e) { + + if (e.getWhoClicked() instanceof Player) { + Player player = (Player) e.getWhoClicked(); + if (player.getOpenInventory().getTitle().equalsIgnoreCase(ChatColor.LIGHT_PURPLE + "Options")) { + e.setCancelled(true); + if (e.getCurrentItem() == null || e.getCurrentItem().getType() == Material.AIR) { + e.setCancelled(true); + return; + } + + ItemStack item = e.getCurrentItem(); + switch (item.getType()) { + + case ARROW: + player.chat("/togglelightning"); + player.closeInventory(); + break; + case DIAMOND: + player.chat("/togglefd"); + player.closeInventory(); + break; + case COBBLESTONE: + player.chat("/cobble"); + player.closeInventory(); + break; + case ROTTEN_FLESH: + player.chat("/mobdrops"); + player.closeInventory(); + break; + case PAPER: + player.chat("/togglecapzoneentry"); + player.closeInventory(); + break; + case BOOK: + player.chat("/togglesidebar"); + player.closeInventory(); + break; + case ENCHANTED_BOOK: + player.chat("/tabsettings"); + player.closeInventory(); + break; + case SIGN: + player.chat("/togglechat"); + player.closeInventory(); + break; + case PAINTING: + player.chat("/togglepm"); + player.closeInventory(); + break; + case JUKEBOX: + player.chat("/togglesounds"); + player.closeInventory(); + break; + case SKULL_ITEM: + player.chat("/deathmessages toggle"); + player.closeInventory(); + break; + default: + break; + } + } + } + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.java b/src/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.java new file mode 100644 index 0000000..eae66d5 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/SlowchatCommand.java @@ -0,0 +1,50 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.concurrent.TimeUnit; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; + +public class SlowchatCommand extends ICommandAPI { + private static final long DEFAULT_DELAY; + private final HardcoreFactionsPlugin plugin; + + public SlowchatCommand(final HardcoreFactionsPlugin plugin) { + super("slowchat", "Slows the chat down for non-staff."); + this.setAliases(new String[] { "slow" }); + this.setUsage("/(command)"); + this.plugin = plugin; + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, + final String[] args) { + final long oldTicks = this.plugin.getServerHandler().getRemainingChatSlowedMillis(); + Long newTicks; + if (oldTicks > 0L) { + newTicks = 0L; + } else if (args.length < 1) { + newTicks = SlowchatCommand.DEFAULT_DELAY; + } else { + newTicks = JavaUtils.parse(args[0]); + if (newTicks == -1L) { + sender.sendMessage(ChatColor.RED + "Invalid duration, use the correct format: 10m1s"); + return true; + } + } + this.plugin.getServerHandler().setChatSlowedMillis(newTicks); + Bukkit.broadcastMessage(ChatColor.YELLOW + "Global chat " + ((newTicks > 0L) ? ("has now been slowed for " + ChatColor.GOLD + DurationFormatUtils.formatDurationWords(newTicks, true, true)) : ("is no longer " + ChatColor.GOLD + "slowed"))); + return true; + } + + static { + DEFAULT_DELAY = TimeUnit.SECONDS.toMillis(10L); + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/SpawnCommand.java b/src/notifyz/hardcorefactions/commands/essentials/SpawnCommand.java new file mode 100644 index 0000000..4e35039 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/SpawnCommand.java @@ -0,0 +1,51 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + + +public class SpawnCommand implements CommandExecutor { + + @Override + @SuppressWarnings("unused") + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if (cmd.getName().equalsIgnoreCase("spawn")) { + if (!(sender instanceof Player)) { + return true; + } + if (!sender.hasPermission("hcf.command.spawn")) { + sender.sendMessage(ChatColor.RED + "You must travel to" + ChatColor.GREEN + " Spawn " + ChatColor.RED + "Coordinates: " + ChatColor.GRAY + "(0 | 0)"); + return true; + } + + if (args.length == 0) { + Player player = (Player) sender; + World world = player.getWorld(); + Location spon = world.getSpawnLocation().clone().add(0.5, 0.5, 0.5); + player.teleport(spon); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.spawn-teleport-message"))); + } + if(args.length == 1) { + Player target = Bukkit.getPlayer(args[0]); + World world = target.getWorld(); + Location spon = world.getSpawnLocation().clone().add(0.5, 0.5, 0.5); + if(target == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline."); + return true; + } + target.teleport(spon); + sender.sendMessage(ChatColor.RED + target.getName() + " has been teleported to spawn."); + } + } + return false; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.java b/src/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.java new file mode 100644 index 0000000..32bdbc7 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/SpawnerCommand.java @@ -0,0 +1,54 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.EntityType; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; + +import net.minecraft.util.com.google.common.base.Enums; +import net.minecraft.util.com.google.common.base.Optional; +import net.minecraft.util.org.apache.commons.lang3.text.WordUtils; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.inventory.ItemBuilder; +public class SpawnerCommand implements CommandExecutor { + + public String C(String msg) { + return ChatColor.translateAlternateColorCodes('&', msg); + } + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + if (cmd.getName().equalsIgnoreCase("spawner")) { + if (!(sender instanceof Player)) { + return true; + } + if (!sender.hasPermission("hcf.command.spawner")) { + sender.sendMessage(C("&cNo Permissions!")); + return true; + } + if (args.length == 0) { + sender.sendMessage(ChatColor.RED + "/spawner "); + return true; + } + String spawner = args[0]; + Player p = (Player) sender; + Inventory inv = p.getInventory(); + Optional entityTypeOptional = Enums.getIfPresent(EntityType.class, spawner.toUpperCase()); + if (entityTypeOptional.isPresent()) { + inv.addItem(new ItemStack[] { new ItemBuilder(Material.MOB_SPAWNER).displayName(ChatColor.GREEN + spawner.toUpperCase() + " Spawner").loreLine(ChatColor.WHITE + WordUtils.capitalizeFully(spawner)).build() }); + p.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.spawner-received").replace("%spawner%", spawner))); + return true; + } else { + p.sendMessage(C("&cInvalid &c&l" + spawner + "&c spawner.")); + return true; + } + } + return false; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/SpeedCommand.java b/src/notifyz/hardcorefactions/commands/essentials/SpeedCommand.java new file mode 100644 index 0000000..c44d8f7 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/SpeedCommand.java @@ -0,0 +1,120 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import net.minecraft.util.com.google.common.collect.ImmutableList; +import net.minecraft.util.com.google.common.primitives.Floats; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + +public class SpeedCommand extends ICommandAPI +{ + private static final ImmutableList COMPLETIONS_FIRST; + private static final ImmutableList COMPLETIONS_SECOND; + + public SpeedCommand() { + super("speed", "Sets the fly/walk speed of a player."); + this.setUsage("/(command) [playerName]"); + } + + @Override + public boolean onCommand(final CommandSender sender, final Command command, final String label, final String[] args) { + if (args.length < 2) { + sender.sendMessage(ChatColor.RED + "Usage: " + this.getUsage(label)); + return true; + } + Player target; + if (args.length > 2 && sender.hasPermission(command.getPermission() + ".others")) { + target = BukkitUtils.playerWithNameOrUUID(args[2]); + } + else { + if (!(sender instanceof Player)) { + sender.sendMessage(this.getUsage(label)); + return true; + } + target = (Player)sender; + } + Boolean flight; + if (args[0].equalsIgnoreCase("fly")) { + flight = true; + } + else { + if (!args[0].equalsIgnoreCase("walk")) { + sender.sendMessage(this.getUsage(label)); + return true; + } + flight = false; + } + Float multiplier; + if (args[1].equalsIgnoreCase("reset")) { + multiplier = (flight ? 2.0f : 1.0f); + } + else { + multiplier = Floats.tryParse(args[1]); + if (multiplier == null) { + sender.sendMessage(ChatColor.RED + "Invalid speed multiplier: '" + args[1] + "'."); + return true; + } + } + if (flight) { + final float flySpeed = 0.1f * multiplier; + try { + target.setFlySpeed(flySpeed); + Command.broadcastCommandMessage(sender, ChatColor.YELLOW + "Flight speed of " + target.getName() + " has been set to " + multiplier + '.'); + } + catch (IllegalArgumentException ex) { + if (flySpeed < 0.1f) { + sender.sendMessage(ChatColor.RED + "Speed multiplier too low: " + multiplier); + } + else if (flySpeed > 0.1f) { + sender.sendMessage(ChatColor.RED + "Speed multiplier too high: " + multiplier); + } + } + } + else { + final float walkSpeed = 0.2f * multiplier; + try { + target.setWalkSpeed(walkSpeed); + Command.broadcastCommandMessage(sender, ChatColor.YELLOW + "Walking speed of " + target.getName() + " has been set to " + multiplier + '.'); + } + catch (IllegalArgumentException ex) { + if (walkSpeed < 0.2f) { + sender.sendMessage(ChatColor.RED + "Speed multiplier too low: " + multiplier); + } + else if (walkSpeed > 0.2f) { + sender.sendMessage(ChatColor.RED + "Speed multiplier too high: " + multiplier); + } + } + } + return true; + } + + @Override + public List onTabComplete(final CommandSender sender, final Command command, final String label, final String[] args) { + switch (args.length) { + case 1: { + return BukkitUtils.getCompletions(args, SpeedCommand.COMPLETIONS_FIRST); + } + case 2: { + return BukkitUtils.getCompletions(args, SpeedCommand.COMPLETIONS_SECOND); + } + case 3: { + return null; + } + default: { + return Collections.emptyList(); + } + } + } + + static { + COMPLETIONS_FIRST = ImmutableList.of("fly", "walk"); + COMPLETIONS_SECOND = ImmutableList.of("reset"); + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/StaffChatCommand.java b/src/notifyz/hardcorefactions/commands/essentials/StaffChatCommand.java new file mode 100644 index 0000000..b0fc7fb --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/StaffChatCommand.java @@ -0,0 +1,49 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.apache.commons.lang.StringUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.Color; + + +public class StaffChatCommand implements CommandExecutor { + + private final HardcoreFactionsPlugin staffChat = HardcoreFactionsPlugin.getPlugin(); + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] arguments) { + if (sender.hasPermission("hcf.command.staffmode")) { + if (arguments.length == 0) { + if (sender instanceof Player) { + Player player = (Player) sender; + if (staffChat.getStaffModeListener().isStaffChatActive(player)) { + staffChat.getStaffModeListener().setStaffChat(player, false); + sender.sendMessage(Color.translate("&eYou are now in &cpublic &echat mode.")); + } else { + staffChat.getStaffModeListener().setStaffChat(player, true); + sender.sendMessage(Color.translate("&eYou are now in &bstaff &echat mode.")); + } + } else { + sender.sendMessage(Color.translate("&cYou can not execute this command on console.")); + } + } else { + for (Player staff : Bukkit.getServer().getOnlinePlayers()) { + if (staff.hasPermission("hcf.command.staffmode")) { + staff.sendMessage(Color.translate( + "&b(Staff Chat)&7 " + sender.getName() + "&7: &f" + StringUtils.join(arguments, ' '))); + } + } + } + Bukkit.getServer().getConsoleSender().sendMessage(Color.translate("&b(Staff Chat) " + ChatColor.GRAY + sender.getName() + "&7: &f" + StringUtils.join(arguments, ' '))); + } else { + sender.sendMessage(Color.translate("&cYou do not have permissions to execute this command.")); + } + return true; + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/essentials/StatsCommand.java b/src/notifyz/hardcorefactions/commands/essentials/StatsCommand.java new file mode 100644 index 0000000..6fdad94 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/StatsCommand.java @@ -0,0 +1,112 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.Statistic; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; + +public class StatsCommand implements CommandExecutor, Listener { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + Player player = (Player) sender; + if ((cmd.getName().equalsIgnoreCase("stats")) && ((sender instanceof Player)) && (args.length > 1)) { + sender.sendMessage("§cUsage: /stats "); + return true; + } + if (args.length == 0) { + sender.sendMessage("§cUsage: /stats "); + return true; + } + Player target = Bukkit.getServer().getPlayer(args[0]); + if ((args.length == 1) && (target == null)) { + player.sendMessage("§cThat player is currently offline."); + return true; + } + onStatsGUI(player, target); + + return false; + } + + public void onStatsGUI(Player player, Player target) { + Inventory inv = Bukkit.createInventory(null, 36, ChatColor.GOLD + "Player: " + target.getName()); + + ItemStack Diamond_ore = new ItemStack(Material.DIAMOND_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.DIAMOND_ORE)); + ItemStack Quartz_ore = new ItemStack(Material.QUARTZ_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.QUARTZ_ORE)); + ItemStack Emerald_ore = new ItemStack(Material.EMERALD_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.EMERALD_ORE)); + ItemStack Gold_ore = new ItemStack(Material.GOLD_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.GOLD_ORE)); + ItemStack Iron_ore = new ItemStack(Material.IRON_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.IRON_ORE)); + ItemStack Coal_ore = new ItemStack(Material.COAL_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.COAL_ORE)); + ItemStack Lapis_ore = new ItemStack(Material.LAPIS_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.LAPIS_ORE)); + ItemStack RedStone_ore = new ItemStack(Material.REDSTONE_ORE, target.getStatistic(Statistic.MINE_BLOCK, Material.REDSTONE_ORE)); + ItemStack Bone = new ItemStack(Material.BONE, target.getStatistic(Statistic.DEATHS)); + ItemStack DiamondSword = new ItemStack(Material.DIAMOND_SWORD, target.getStatistic(Statistic.PLAYER_KILLS)); + + ItemMeta DiamondMeta = Diamond_ore.getItemMeta(); + ItemMeta QuartzMeta = Quartz_ore.getItemMeta(); + ItemMeta EmeraldMeta = Emerald_ore.getItemMeta(); + ItemMeta GoldMeta = Gold_ore.getItemMeta(); + ItemMeta IronMeta = Iron_ore.getItemMeta(); + ItemMeta CoalMeta = Coal_ore.getItemMeta(); + ItemMeta LapisMeta = Lapis_ore.getItemMeta(); + ItemMeta RedStoneMeta = RedStone_ore.getItemMeta(); + ItemMeta BoneMeta = Bone.getItemMeta(); + ItemMeta DiamondSwordMeta = DiamondSword.getItemMeta(); + + DiamondMeta.setDisplayName("§bDiamond(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.DIAMOND_ORE)); + QuartzMeta.setDisplayName("§fQuartz(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.QUARTZ_ORE)); + EmeraldMeta.setDisplayName("§aEmerald(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.EMERALD_ORE)); + IronMeta.setDisplayName("§7Iron(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.IRON_ORE)); + GoldMeta.setDisplayName("§6Gold(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.GOLD_ORE)); + RedStoneMeta.setDisplayName("§cRedstone(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.REDSTONE_ORE)); + CoalMeta.setDisplayName("§8Coal(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.COAL_ORE)); + LapisMeta.setDisplayName("§9Lapis(s): §f" + target.getStatistic(Statistic.MINE_BLOCK, Material.LAPIS_ORE)); + BoneMeta.setDisplayName("§4Death(s): §f" + target.getStatistic(Statistic.DEATHS)); + DiamondSwordMeta.setDisplayName("§4Kill(s): §f" + target.getStatistic(Statistic.PLAYER_KILLS)); + + Diamond_ore.setItemMeta(DiamondMeta); + Quartz_ore.setItemMeta(QuartzMeta); + Emerald_ore.setItemMeta(EmeraldMeta); + Iron_ore.setItemMeta(IronMeta); + Gold_ore.setItemMeta(GoldMeta); + RedStone_ore.setItemMeta(RedStoneMeta); + Coal_ore.setItemMeta(CoalMeta); + Lapis_ore.setItemMeta(LapisMeta); + Bone.setItemMeta(BoneMeta); + DiamondSword.setItemMeta(DiamondSwordMeta); + + inv.setItem(23, Diamond_ore); + inv.setItem(21, Quartz_ore); + inv.setItem(15, Emerald_ore); + inv.setItem(22, Iron_ore); + + inv.setItem(14, Gold_ore); + inv.setItem(13, RedStone_ore); + inv.setItem(12, Coal_ore); + inv.setItem(11, Lapis_ore); + + inv.setItem(3, DiamondSword); + inv.setItem(5, Bone); + + player.openInventory(inv); + } + + @EventHandler + public void onInventoryClick(InventoryClickEvent event) { + @SuppressWarnings("unused") + Player player = (Player) event.getWhoClicked(); + if (event.getInventory().getTitle().startsWith(ChatColor.GOLD + "Player: ")) { + event.setCancelled(true); + } + } + +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/TeleportCommand.java b/src/notifyz/hardcorefactions/commands/essentials/TeleportCommand.java new file mode 100644 index 0000000..da77cc3 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/TeleportCommand.java @@ -0,0 +1,198 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +public class TeleportCommand implements CommandExecutor { + + public boolean isDouble(String s) { + try{ + Double.parseDouble(s); + return true; + } catch(NumberFormatException e) { + return false; + } + } + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (cmd.getName().equalsIgnoreCase("teleport")) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + if (!sender.hasPermission("hcf.command.teleport") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + + if (args.length == 1) { + Player p = (Player) sender; + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + p.teleport(t); + sender.sendMessage("§eYou have been teleported to §c" + t.getName() + "§e."); + return true; + } + + if (args.length == 2) { + if (!sender.hasPermission("hcf.command.teleport.others") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = Bukkit.getPlayer(args[0]); + Player t = Bukkit.getPlayer(args[1]); + if (p == null) { + sender.sendMessage("§cPlayer " + args[0] + " offline."); + return true; + } + if (t == null) { + sender.sendMessage("§cPlayer " + args[1] + " offline."); + return true; + } + p.teleport(t); + sender.sendMessage("§eYou have teleported §c" + p.getName() + " §eto §c" + t.getName() + "§e."); + return true; + } + + sender.sendMessage("§c/teleport "); + return true; + } + + + + + + + + + + + + + + + + + + + + + if (cmd.getName().equalsIgnoreCase("teleportall")) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + Player p = (Player) sender; + if (!sender.hasPermission("hcf.command.teleportall") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + + if (args.length > 0) { + sender.sendMessage("§c/teleportall"); + return true; + } + for (Player online : Bukkit.getOnlinePlayers()) { + if (online != p) { + online.teleport(p); + online.sendMessage("§eYou have been teleported to §c" + p.getName() + "§e."); + } + } + p.sendMessage("§eYou have teleported §call players online §eto §cyou§e."); + return true; + } + + + + + + + + + + + + + + + + + + if (cmd.getName().equalsIgnoreCase("tphere")) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (!sender.hasPermission("hcf.command.teleport") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + + if (args.length == 1) { + Player p = (Player) sender; + Player t = Bukkit.getPlayer(args[0]); + if (t == null) { + sender.sendMessage(ChatColor.RED + "That player is currently offline"); + return true; + } + t.teleport(p); + p.sendMessage("§eYou have teleported §c" + t.getName() + " §eto your location."); + t.sendMessage("§eYou have been teleported to §c" + p.getName() + "§e."); + return true; + } + sender.sendMessage("§c/tphere "); + return true; + } + + + + + + + + + + + + + + if (cmd.getName().equalsIgnoreCase("tppos")) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (!sender.hasPermission("hcf.command.teleport") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + + Player p = (Player) sender; + + if (args.length < 3 || args.length > 3) { + sender.sendMessage("§c/tppos [x] [y] [z]"); + return true; + } + if (!isDouble(args[0]) || !isDouble(args[1]) || !isDouble(args[2])) { + sender.sendMessage("§c/tppos [x] [y] [z]"); + return true; + } + double x = Double.parseDouble(args[0])+0.5; + double y = Double.parseDouble(args[1])+0.5; + double z = Double.parseDouble(args[2])+0.5; + Location loc = new Location(p.getWorld(), x, y, z, p.getLocation().getYaw(), p.getLocation().getPitch()); + p.teleport(loc); + p.sendMessage("§eYou have been teleported to the coordinates §c" + x + "§e, §c" + y + "§e, §c" + z + "§e."); + return true; + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/ToggleChatCommand.java b/src/notifyz/hardcorefactions/commands/essentials/ToggleChatCommand.java new file mode 100644 index 0000000..b61dd85 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/ToggleChatCommand.java @@ -0,0 +1,38 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.user.IUser; + +public class ToggleChatCommand extends ICommandAPI { + private final HardcoreFactionsPlugin plugin; + + public ToggleChatCommand(HardcoreFactionsPlugin plugin) { + super("togglechat", "Toggles global chat visibility."); + this.setAliases(new String[] { "tgc", "toggleglobalchat" }); + this.setUsage("/(command)"); + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + Player player = (Player) sender; + IUser baseUser = this.plugin.getUserManagerr().getUser(player.getUniqueId()); + boolean newChatToggled = !baseUser.isGlobalChatVisible(); + baseUser.setGlobalChatVisible(newChatToggled); + sender.sendMessage(ChatColor.YELLOW + "You have toggled global chat visibility " + + (newChatToggled ? new StringBuilder().append(ChatColor.GREEN).append("on").toString() + : new StringBuilder().append(ChatColor.RED).append("off").toString()) + + ChatColor.YELLOW + '.'); + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.java b/src/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.java new file mode 100644 index 0000000..860616d --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/ToggleMessagesCommand.java @@ -0,0 +1,38 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.user.IUser; + +public class ToggleMessagesCommand extends ICommandAPI { + private final HardcoreFactionsPlugin plugin; + + public ToggleMessagesCommand(HardcoreFactionsPlugin plugin) { + super("togglemessages", "Toggles private messages."); + this.setAliases(new String[] { "togglepm", "toggleprivatemessages" }); + this.setUsage("/(command)"); + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + Player player = (Player) sender; + IUser baseUser = this.plugin.getUserManagerr().getUser(player.getUniqueId()); + boolean newToggled = !baseUser.isMessagesVisible(); + baseUser.setMessagesVisible(newToggled); + sender.sendMessage(ChatColor.YELLOW + "You have turned private messages " + + (newToggled ? new StringBuilder().append(ChatColor.GREEN).append("on").toString() + : new StringBuilder().append(ChatColor.RED).append("off").toString()) + + ChatColor.YELLOW + '.'); + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/ToggleSoundsCommand.java b/src/notifyz/hardcorefactions/commands/essentials/ToggleSoundsCommand.java new file mode 100644 index 0000000..c0cf168 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/ToggleSoundsCommand.java @@ -0,0 +1,53 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Sound; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.chat.MessageEvent; +import notifyz.hardcorefactions.utilities.user.IUser; + +public class ToggleSoundsCommand extends ICommandAPI implements Listener { + private final HardcoreFactionsPlugin plugin; + + public ToggleSoundsCommand(HardcoreFactionsPlugin plugin) { + super("sounds", "Toggles messaging sounds."); + this.setAliases(new String[] { "pmsounds", "togglepmsounds", "messagingsounds" }); + this.setUsage("/(command) [playerName]"); + this.plugin = plugin; + plugin.getServer().getPluginManager().registerEvents(this, plugin); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + Player player = (Player) sender; + IUser baseUser = this.plugin.getUserManagerr().getUser(player.getUniqueId()); + boolean newMessagingSounds = !baseUser.isMessagingSounds() || args.length >= 2 && Boolean.parseBoolean(args[1]); + baseUser.setMessagingSounds(newMessagingSounds); + sender.sendMessage(ChatColor.YELLOW + "Messaging sounds are now " + + (newMessagingSounds ? new StringBuilder().append(ChatColor.GREEN).append("on").toString() + : new StringBuilder().append(ChatColor.RED).append("off").toString()) + + ChatColor.YELLOW + '.'); + return true; + } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) + public void onPlayerMessage(MessageEvent event) { + Player recipient = event.getRecipient(); + IUser recipientUser = this.plugin.getUserManagerr().getUser(recipient.getUniqueId()); + if (recipientUser.isMessagingSounds()) { + recipient.playSound(recipient.getLocation(), Sound.LEVEL_UP, 1.0f, 1.0f); + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/TopCommand.java b/src/notifyz/hardcorefactions/commands/essentials/TopCommand.java new file mode 100644 index 0000000..88667ee --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/TopCommand.java @@ -0,0 +1,35 @@ +package notifyz.hardcorefactions.commands.essentials; + +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class TopCommand implements CommandExecutor { + + public static Location toHighestBlock(final Location l) { + return new Location(l.getWorld(), l.getX(), l.getWorld().getHighestBlockYAt(l.getBlockX(), l.getBlockZ()), l.getZ(), l.getYaw(), l.getPitch()); + } + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + Player p = (Player) sender; + if (cmd.getName().equalsIgnoreCase("top")) { + if (!sender.hasPermission("hcf.command.top") && !sender.hasPermission("hcf.command.*") && !sender.hasPermission("*")) { + sender.sendMessage(ChatColor.RED + "You do not have access to this command."); + return true; + } + p.teleport(toHighestBlock(p.getLocation())); + p.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.teleport-top-message"))); + } + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/UptimeCommand.java b/src/notifyz/hardcorefactions/commands/essentials/UptimeCommand.java new file mode 100644 index 0000000..0953bf2 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/UptimeCommand.java @@ -0,0 +1,34 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.lang.management.ManagementFactory; +import java.util.Locale; +import java.util.TimeZone; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.apache.commons.lang.time.FastDateFormat; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; + +public class UptimeCommand extends ICommandAPI { + public static FastDateFormat TIME_FORMATTER; + + public UptimeCommand() { + super("uptime", "Check the uptime of the server."); + this.setUsage("/(command)"); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + long startTime = ManagementFactory.getRuntimeMXBean().getStartTime(); + String upTime = DurationFormatUtils.formatDurationWords(System.currentTimeMillis() - startTime, true, true); + sender.sendMessage(ChatColor.BLUE + "Server up-time: " + ChatColor.GOLD + upTime + ChatColor.BLUE + ", started at " + UptimeCommand.TIME_FORMATTER.format(startTime) + "."); + return true; + } + + static { + TIME_FORMATTER = FastDateFormat.getInstance("dd/MM HH:mm:ss", TimeZone.getTimeZone("GMT+1"), Locale.ENGLISH); + } +} diff --git a/src/notifyz/hardcorefactions/commands/essentials/VanishCommand.java b/src/notifyz/hardcorefactions/commands/essentials/VanishCommand.java new file mode 100644 index 0000000..3884958 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/VanishCommand.java @@ -0,0 +1,52 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.Color; + + +public class VanishCommand implements CommandExecutor, TabCompleter { + private final HardcoreFactionsPlugin vanish = HardcoreFactionsPlugin.getPlugin(); + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (sender instanceof Player) { + Player player = (Player) sender; + if (player.hasPermission("hcf.command.vanish")) { + if (args.length > 0) { + player.sendMessage(Color.translate("&cUsage: /" + label)); + } else { + if (vanish.getStaffModeListener().isVanished(player)) { + vanish.getStaffModeListener().setVanished(player, false); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.vanish-disabled"))); + } else { + vanish.getStaffModeListener().setVanished(player, true); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.vanish-enabled"))); + } + } + } else { + player.sendMessage(Color.translate("&cYou do not have permissions to execute this command.")); + } + } else { + sender.sendMessage(Color.translate("&cYou can not execute this command on console.")); + } + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + if (args.length > 1) { + return Collections.emptyList(); + } + return null; + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/essentials/WorldCommand.java b/src/notifyz/hardcorefactions/commands/essentials/WorldCommand.java new file mode 100644 index 0000000..794555d --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/essentials/WorldCommand.java @@ -0,0 +1,70 @@ +package notifyz.hardcorefactions.commands.essentials; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import net.minecraft.util.org.apache.commons.lang3.text.WordUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.player.PlayerTeleportEvent; + +import notifyz.hardcorefactions.utilities.api.utilties.command.ICommandAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + +public class WorldCommand extends ICommandAPI { + public WorldCommand() { + super("world", "Change current world."); + this.setAliases(new String[] { "changeworld", "switchworld" }); + this.setUsage("/(command) "); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, + String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable for players."); + return true; + } + if (args.length < 1) { + sender.sendMessage(ChatColor.RED + this.getUsage()); + return true; + } + World world = Bukkit.getWorld(args[0]); + if (world == null) { + sender.sendMessage(ChatColor.RED + "World '" + args[0] + "' not found."); + return true; + } + Player player = (Player) sender; + if (player.getWorld().equals(world)) { + sender.sendMessage(ChatColor.RED + "You are already in that world."); + return true; + } + Location origin = player.getLocation(); + Location location = new Location(world, origin.getX(), origin.getY(), origin.getZ(), origin.getYaw(), + origin.getPitch()); + player.teleport(location, PlayerTeleportEvent.TeleportCause.COMMAND); + sender.sendMessage(ChatColor.GRAY + "Switched world to '" + world.getName() + ChatColor.YELLOW + " [" + WordUtils.capitalizeFully(world.getEnvironment().name().replace('_', ' ')) + ']' + ChatColor.GRAY + "'."); + return true; + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + public List onTabComplete(CommandSender sender, Command command, String label, + String[] args) { + if (args.length != 1) { + return Collections.emptyList(); + } + List worlds = Bukkit.getWorlds(); + ArrayList results = new ArrayList(worlds.size()); + for (World world : Bukkit.getWorlds()) { + results.add(world.getName()); + } + return BukkitUtils.getCompletions(args, results); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.java b/src/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.java new file mode 100644 index 0000000..c126af1 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/BardEnergyCommand.java @@ -0,0 +1,117 @@ +package notifyz.hardcorefactions.commands.hcf; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.classes.type.bard.BardClass; + + +public class BardEnergyCommand implements CommandExecutor{ + + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){ + + if(!(sender instanceof Player))return true; + + Player p = (Player) sender; + + if(args.length == 0){ + sender.sendMessage(ChatColor.RED + "Usage: /bardenergy [player]"); + }else if(args.length == 1){ + if(args[0].equalsIgnoreCase("checkenergy")){ + if(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(p) != null){ + if(!(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(p) instanceof BardClass)){ + p.sendMessage(ChatColor.RED + "You are not a bard."); + return true; + } + BardClass bard = (BardClass)HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(p); + p.sendMessage(ChatColor.AQUA + "Energy: " + ChatColor.YELLOW + bard.getEnergy(p)); + }else{ + p.sendMessage(ChatColor.RED + "You are not a bard."); + } + }else{ + sender.sendMessage(ChatColor.RED + "Usage: /bardenergy [player]"); + } + }else if(args.length == 2){ + if(args[0].equalsIgnoreCase("checkenergy")){ + Player t = Bukkit.getServer().getPlayer(args[1]); + if(t != null){ + if(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(t) != null){ + if(!(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(t) instanceof BardClass)){ + p.sendMessage(ChatColor.RED + t.getName() + " is not a bard."); + return true; + } + BardClass bard = (BardClass)HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(t); + p.sendMessage(ChatColor.AQUA + t.getName() + "'s Energy: " + ChatColor.YELLOW + bard.getEnergy(t)); + }else{ + p.sendMessage(ChatColor.RED + t.getName() + " is not a bard."); + } + }else{ + p.sendMessage(ChatColor.RED + args[1] + " is not online."); + } + }else if(args[0].equalsIgnoreCase("setenergy")){ + Double energy; + + try{ + energy = Double.parseDouble(args[1]); + }catch(Exception e){ + p.sendMessage(ChatColor.RED + "Please enter a valid number eg 1.5!"); + return true; + } + + if(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(p) != null){ + if(!(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(p) instanceof BardClass)){ + p.sendMessage(ChatColor.RED + "You are not a bard."); + return true; + } + BardClass bard = (BardClass)HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(p); + bard.setEnergy(p, energy); + p.sendMessage(ChatColor.GREEN + "Set your own energy to " + energy + "!"); + }else{ + p.sendMessage(ChatColor.RED + "You are not a bard."); + } + }else{ + sender.sendMessage(ChatColor.RED + "Usage: /bardenergy [player] [energy]"); + } + }else if(args.length == 3){ + if(args[0].equalsIgnoreCase("setenergy")){ + Double energy; + + try{ + energy = Double.parseDouble(args[2]); + }catch(Exception e){ + p.sendMessage(ChatColor.RED + "Please enter a valid number eg 1.5!"); + return true; + } + + Player t = Bukkit.getServer().getPlayer(args[1]); + if(t != null){ + if(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(t) != null){ + if(!(HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(t) instanceof BardClass)){ + p.sendMessage(ChatColor.RED + t.getName() + " is not a bard."); + return true; + } + BardClass bard = (BardClass)HardcoreFactionsPlugin.getInstance().getPvPClassManager().getEquippedClass(t); + bard.setEnergy(t, energy); + p.sendMessage(ChatColor.GREEN + "Set " + t.getName() + "'s energy to " + energy + "!"); + }else{ + p.sendMessage(ChatColor.RED + t.getName() + " is not a bard."); + } + }else{ + p.sendMessage(ChatColor.RED + args[1] + " is not online."); + } + + }else{ + sender.sendMessage(ChatColor.RED + "Usage: /bardenergy [player] [energy]"); + } + } + + return true; + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/BottleCommand.java b/src/notifyz/hardcorefactions/commands/hcf/BottleCommand.java new file mode 100644 index 0000000..8fa8bca --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/BottleCommand.java @@ -0,0 +1,117 @@ +package notifyz.hardcorefactions.commands.hcf; + +import org.bukkit.plugin.*; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.listeners.hcf.ExpMultiplierListener; + +import org.bukkit.command.*; +import org.bukkit.entity.*; +import org.bukkit.inventory.*; +import org.bukkit.event.player.*; +import org.bukkit.event.block.*; +import org.bukkit.*; +import org.bukkit.inventory.meta.*; +import org.bukkit.event.entity.*; +import org.bukkit.event.*; +import java.text.*; +import java.util.*; + +public class BottleCommand implements CommandExecutor, Listener +{ + private final Map thrownExpBottleIntegerMap; + private final String name; + + public BottleCommand(final HardcoreFactionsPlugin hcf) { + this.name = ChatColor.GOLD + "XP Bottle"; + hcf.getServer().getPluginManager().registerEvents((Listener)this, (Plugin)hcf); + this.thrownExpBottleIntegerMap = new HashMap(); + } + + public boolean onCommand(final CommandSender sender, final Command cmd, final String cmdLabel, final String[] args) { + if (sender instanceof Player) { + final Player player = (Player)sender; + final int exp = player.getTotalExperience(); + if (exp == 0) { + player.sendMessage(ChatColor.RED + "You have no XP"); + } + else { + final ItemStack bottle = this.createBottle(player); + player.setTotalExperience(0); + player.setLevel(0); + player.setExp(0.0f); + if (player.getInventory().addItem(new ItemStack[] { bottle }).isEmpty()) { + player.sendMessage(ChatColor.RED + "Created an experience bottle"); + } + else { + player.sendMessage(ChatColor.RED + "You have no space in your inventory"); + } + } + } + else { + sender.sendMessage(ChatColor.RED + "You must be a player to execute this command"); + } + return true; + } + + @EventHandler + public void onPlayerClick(final PlayerInteractEvent e) { + final Player player = e.getPlayer(); + final ItemStack item = e.getItem(); + if (e.getAction() == Action.RIGHT_CLICK_AIR || (e.getAction() == Action.RIGHT_CLICK_BLOCK && item != null && item.getType() == Material.EXP_BOTTLE)) { + final ItemMeta meta = item.getItemMeta(); + final String name = meta.getDisplayName(); + if (meta.hasDisplayName() && meta.hasLore() && name.equals(this.name) && meta.getLore().size() == 3) { + final String loreline = meta.getLore().get(2); + e.setCancelled(true); + Integer xp; + try { + xp = Integer.parseInt(loreline.substring((ChatColor.YELLOW + "Experience: " + ChatColor.GRAY).length(), loreline.length())); + } + catch (Exception ex) { + player.sendMessage(ChatColor.RED + "Invalid XP bottle"); + return; + } + final ThrownExpBottle thrownExpBottle = (ThrownExpBottle)player.launchProjectile(ThrownExpBottle.class); + this.thrownExpBottleIntegerMap.put(thrownExpBottle, xp); + final ItemStack hand = item.clone(); + hand.setAmount(hand.getAmount() - 1); + player.getInventory().setItemInHand(hand); + player.updateInventory(); + } + } + } + + @EventHandler(priority = EventPriority.HIGHEST) + public void onXPEvent(final ExpBottleEvent e) { + final Integer xp = this.thrownExpBottleIntegerMap.remove(e.getEntity()); + if (xp != null) { + e.setExperience((int)Math.round(xp / ExpMultiplierListener.DEFAULT_MULTIPLER)); + } + } + + public int getExpToLevel(final int expLevel) { + return (expLevel >= 30) ? (62 + (expLevel - 30) * 7) : ((expLevel >= 15) ? (17 + (expLevel - 15) * 3) : 17); + } + + public int fromXP(final int levels, final float exp) { + int xp = 0; + for (int i = levels; i >= 0; --i) { + xp += this.getExpToLevel(i); + } + xp -= levels; + return xp; + } + + public ItemStack createBottle(final Player player) { + final int exp = this.fromXP(player.getLevel(), player.getExp()); + final int levels = player.getLevel(); + final float remainder = player.getExp(); + final ItemStack itemStack = new ItemStack(Material.EXP_BOTTLE, 1); + final ItemMeta itemMeta = itemStack.getItemMeta(); + itemMeta.setDisplayName(this.name); + itemMeta.setLore(Arrays.asList(ChatColor.YELLOW + "Owner: " + ChatColor.GRAY + player.getName(), ChatColor.YELLOW + "Worth: " + ChatColor.GRAY + new DecimalFormat("#.#").format(levels + remainder) + " Levels", ChatColor.YELLOW + "Experience: " + ChatColor.GRAY + exp)); + itemStack.setItemMeta(itemMeta); + return itemStack; + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/CobbleCommand.java b/src/notifyz/hardcorefactions/commands/hcf/CobbleCommand.java new file mode 100644 index 0000000..94c7b4a --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/CobbleCommand.java @@ -0,0 +1,59 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Set; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerPickupItemEvent; +import org.bukkit.event.player.PlayerQuitEvent; + +import com.google.common.collect.Sets; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class CobbleCommand implements Listener, CommandExecutor { + + public static Set disabled = Sets.newHashSet(); + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "Only players can execute this command."); + return true; + } + + Player player = (Player) sender; + + if (disabled.contains(player)) { + disabled.remove(player); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.cobble-enabled"))); + } else { + disabled.add(player); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.cobble-disabled"))); + } + + return true; + } + + @EventHandler + public void onPlayerPickup(PlayerQuitEvent event) { + disabled.remove(event.getPlayer()); + } + + @EventHandler + public void onPlayerPickup(PlayerPickupItemEvent event) { + Material type = event.getItem().getItemStack().getType(); + if (type == Material.STONE || type == Material.COBBLESTONE) { + if (disabled.contains(event.getPlayer())) { + event.setCancelled(true); + } + } + } + +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/hcf/CrowbarCommand.java b/src/notifyz/hardcorefactions/commands/hcf/CrowbarCommand.java new file mode 100644 index 0000000..000db1e --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/CrowbarCommand.java @@ -0,0 +1,49 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.utilities.crowbar.Crowbar; + +public class CrowbarCommand implements CommandExecutor, TabCompleter { + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length >= 2) { + if (args[0].equalsIgnoreCase("give")) { + Player target = Bukkit.getPlayer(args[1]); + + if (target == null) { + sender.sendMessage(ChatColor.RED + "Player '" + args[1] + "' not found."); + return true; + } + + if (target.getInventory().firstEmpty() == -1) { + sender.sendMessage(ChatColor.RED + target.getName() + " has no empty slot."); + return true; + } + + target.getInventory().addItem(new Crowbar().toItemStack().get()); + target.sendMessage(ChatColor.RED + sender.getName() + " has given you a crowbar."); + sender.sendMessage(ChatColor.RED + "You have given " + target.getName() + " a crowbar."); + return true; + } + } + + sender.sendMessage(ChatColor.RED + "Usage: /" + label + " give "); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 2 ? null : Collections.emptyList(); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/EOTWCommand.java b/src/notifyz/hardcorefactions/commands/hcf/EOTWCommand.java new file mode 100644 index 0000000..d714947 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/EOTWCommand.java @@ -0,0 +1,87 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.ConsoleCommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.conversations.Conversable; +import org.bukkit.conversations.ConversationContext; +import org.bukkit.conversations.ConversationFactory; +import org.bukkit.conversations.Prompt; +import org.bukkit.conversations.StringPrompt; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.games.eotw.EOTWHandler; + +/** + * Command used to set the server in EOTW mode. + */ +public class EOTWCommand implements CommandExecutor, TabCompleter { + + private final ConversationFactory factory; + + public EOTWCommand(HardcoreFactionsPlugin plugin) { + factory = new ConversationFactory(plugin). + withFirstPrompt(new EotwPrompt()). + withEscapeSequence("/no"). + withTimeout(10). + withModality(false). + withLocalEcho(true); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof ConsoleCommandSender)) { + sender.sendMessage(ChatColor.RED + "This command can be only executed from console."); + return true; + } + + Conversable conversable = (Conversable) sender; + conversable.beginConversation(factory.buildConversation(conversable)); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + } + + private static final class EotwPrompt extends StringPrompt { + + @Override + public String getPromptText(ConversationContext context) { + return ChatColor.YELLOW + "Are you sure you want to do this? The server will be in EOTW mode," + + " If EOTW mode is active, all claims whilst making Spawn a KOTH. " + + "You will still have " + EOTWHandler.EOTW_WARMUP_WAIT_SECONDS + " seconds to cancel this using " + + "the same command though. Type " + ChatColor.GREEN + "yes" + ChatColor.YELLOW + " to confirm or " + + ChatColor.RED + "no" + ChatColor.YELLOW + " to deny."; + } + + @Override + public Prompt acceptInput(final ConversationContext context, final String string) { + if (string.equalsIgnoreCase("yes")) { + boolean newStatus = !HardcoreFactionsPlugin.getPlugin().getEotwHandler().isEndOfTheWorld(); + Conversable conversable = context.getForWhom(); + if (conversable instanceof CommandSender) { + Command.broadcastCommandMessage((CommandSender) conversable, ChatColor.GOLD + "Set EOTW mode to " + + newStatus + '.'); + } else + conversable.sendRawMessage(ChatColor.GOLD + "Set EOTW mode to " + newStatus + '.'); + + HardcoreFactionsPlugin.getPlugin().getEotwHandler().setEndOfTheWorld(newStatus); + } else if (string.equalsIgnoreCase("no")) { + context.getForWhom().sendRawMessage(ChatColor.BLUE + "Cancelled the process of setting EOTW mode."); + } else { + context.getForWhom().sendRawMessage(ChatColor.RED + "Unrecognized response. Process of toggling " + + "EOTW mode has been cancelled."); + } + + return Prompt.END_OF_CONVERSATION; + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/EOTWReviveCommand.java b/src/notifyz/hardcorefactions/commands/hcf/EOTWReviveCommand.java new file mode 100644 index 0000000..6ae191b --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/EOTWReviveCommand.java @@ -0,0 +1,74 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.deathban.Deathban; +import notifyz.hardcorefactions.listeners.hcf.EOTWListener; +import notifyz.hardcorefactions.team.utilities.TeamUser; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + +public class EOTWReviveCommand implements CommandExecutor, TabCompleter { + + public EOTWReviveCommand(HardcoreFactionsPlugin plugin) { + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length == 0) { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + " "); + return true; + } + + OfflinePlayer target = Bukkit.getOfflinePlayer(args[0]); //TODO: breaking + + if (!target.hasPlayedBefore() && !target.isOnline()) { + sender.sendMessage(ChatColor.GOLD + "Player '" + ChatColor.WHITE + args[0] + + ChatColor.GOLD + "' not found."); + return true; + } + + UUID targetUUID = target.getUniqueId(); + TeamUser factionTarget = HardcoreFactionsPlugin.getPlugin().getUserManager().getUser(targetUUID); + + if ((!HardcoreFactionsPlugin.getInstance().getEotwHandler().isEndOfTheWorld()) && (!EOTWListener.dead.contains(factionTarget))) { + sender.sendMessage(ChatColor.RED + "EOTW is not enabled"); + return true; + } + + EOTWListener.dead.remove(target.getUniqueId()); + sender.sendMessage(ChatColor.RED.toString() + target.getName() + " has been EOTW revived."); + + return false; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + if (args.length != 1) { + return Collections.emptyList(); + } + List results = new ArrayList(); + for (TeamUser factionUser : HardcoreFactionsPlugin.getPlugin().getUserManager().getUsers().values()) { + Deathban deathban = factionUser.getDeathban(); + if ((deathban != null) && (deathban.isActive())) { + OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(factionUser.getUserUUID()); + String name = offlinePlayer.getName(); + if (name != null) { + results.add(name); + } + } + } + return BukkitUtils.getCompletions(args, results); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/EconomyCommand.java b/src/notifyz/hardcorefactions/commands/hcf/EconomyCommand.java new file mode 100644 index 0000000..900be0c --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/EconomyCommand.java @@ -0,0 +1,183 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import com.google.common.collect.ImmutableList; +import com.google.common.collect.Lists; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.economy.Economy; +import notifyz.hardcorefactions.utilities.api.utilties.command.IConstantsAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; + +/** + * Command used to check a players' balance. + */ +public class EconomyCommand implements CommandExecutor, TabCompleter { + + // The max amount of players shown in '/bal top'. + @SuppressWarnings("unused") + private static final int MAX_ENTRIES = 10; + + private final HardcoreFactionsPlugin plugin; + + public EconomyCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(final CommandSender sender, Command command, String label, String[] args) { + OfflinePlayer target; + if (args.length > 0 && sender.hasPermission(command.getPermission() + ".staff")) { + target = BukkitUtils.offlinePlayerWithNameOrUUID(args[0]); + } else if (sender instanceof Player) { + target = (Player) sender; + } else { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + " "); + return true; + } + + if (!target.hasPlayedBefore() && !target.isOnline()) { + sender.sendMessage(String.format(IConstantsAPI.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[0])); + return true; + } + + UUID uuid = target.getUniqueId(); + int balance = plugin.getEconomyManager().getBalance(uuid); + + if (args.length < 2) { + sender.sendMessage(ChatColor.YELLOW + (sender.equals(target) ? "Your balance" : "Balance of " + + target.getName()) + " is " + ChatColor.AQUA + Economy.ECONOMY_SYMBOL + + balance + ChatColor.YELLOW + '.'); + + return true; + } + + if (args[1].equalsIgnoreCase("give") || args[1].equalsIgnoreCase("add")) { + if (args.length < 3) { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + ' ' + target.getName() + ' ' + + args[1] + " "); + return true; + } + + if (!sender.hasPermission(command.getPermission() + ".staff")) { + return true; + } + + Integer amount = JavaUtils.tryParseInt(args[2]); + + if (amount == null) { + sender.sendMessage(ChatColor.RED + "'" + args[2] + "' is not a valid number."); + return true; + } + + int newBalance = plugin.getEconomyManager().addBalance(uuid, amount); + sender.sendMessage(new String[]{"" + + ChatColor.YELLOW + + "Added " + ChatColor.AQUA + Economy.ECONOMY_SYMBOL + JavaUtils.format(amount) + ChatColor.YELLOW + " to balance of " + + target.getName() + '.', ChatColor.YELLOW + "Balance of " + ChatColor.AQUA + target.getName() + " is now " + ChatColor.AQUA + + Economy.ECONOMY_SYMBOL + newBalance + ChatColor.YELLOW + '.' + }); + + return true; + } + + if (args[1].equalsIgnoreCase("take") || args[1].equalsIgnoreCase("negate") + || args[1].equalsIgnoreCase("minus") || args[1].equalsIgnoreCase("subtract")) { + + if (args.length < 3) { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + ' ' + target.getName() + ' ' + + args[1] + " "); + return true; + } + + if (!sender.hasPermission(command.getPermission() + ".staff")) { + return true; + } + + Integer amount = JavaUtils.tryParseInt(args[2]); + + if (amount == null) { + sender.sendMessage(ChatColor.RED + "'" + args[2] + "' is not a valid number."); + return true; + } + + int newBalance = plugin.getEconomyManager().subtractBalance(uuid, amount); + + sender.sendMessage(new String[]{"" + + ChatColor.YELLOW + "Taken " + ChatColor.AQUA + Economy.ECONOMY_SYMBOL + JavaUtils.format(amount) + ChatColor.YELLOW + + " from balance of " + ChatColor.AQUA + target.getName() + ChatColor.YELLOW + '.', ChatColor.YELLOW + "Balance of " + ChatColor.AQUA + target.getName() + + " is now " + ChatColor.AQUA + Economy.ECONOMY_SYMBOL + newBalance + ChatColor.YELLOW + '.' + }); + + return true; + } + + if (args[1].equalsIgnoreCase("set")) { + if (args.length < 3) { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + ' ' + target.getName() + + ' ' + args[1] + " "); + return true; + } + + if (!sender.hasPermission(command.getPermission() + ".staff")) { + return true; + } + + Integer amount = JavaUtils.tryParseInt(args[2]); + + if (amount == null) { + sender.sendMessage(ChatColor.RED + "'" + args[2] + "' is not a valid number."); + return true; + } + + int newBalance = plugin.getEconomyManager().setBalance(uuid, amount); + sender.sendMessage(ChatColor.YELLOW + "Set balance of " + target.getName() + " to " + + Economy.ECONOMY_SYMBOL + JavaUtils.format(newBalance) + '.'); + return true; + } + + sender.sendMessage(ChatColor.YELLOW + (sender.equals(target) ? "Your balance" : "Balance of " + ChatColor.AQUA + target.getName()) + + ChatColor.YELLOW + " is " + ChatColor.AQUA + Economy.ECONOMY_SYMBOL + balance + ChatColor.YELLOW + '.'); + + return true; + } + + private static final ImmutableList COMPLETIONS_SECOND = ImmutableList.of("add", "set", "take"); + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + switch (args.length) { + case 1: + List results = Lists.newArrayList("top"); + if (sender.hasPermission(command.getPermission() + ".staff")) { + Player senderPlayer = sender instanceof Player ? (Player) sender : null; + for (Player player : Bukkit.getOnlinePlayers()) { + if (senderPlayer == null || senderPlayer.canSee(player)) { + results.add(player.getName()); + } + } + } + + return BukkitUtils.getCompletions(args, results); + case 2: + if (!args[0].equals("top") && sender.hasPermission(command.getPermission() + ".staff")) { + return BukkitUtils.getCompletions(args, COMPLETIONS_SECOND); + } + default: + return Collections.emptyList(); + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.java b/src/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.java new file mode 100644 index 0000000..8aaebd5 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/EndPortalCommand.java @@ -0,0 +1,176 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.block.Action; +import org.bukkit.event.player.PlayerDropItemEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerKickEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; +import org.bukkit.scheduler.BukkitRunnable; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class EndPortalCommand implements CommandExecutor, Listener { + private final String ITEM_DISPLAYNAME; + private HardcoreFactionsPlugin plugin; + private Map playerSelections; + + public EndPortalCommand(final HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + this.ITEM_DISPLAYNAME = ChatColor.GREEN + "Endportal Maker"; + this.playerSelections = new HashMap(); + this.plugin.getServer().getPluginManager().registerEvents(this, this.plugin); + } + + @EventHandler + public void onInteract(final PlayerInteractEvent e) { + final Player p = e.getPlayer(); + if (e.hasItem() && e.getClickedBlock() != null) { + final ItemStack itemStack = e.getItem(); + final Block b = e.getClickedBlock(); + if (itemStack.getItemMeta().hasDisplayName() + && itemStack.getItemMeta().getDisplayName().equals(this.ITEM_DISPLAYNAME)) { + final LocationPair locationPair = this.playerSelections.computeIfAbsent(e.getPlayer().getUniqueId(), + func -> this.playerSelections.put(p.getUniqueId(), new LocationPair(null, null))); + if (e.getAction() == Action.LEFT_CLICK_BLOCK) { + if (b.getType() != Material.ENDER_PORTAL_FRAME) { + e.getPlayer().sendMessage(ChatColor.RED + "You must select an end portal frame."); + return; + } + locationPair.setFirstLoc(b.getLocation()); + e.getPlayer().sendMessage(ChatColor.GREEN + "Successfully set the first location."); + } else if (e.getAction() == Action.RIGHT_CLICK_BLOCK) { + if (b.getType() != Material.ENDER_PORTAL_FRAME) { + e.getPlayer().sendMessage(ChatColor.RED + "You must select an end portal frame."); + return; + } + if (locationPair.getFirstLoc() == null) { + e.getPlayer().sendMessage(ChatColor.RED + + "Please set the first location (by left clicking the end portal frame)."); + return; + } + locationPair.setSecondLoc(b.getLocation()); + e.getPlayer().sendMessage(ChatColor.GREEN + "Successfully set the second location."); + final Location firstLoc = locationPair.getFirstLoc(); + final Location secondLoc = locationPair.getSecondLoc(); + if (firstLoc.distance(secondLoc) > 6.0) { + e.getPlayer().sendMessage(ChatColor.RED + "You cannot create an end portal that big."); + return; + } + if (firstLoc.getBlockY() != secondLoc.getBlockY()) { + e.getPlayer() + .sendMessage(ChatColor.RED + "Make sure that the portals have the same elevation."); + return; + } + final int minX = Math.min(firstLoc.getBlockX(), secondLoc.getBlockX()); + final int minY = Math.min(firstLoc.getBlockY(), secondLoc.getBlockY()); + final int minZ = Math.min(firstLoc.getBlockZ(), secondLoc.getBlockZ()); + final int maxX = Math.max(firstLoc.getBlockX(), secondLoc.getBlockX()); + final int maxY = Math.max(firstLoc.getBlockY(), secondLoc.getBlockY()); + final int maxZ = Math.max(firstLoc.getBlockZ(), secondLoc.getBlockZ()); + for (int x = minX; x <= maxX; ++x) { + for (int y = minY; y <= maxY; ++y) { + for (int z = minZ; z <= maxZ; ++z) { + final Block block = b.getWorld().getBlockAt(x, y, z); + if (block.isEmpty()) { + block.setType(Material.ENDER_PORTAL); + } + } + } + } + e.setCancelled(true); + new BukkitRunnable() { + @Override + public void run() { + e.getPlayer().setItemInHand((ItemStack) null); + e.getPlayer().updateInventory(); + } + }.runTask(this.plugin); + e.getPlayer().sendMessage(ChatColor.GREEN + "Created an end portal"); + this.playerSelections.remove(p.getUniqueId()); + } + } + } + } + + @EventHandler + public void onDrop(final PlayerDropItemEvent e) { + final ItemStack itemStack = e.getItemDrop().getItemStack(); + if (itemStack.getItemMeta().hasDisplayName() + && itemStack.getItemMeta().getDisplayName().equals(this.ITEM_DISPLAYNAME)) { + e.getItemDrop().remove(); + } + } + + @EventHandler + public void onQuit(final PlayerQuitEvent e) { + this.playerSelections.remove(e.getPlayer().getUniqueId()); + } + + @EventHandler + public void onKick(final PlayerKickEvent e) { + this.playerSelections.remove(e.getPlayer().getUniqueId()); + } + + @Override + public boolean onCommand(final CommandSender s, final Command c, final String alias, final String[] args) { + if (!(s instanceof Player)) { + return true; + } + Player p = (Player) s; + if (p.getInventory().firstEmpty() == -1) { + return true; + } + if(!p.hasPermission("hcf.command.endportal")) { + s.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + final ItemStack portalMaker = new ItemStack(Material.GOLD_SWORD); + final ItemMeta itemMeta = portalMaker.getItemMeta(); + itemMeta.setDisplayName(this.ITEM_DISPLAYNAME); + portalMaker.setItemMeta(itemMeta); + p.getInventory().addItem(new ItemStack[] { portalMaker }); + return true; + } + + private class LocationPair { + private Location firstLoc; + private Location secondLoc; + + public LocationPair(final Location firstLoc, final Location secondLoc) { + this.firstLoc = firstLoc; + this.secondLoc = secondLoc; + } + + public Location getFirstLoc() { + return this.firstLoc; + } + + public void setFirstLoc(final Location firstLoc) { + this.firstLoc = firstLoc; + } + + public Location getSecondLoc() { + return this.secondLoc; + } + + public void setSecondLoc(final Location secondLoc) { + this.secondLoc = secondLoc; + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/FFACommand.java b/src/notifyz/hardcorefactions/commands/hcf/FFACommand.java new file mode 100644 index 0000000..b54ac97 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/FFACommand.java @@ -0,0 +1,36 @@ +package notifyz.hardcorefactions.commands.hcf; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.team.type.PlayerTeam; +import notifyz.hardcorefactions.team.utilities.ITeam; + +public class FFACommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length == 0 || args.length > 1 || args.length < 1) { + sender.sendMessage(ChatColor.RED + "Usage: /ffa "); + return true; + } + + Bukkit.broadcastMessage(ChatColor.DARK_RED + ChatColor.BOLD.toString() + "The FFA has been started!"); + + for (ITeam faction : HardcoreFactionsPlugin.getPlugin().getFactionManager().getFactions()) { + if (faction instanceof PlayerTeam) { + HardcoreFactionsPlugin.getPlugin().getFactionManager().removeFaction(faction, sender); + } + } + + Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "freezeall"); + + sender.sendMessage(ChatColor.GREEN + "All player factions have been removed."); + return true; + } + +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/FocusCommand.java b/src/notifyz/hardcorefactions/commands/hcf/FocusCommand.java new file mode 100644 index 0000000..77d0cf9 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/FocusCommand.java @@ -0,0 +1,184 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Set; +import java.util.UUID; + +import org.apache.commons.lang.StringUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.entity.PlayerDeathEvent; +import org.bukkit.event.player.PlayerJoinEvent; +import org.bukkit.scheduler.BukkitRunnable; +import org.bukkit.scoreboard.Scoreboard; +import org.bukkit.scoreboard.Team; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.team.type.PlayerTeam; +import notifyz.hardcorefactions.team.utilities.ITeam; + +public class FocusCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command command, String s, String[] args) { + if (!(sender instanceof Player)) { + return true; + } + + Player player = (Player) sender; + PlayerTeam playerFaction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player); + + if (playerFaction == null) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.focus-no-faction"))); + return true; + } + + if (args.length == 0) { + player.sendMessage(ChatColor.RED + "Usage: /focus "); + return true; + } + + String key = StringUtils.join(args).replace(" ", ""); + PlayerTeam playerFaction2 = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player); + + if (playerFaction2 == null) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.focus-player-not-online"))); + return true; + } + + if (playerFaction2.getFocused() == null) { + Player playerMatch = Bukkit.getPlayer(key); + PlayerTeam toFocus; + + if (playerMatch == null) { + ITeam faction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getFaction(key); + + if (faction == null || !(faction instanceof PlayerTeam)) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.focus-target-no-faction"))); + return true; + } + + toFocus = (PlayerTeam) faction; + } else { + toFocus = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(playerMatch); + + if (toFocus == null) { + ITeam faction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getFaction(key); + + if (faction == null || !(faction instanceof PlayerTeam)) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.focus-target-no-faction"))); + return true; + } + + toFocus = (PlayerTeam) faction; + } + } + + if (playerFaction2.equals(toFocus)) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.focus-no-yourself"))); + return true; + } + playerFaction2.broadcast(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.focused-target").replace("%target%", key).replace("%player%", player.getName()))); + PlayerTeam ToFocus = toFocus; + + new BukkitRunnable() { + @Override + public void run() { + focus(playerFaction2, ToFocus, false); + } + }.runTaskAsynchronously(HardcoreFactionsPlugin.getPlugin()); + + new BukkitRunnable() { + @Override + public void run() { + new BukkitRunnable() { + @Override + public void run() { + focus(playerFaction, null, true); + } + }.runTaskAsynchronously(HardcoreFactionsPlugin.getPlugin()); + playerFaction.setFocused(null); + } + }.runTaskLater(HardcoreFactionsPlugin.getPlugin(), 20 * 60 * 10); + } else { + if (playerFaction.getFocused() != null) { + playerFaction.broadcast(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.unfocused-target").replace("%player%", player.getName()).replace("%target%", key))); + } + + new BukkitRunnable() { + @Override + public void run() { + focus(playerFaction, null, true); + } + }.runTaskAsynchronously(HardcoreFactionsPlugin.getPlugin()); + playerFaction.setFocused(null); + } + + return false; + } + + @EventHandler(priority = EventPriority.LOWEST) + public void onPlayerJoin(PlayerJoinEvent event) { + Player player = event.getPlayer(); + PlayerTeam playerFaction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player.getUniqueId()); + UUID focused = playerFaction.getFocused(); + + if (focused != null) { + focus(playerFaction, (PlayerTeam) HardcoreFactionsPlugin.getPlugin().getFactionManager().getFaction(playerFaction.getFocused()), false); + } + } + + @EventHandler + public void onPlayerDeath(PlayerDeathEvent event) { + Player player = event.getEntity(); + PlayerTeam playerFaction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player.getUniqueId()); + + if (playerFaction == null) return; + for (ITeam faction : HardcoreFactionsPlugin.getPlugin().getFactionManager().getFactions()) { + if (faction instanceof PlayerTeam) { + if (((PlayerTeam) faction).getFocused() == null) continue; + if (((PlayerTeam) faction).getFocused().equals(player.getUniqueId())) { + focus((PlayerTeam) faction, playerFaction, true); + } + } + } + } + + private void focus(PlayerTeam playerFaction, PlayerTeam toFocus, boolean unfocus) { + if (!unfocus) { + playerFaction.setFocused(toFocus.getUniqueID()); + } + for (Player player : playerFaction.getOnlinePlayers()) { + Scoreboard scoreboard = player.getScoreboard(); + if (scoreboard != Bukkit.getScoreboardManager().getMainScoreboard()) { + Team team = scoreboard.getTeam("focus"); + if (team != null) { + Set offlinePlayers = team.getPlayers(); + for (OfflinePlayer offlinePlayer : offlinePlayers) { + Player other = offlinePlayer.getPlayer(); + if (other != null) { + HardcoreFactionsPlugin.getPlugin().getScoreboardHandler().getPlayerBoard(player.getUniqueId()).addUpdate(other); + } + } + team.unregister(); + } else { + team = scoreboard.registerNewTeam("focus"); + team.setPrefix(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("scoreboard.focus-nametag-color"))); + } + if (unfocus) { + break; + } + for (Player playerToFocus : toFocus.getOnlinePlayers()) { + team.addEntry(playerToFocus.getName()); + } + } + } + } + +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/hcf/InfoCommand.java b/src/notifyz/hardcorefactions/commands/hcf/InfoCommand.java new file mode 100644 index 0000000..6096708 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/InfoCommand.java @@ -0,0 +1,73 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.World; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; +import org.bukkit.entity.Player; + +import com.google.common.collect.ImmutableMap; + +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + + +/** + * Created by Donovan on 5/30/2016. + */ +public class InfoCommand implements CommandExecutor, TabCompleter { + + protected static final ImmutableMap ENVIRONMENT_MAPPINGS = /*TODO:Maps.immutableEnumMap*/(ImmutableMap.of( + World.Environment.NETHER, "Nether", + World.Environment.NORMAL, "Overworld", + World.Environment.THE_END, "The End" + )); + + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length == 0) { + sender.sendMessage(ChatColor.RED + "Usage: /" + "info "); + return true; + + } + + Player target = Bukkit.getPlayer(args[0]); + + if (target == null) { + sender.sendMessage(ChatColor.RED + "That player is not online."); + return true; + } + final int version = ((CraftPlayer) target).getHandle().playerConnection.networkManager.getVersion(); + Player player = target; + sender.sendMessage(ChatColor.GOLD.toString() + ChatColor.STRIKETHROUGH + "---------------------------------"); + sender.sendMessage(ChatColor.GOLD + "Information for player " + target.getName()); + sender.sendMessage(ChatColor.YELLOW + "Version:" + " " + ChatColor.AQUA + version); + sender.sendMessage(ChatColor.YELLOW + "Gamemode:" + " " + ChatColor.AQUA + player.getGameMode()); + Location location = player.getLocation(); + sender.sendMessage(ChatColor.YELLOW + "Idle Time: " + ChatColor.AQUA + DurationFormatUtils.formatDurationWords(BukkitUtils.getIdleTime(target), true, true)); + sender.sendMessage(ChatColor.YELLOW + "Location:" + " " + ChatColor.AQUA + "x: " + player.getLocation().getBlockX() + " " + "z: " + player.getLocation().getBlockZ() + " (" + ENVIRONMENT_MAPPINGS.get(location.getWorld().getEnvironment()) + ")"); + sender.sendMessage(ChatColor.YELLOW + "Ping: " + ChatColor.AQUA + ((CraftPlayer) player).getHandle().ping + "ms"); + sender.sendMessage(ChatColor.GOLD.toString() + ChatColor.STRIKETHROUGH + "---------------------------------"); + sender.sendMessage(ChatColor.YELLOW + "Version IDs:"); + sender.sendMessage(ChatColor.AQUA + "1.8" + " = " + "47"); + sender.sendMessage(ChatColor.AQUA + "1.7.6 - 1.7.10" + " = " + "5"); + sender.sendMessage(ChatColor.AQUA + "1.7.1 - 1.7.5" + " = " + "4"); + sender.sendMessage(ChatColor.GOLD.toString() + ChatColor.STRIKETHROUGH + "---------------------------------"); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand.java b/src/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand.java new file mode 100644 index 0000000..c15ad86 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/KitMapGUICommand.java @@ -0,0 +1,112 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.List; +import java.util.Random; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.Player; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.ItemStack; +import org.bukkit.scheduler.BukkitRunnable; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class KitMapGUICommand + implements CommandExecutor +{ + private List glassList = HardcoreFactionsPlugin.getInstance().getConfig().getShortList("kitmap-gui.id-animation"); + + @Override +public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) + { + if (!(sender instanceof Player)) + { + sender.sendMessage("Only players !"); + return true; + } + Player player = (Player)sender; + if (HardcoreFactionsPlugin.getInstance().getConfig().getBoolean("kitmap-gui.enabled")) + { + openGUI(player); + new KitMapTask(player); + } + else + { + player.sendMessage(ChatColor.RED + "You cannot execute that command right now."); + } + return true; + } + + public void openGUI(Player player) + { + Inventory inv = Bukkit.createInventory(null, 54, ChatColor.translateAlternateColorCodes('&' , HardcoreFactionsPlugin.getInstance().getConfig().getString("kitmap-gui.title"))); + ItemStack helmet = new ItemStack(Material.DIAMOND_HELMET); + ItemStack chestplate = new ItemStack(Material.DIAMOND_CHESTPLATE); + ItemStack leggigs = new ItemStack(Material.DIAMOND_LEGGINGS); + ItemStack boots = new ItemStack(Material.DIAMOND_BOOTS); + ItemStack sword = new ItemStack(Material.DIAMOND_SWORD); + ItemStack bow = new ItemStack(Material.BOW); + + helmet.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.PROTECTION_ENVIRONMENTAL)); + chestplate.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.PROTECTION_ENVIRONMENTAL)); + leggigs.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.PROTECTION_ENVIRONMENTAL)); + boots.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.PROTECTION_ENVIRONMENTAL)); + sword.addEnchantment(Enchantment.DAMAGE_ALL, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.DAMAGE_ALL)); + bow.addEnchantment(Enchantment.ARROW_DAMAGE, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.ARROW_DAMAGE)); + if (HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.ARROW_FIRE) != 0) { + bow.addEnchantment(Enchantment.ARROW_FIRE, HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.ARROW_FIRE)); + } + for (int i = 0; i < 54; i++) { + inv.setItem(i, new ItemStack(Material.STAINED_GLASS_PANE)); + } + inv.setItem(13, helmet); + inv.setItem(21, sword); + inv.setItem(22, chestplate); + inv.setItem(23, bow); + inv.setItem(31, leggigs); + inv.setItem(40, boots); + player.openInventory(inv); + } + + private class KitMapTask + extends BukkitRunnable + { + Player player; + + public KitMapTask(Player p) + { + this.player = p; + runTaskTimer(HardcoreFactionsPlugin.getInstance(), 10L, 5L); + } + + @Override + public void run() + { + if ((!this.player.isOnline()) || (!this.player.getOpenInventory().getTopInventory().getTitle().equalsIgnoreCase(ChatColor.translateAlternateColorCodes('&' , HardcoreFactionsPlugin.getInstance().getConfig().getString("kitmap-gui.title"))))) + { + cancel(); + } + else + { + Inventory inv = this.player.getOpenInventory().getTopInventory(); + ItemStack[] arrayOfItemStack; + int j = (arrayOfItemStack = inv.getContents()).length; + for (int i = 0; i < j; i++) + { + ItemStack item = arrayOfItemStack[i]; + if ((item != null) && (item.getType() == Material.STAINED_GLASS_PANE)) + { + Random r = new Random(); + item.setDurability(KitMapGUICommand.this.glassList.get(r.nextInt(KitMapGUICommand.this.glassList.size())).shortValue()); + } + } + } + } + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/LFFCommand.java b/src/notifyz/hardcorefactions/commands/hcf/LFFCommand.java new file mode 100644 index 0000000..2afcf32 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/LFFCommand.java @@ -0,0 +1,60 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.UUID; +import java.util.concurrent.TimeUnit; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import net.minecraft.util.gnu.trove.map.TObjectLongMap; +import net.minecraft.util.gnu.trove.map.hash.TObjectLongHashMap; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.team.utilities.ITeam; +import notifyz.hardcorefactions.utilities.chat.Color; + +public class LFFCommand implements CommandExecutor { + + private static final long LFF_COOLDOWN_DELAY = TimeUnit.HOURS.toMillis(1L); + public final static TObjectLongMap LFF_COOLDOWN = new TObjectLongHashMap<>(); + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage("No Console"); + return true; + } + Player player = (Player) sender; + if (command.getName().equalsIgnoreCase("lff")) { + if (!player.hasPermission("hcf.command.lff")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (args.length == 0) { + ITeam faction = HardcoreFactionsPlugin.getPlugin().getFactionManager().getPlayerFaction(player); + if (faction == null) { + UUID uuid = player.getUniqueId(); + long timestamp = LFF_COOLDOWN.get(uuid); + long millis = System.currentTimeMillis(); + long remaining = timestamp == LFF_COOLDOWN.getNoEntryValue() ? -1L : timestamp - millis; + if (remaining > 0L) { + player.sendMessage(ChatColor.RED + "You cannot use this command for another " + ChatColor.BOLD + DurationFormatUtils.formatDurationWords(remaining, true, true) + "."); + return true; + } + for (String lff : HardcoreFactionsPlugin.getPlugin().getConfig().getStringList("cmd-messages.lff-message")) { + Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', lff).replace("%player%", player.getName()).replace("%playerdisplayname%", player.getDisplayName())); + } + player.sendMessage(Color.translate("&eYou have announced that you are looking for a faction, you must wait 1 hour before doing this again.")); + LFF_COOLDOWN.put(player.getUniqueId(), System.currentTimeMillis() + LFF_COOLDOWN_DELAY); + } else { + player.sendMessage(ChatColor.RED + "You are already in a faction."); + } + } + } + return true; + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/hcf/LocationCommand.java b/src/notifyz/hardcorefactions/commands/hcf/LocationCommand.java new file mode 100644 index 0000000..c2c604c --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/LocationCommand.java @@ -0,0 +1,64 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.Location; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.team.utilities.ITeam; + +/** + * Command used to check current the current {@link ITeam} at + * the position of a given {@link Player}s {@link Location}. + */ +public class LocationCommand implements CommandExecutor, TabCompleter { + + private final HardcoreFactionsPlugin plugin; + + public LocationCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + Player target; + if (args.length > 0 && sender.hasPermission(command.getPermission() + ".others")) { + target = Bukkit.getPlayer(args[0]); + } else if (sender instanceof Player) { + target = (Player) sender; + } else { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + " [playerName]"); + return true; + } + + if (target == null || (sender instanceof Player && !((Player) sender).canSee(target))) { + sender.sendMessage(ChatColor.GOLD + "Player '" + ChatColor.WHITE + args[0] + + ChatColor.GOLD + "' not found."); + + return true; + } + + ITeam factionAt = plugin.getFactionManager().getFactionAt(target.getLocation()); + + sender.sendMessage(ChatColor.YELLOW + target.getName() + " is in the territory of " + + factionAt.getDisplayName(sender) + ChatColor.YELLOW + + '(' + (factionAt.isSafezone() ? ChatColor.GREEN + "Non-Deathban" : ChatColor.RED + "Deathban") + + ChatColor.YELLOW + ')'); + + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 1 && sender.hasPermission(command.getPermission() + ".others") + ? null : Collections.emptyList(); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/LogoutCommand.java b/src/notifyz/hardcorefactions/commands/hcf/LogoutCommand.java new file mode 100644 index 0000000..18af18d --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/LogoutCommand.java @@ -0,0 +1,76 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.scoreboard.timer.utilities.type.LogoutTimer; + +public class LogoutCommand implements CommandExecutor, TabCompleter { + + private final HardcoreFactionsPlugin plugin; + + public LogoutCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + + + Player player = (Player) sender; + LogoutTimer logoutTimer = plugin.getTimerManager().getLogoutTimer(); + long remaining = logoutTimer.getRemainingCooldown(player) / 1000; + if (remaining > 0L) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.logout-already-active"))); + } else { + logoutTimer.setCooldown(player, player.getUniqueId()); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.logout-started"))); + /*new BukkitRunnable() { + private int i = 30; + + @Override + public void run() { + + if (this.i <= 0) { + this.cancel(); + return; + } + + if (this.i != 1 && logoutTimer.hasCooldown(player)) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactions.getInstance().getConfig().getString("cmd-messages.logout-started").replace("%time%", "" + this.i))); + } else if (logoutTimer.hasCooldown(player) && this.i == 1){ + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactions.getInstance().getConfig().getString("cmd-messages.logout-started").replace("seconds", "second").replace("%time%", "" + this.i))); + } + + --this.i; + } + }.runTaskTimer(HardcoreFactions.getInstance(), 0L, 20L);*/ + //player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactions.getInstance().getConfig().getString("cmd-messages.logout-started"))); + } + return true; + /*if (!logoutTimer.setCooldown(player, player.getUniqueId())) { + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactions.getInstance().getConfig().getString("cmd-messages.logout-already-active"))); + return true; + } + + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactions.getInstance().getConfig().getString("cmd-messages.logout-started"))); + return true;*/ + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return Collections.emptyList(); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/MapKitCommand.java b/src/notifyz/hardcorefactions/commands/hcf/MapKitCommand.java new file mode 100644 index 0000000..5715d7b --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/MapKitCommand.java @@ -0,0 +1,39 @@ +package notifyz.hardcorefactions.commands.hcf; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.chat.Color; + +public class MapKitCommand implements CommandExecutor { + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage("No Console"); + return true; + } + Player player = (Player) sender; + if (command.getName().equalsIgnoreCase("mapkit")) { + if (!player.hasPermission("hcf.command.mapkit")) { + sender.sendMessage(ChatColor.RED + "You do not have acces to this command."); + return true; + } + if (args.length == 0) { + player.sendMessage(ChatColor.GRAY + BukkitUtils.STRAIGHT_LINE_DEFAULT); + player.sendMessage(""); + player.sendMessage(Color.translate(HardcoreFactionsPlugin.getPlugin().getConfiguration().getScoreboardSidebarTitle() + " &6&lMap Kit")); + player.sendMessage(Color.translate(" &6»&e Protection: " + HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.PROTECTION_ENVIRONMENTAL) + ", Sharpness: " + HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.DAMAGE_ALL) + ", Power: " + HardcoreFactionsPlugin.getPlugin().getConfiguration().getEnchantmentLimit(Enchantment.ARROW_DAMAGE))); + player.sendMessage(""); + player.sendMessage(ChatColor.GRAY + BukkitUtils.STRAIGHT_LINE_DEFAULT); + } + } + return true; + } +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.java b/src/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.java new file mode 100644 index 0000000..4137fa3 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/MobDropsCommand.java @@ -0,0 +1,59 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Set; + +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerPickupItemEvent; +import org.bukkit.event.player.PlayerQuitEvent; + +import com.google.common.collect.Sets; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class MobDropsCommand implements Listener, CommandExecutor { + + public static Set disabled = Sets.newHashSet(); + + @Override + public boolean onCommand(CommandSender sender, Command arg1, String arg2, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "Only players can execute this command."); + return true; + } + + Player player = (Player) sender; + + if (disabled.contains(player)) { + disabled.remove(player); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.mobdrops-enabled"))); + } else { + disabled.add(player); + player.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.mobdrops-disabled"))); + } + + return true; + } + + @EventHandler + public void onPlayerPickup(PlayerQuitEvent event) { + disabled.remove(event.getPlayer()); + } + + @EventHandler + public void onPlayerPickup(PlayerPickupItemEvent event) { + Material type = event.getItem().getItemStack().getType(); + if (type == Material.ROTTEN_FLESH || type == Material.BONE || type == Material.GOLD_NUGGET || type == Material.ARROW || type == Material.SPIDER_EYE || type == Material.STRING) { + if (disabled.contains(event.getPlayer())) { + event.setCancelled(true); + } + } + } + +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/hcf/PanicCommand.java b/src/notifyz/hardcorefactions/commands/hcf/PanicCommand.java new file mode 100644 index 0000000..ab78814 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/PanicCommand.java @@ -0,0 +1,28 @@ +package notifyz.hardcorefactions.commands.hcf; + +import org.bukkit.Bukkit; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import net.md_5.bungee.api.ChatColor; +import notifyz.hardcorefactions.HardcoreFactionsPlugin; + +public class PanicCommand implements CommandExecutor { + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + Player player = (Player) sender; + if (cmd.getName().equalsIgnoreCase("panic") && sender.hasPermission("hcf.command.panic")) { + Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "freeze " + player.getName()); + for (String string : HardcoreFactionsPlugin.getInstance().getConfig() + .getStringList("cmd-messages.panic-message")) { + Bukkit.getServer().broadcast( + ChatColor.translateAlternateColorCodes('&', string).replace("%player%", sender.getName()), + "hcf.panic.notify"); + } + return true; + } + return false; + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/PayCommand.java b/src/notifyz/hardcorefactions/commands/hcf/PayCommand.java new file mode 100644 index 0000000..f40e676 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/PayCommand.java @@ -0,0 +1,100 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.Bukkit; +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.economy.Economy; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; + +/** + * Command used to pay other {@link Player}s some money. + */ +public class PayCommand implements CommandExecutor, TabCompleter { + + private final HardcoreFactionsPlugin plugin; + + public PayCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length < 2) { + sender.sendMessage(ChatColor.RED + "Usage: /" + label + " "); + return true; + } + + Integer amount = JavaUtils.tryParseInt(args[1]); + + if (amount == null) { + sender.sendMessage(ChatColor.RED + "'" + args[1] + "' is not a valid number."); + return true; + } + + if (amount <= 0) { + sender.sendMessage(ChatColor.RED + "You must send money in positive quantities."); + return true; + } + + // Calculate the senders balance here. + Player senderPlayer = sender instanceof Player ? (Player) sender : null; + int senderBalance = senderPlayer != null ? plugin.getEconomyManager().getBalance(senderPlayer.getUniqueId()) + : 1024; + + if (senderBalance < amount) { + sender.sendMessage(ChatColor.RED + "You tried to pay " + Economy.ECONOMY_SYMBOL + amount + + ", but you only have " + Economy.ECONOMY_SYMBOL + senderBalance + + " in your bank account."); + + return true; + } + + OfflinePlayer target = Bukkit.getOfflinePlayer(args[0]); //TODO: breaking + + if (sender.equals(target)) { + sender.sendMessage(ChatColor.RED + "You cannot send money to yourself."); + return true; + } + + Player targetPlayer = target.getPlayer(); + + if (!target.hasPlayedBefore() && targetPlayer == null) { + sender.sendMessage(ChatColor.GOLD + "Player '" + ChatColor.WHITE + args[0] + ChatColor.GOLD + + "' not found."); + return true; + } + + if (targetPlayer == null) { + return false; // won't happen, IntelliJ compiler won't ignore + } + + // Make the money transactions. + plugin.getEconomyManager().addBalance(targetPlayer.getUniqueId(), amount); + if (senderPlayer != null) { + plugin.getEconomyManager().subtractBalance(senderPlayer.getUniqueId(), amount); + } + + targetPlayer.sendMessage(ChatColor.YELLOW + sender.getName() + " has sent you " + ChatColor.GOLD + + Economy.ECONOMY_SYMBOL + amount + ChatColor.YELLOW + '.'); + + sender.sendMessage(ChatColor.YELLOW + "You have sent " + ChatColor.GOLD + Economy.ECONOMY_SYMBOL + + amount + ChatColor.YELLOW + " to " + target.getName() + '.'); + + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 1 ? null : Collections.emptyList(); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.java b/src/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.java new file mode 100644 index 0000000..565e35c --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/PlayTimeCommand.java @@ -0,0 +1,49 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.apache.commons.lang.time.DurationFormatUtils; +import org.bukkit.ChatColor; +import org.bukkit.OfflinePlayer; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.api.utilties.command.IConstantsAPI; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; + +public class PlayTimeCommand implements CommandExecutor { + + @Override + @SuppressWarnings("deprecation") + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + OfflinePlayer target; + + if (args.length >= 1) { + target = BukkitUtils.offlinePlayerWithNameOrUUID(args[0]); + } else { + if (!(sender instanceof Player)) { + sender.sendMessage("You can only use this if you are a player!"); + return true; + } + + target = (OfflinePlayer) sender; + } + + if ((!target.hasPlayedBefore()) && (!target.isOnline())) { + sender.sendMessage(String.format(IConstantsAPI.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, new Object[]{args[0]})); + return true; + } + //(ChatColor.YELLOW + target.getName() + " has been playing for " + ChatColor.LIGHT_PURPLE + DurationFormatUtils.formatDurationWords(HardcoreFactions.getPlugin().getPlayTimeManager().getTotalPlayTime(target.getUniqueId()), true, true) + ChatColor.YELLOW + " this map."); + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', HardcoreFactionsPlugin.getInstance().getConfig().getString("cmd-messages.playtime").replace("%time%", DurationFormatUtils.formatDurationWords(HardcoreFactionsPlugin.getPlugin().getPlayTimeManager().getTotalPlayTime(target.getUniqueId()), true, true)).replace("%target%", target.getName()))); + return true; + } + + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 1 ? null : Collections.emptyList(); + } + +} \ No newline at end of file diff --git a/src/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.java b/src/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.java new file mode 100644 index 0000000..3eb9e31 --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/PvPTimerCommand.java @@ -0,0 +1,109 @@ +package notifyz.hardcorefactions.commands.hcf; + +import java.util.Collections; +import java.util.List; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; +import org.bukkit.command.TabCompleter; +import org.bukkit.entity.Player; + +import com.google.common.collect.ImmutableList; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.scoreboard.timer.utilities.type.PvPProtectionTimer; +import notifyz.hardcorefactions.utilities.chat.BukkitUtils; +import notifyz.hardcorefactions.utilities.utils.DurationFormatter; + +/** + * Command used to manage the {@link PvPProtectionTimer} of {@link Player}s. + */ +public class PvPTimerCommand implements CommandExecutor, TabCompleter { + + private final HardcoreFactionsPlugin plugin; + + public PvPTimerCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (!(sender instanceof Player)) { + sender.sendMessage(ChatColor.RED + "This command is only executable by players."); + return true; + } + + Player player = (Player) sender; + PvPProtectionTimer pvpTimer = plugin.getTimerManager().getInvincibilityTimer(); + + if (args.length == 0) { + printUsage(sender, label, pvpTimer); + return true; + } + + if (args[0].equalsIgnoreCase("enable") || args[0].equalsIgnoreCase("remove") + || args[0].equalsIgnoreCase("off")) { + + if (pvpTimer.getRemainingCooldown(player) <= 0L) { + sender.sendMessage(ChatColor.YELLOW + "Your " + ChatColor.GREEN + pvpTimer.getName() + ChatColor.YELLOW + + " timer is currently not active."); + + return true; + } + + sender.sendMessage(ChatColor.YELLOW + "Your " + ChatColor.GREEN + pvpTimer.getName() + + ChatColor.YELLOW + " is now off."); + + pvpTimer.clearCooldown(player); + return true; + } + + if (args[0].equalsIgnoreCase("remaining") || args[0].equalsIgnoreCase("time") + || args[0].equalsIgnoreCase("left") || args[0].equalsIgnoreCase("check")) { + + long remaining = pvpTimer.getRemainingCooldown(player); + + if (remaining <= 0L) { + sender.sendMessage(ChatColor.YELLOW + "Your " + ChatColor.GREEN + pvpTimer.getName() + ChatColor.YELLOW + + " is currently not active."); + + return true; + } + + sender.sendMessage(ChatColor.YELLOW + "Your " + pvpTimer.getName() + ChatColor.YELLOW + + " is active for another " + ChatColor.BOLD + + DurationFormatter.getRemaining(remaining, true, false) + ChatColor.YELLOW + + (pvpTimer.isPaused(player) ? " and is currently paused" : "") + '.'); + + return true; + } + + printUsage(sender, label, pvpTimer); + return true; + } + + @Override + public List onTabComplete(CommandSender sender, Command command, String label, String[] args) { + return args.length == 1 ? BukkitUtils.getCompletions(args, COMPLETIONS) : Collections.emptyList(); + } + + private static final ImmutableList COMPLETIONS = ImmutableList.of("enable", "time"); + + /** + * Prints the usage of this command to a sender. + * + * @param sender the sender to print for + * @param label the label used for command + */ + private void printUsage(CommandSender sender, String label, PvPProtectionTimer pvpTimer) { + sender.sendMessage(ChatColor.YELLOW + "" + pvpTimer.getName() + ChatColor.YELLOW + " Help"); + sender.sendMessage(" "); + sender.sendMessage(ChatColor.GREEN + "/" + label + ChatColor.YELLOW + " enable - Removes your " + pvpTimer.getName() + + ChatColor.YELLOW + " timer."); + sender.sendMessage(ChatColor.GREEN + "/" + label + ChatColor.YELLOW +" time - Check remaining " + pvpTimer.getName() + + ChatColor.YELLOW + " time."); + sender.sendMessage(ChatColor.GREEN + "/lives" + ChatColor.YELLOW + " - Life and deathban related commands."); + } +} diff --git a/src/notifyz/hardcorefactions/commands/hcf/RebootCommand.java b/src/notifyz/hardcorefactions/commands/hcf/RebootCommand.java new file mode 100644 index 0000000..3d56a4a --- /dev/null +++ b/src/notifyz/hardcorefactions/commands/hcf/RebootCommand.java @@ -0,0 +1,44 @@ +package notifyz.hardcorefactions.commands.hcf; + +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import notifyz.hardcorefactions.HardcoreFactionsPlugin; +import notifyz.hardcorefactions.utilities.utils.JavaUtils; + +public class RebootCommand implements CommandExecutor { + + private final HardcoreFactionsPlugin plugin; + + public RebootCommand(HardcoreFactionsPlugin plugin) { + this.plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + if (args.length == 0 || args.length < 1) { + sender.sendMessage(ChatColor.RED + "Usage: /reboot start|stop

8x!~tKXQ~%7Y!P!+|PZy0wX zbPr~UNR`6v$DSdfYCgFO2a6}vf+7fq0iDrXQOV~{V!Vq_XJZ+$lIG1JBhpYH}9X})7hzoEV(Un3xpO`Y(N!||P1{K!4-I6WDN?y7=-quiylw?3_ z7Y2j0(XJM&C2V+|Xj4noGV(Tvg=#rjD^V+`TY8x%wUSc8Uk?Jua9)IX@pbjg-Yn!H%8Ca=Dh#i$Fdqwdi= zP*WE;?MbZR@5$ch?}?hoVBo%D{-Y|di7a5qK%7Aipn~5*7GWQv{F;&PX)Tjbw&=uX mJS-sru!z!iYL!||T>?V|ie5mIm%v_ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/ExpMultiplierListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/ExpMultiplierListener.class new file mode 100644 index 0000000000000000000000000000000000000000..46e3add8827c6b9b479ee18c20d003c015ffc5cd GIT binary patch literal 4671 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 U*A3(w;Pc8eE&_kyZyo;nFH5RU_y7O^ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/ItemStatTrackingListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/ItemStatTrackingListener.class new file mode 100644 index 0000000000000000000000000000000000000000..06fc8a5799b2eeb30b10ffb30895d4d02d35a36c GIT binary patch literal 5096 zcmbtY349dQ9sb^CH?wR8!2r=k!3Bck07e8Avj~O|$kvch2uVY0VX~PdLpHPP>?9@h z5ZlsITCt@TdJ8SBy&$cdL|ThIXlpNfpIUq0_i07#_hvTPU9zdR{rzpWpv` z@A2T1_uUU*jR-0532d;Ej@dK3U+dHD?s(ERdi1zsCatuVFw>4<8FpIhi}z?T#~9e* z=uVrh$NNpIw>i72z%MX+uRf$}3Ek?|TD$fdaYsR^KsaglYF&f<{idTCLx$yO6PpA| z*O`{-tQRP$s%{tXHzd1_5K2&{LP1bqRR2Yccr^x)nDP38TA&B@zO`lx-$$+7yUPqhniE zf=c{Nu`Nv@%*W*lE)%GFrv9r~fQ14xdJU)1jZon7s_FuJ`GH5v5W!*viv%vsH<2%+ zV#$Qcn@k2|%RNg~T#02&H4RBT#VnZsfyIT!OiLy;X%A0;F5VxVfojw$s1c|xFd6UD zEoXq@X|2(k{Akl{nozMED+slY#`{R@y-EC;MGsUqILRZnI6R94)BR*OEsM64`GMAk!3 zAX?p=W0M_@O|FRsQ7>rEzm6Nbj&K+@8> z^t7REvyFJt>Nee8RIwRbSeJO85$|tFIxSQou(m4CrpI8>sWbVGWrZZFV=A77n*M@Vufl;i*#beC+m8*EXCYFd~Ii;5ozAmJpT_Y)l<-1zn`5yj)I^Q_(GJ z;S44Gl%g6vAF46cFZhh4~tE%!DRQ>M5P*$wG|BBu~B7 znq%y9w2q|Ry^~^T6$7wH>Tx|~I(ov~Z)_&cNa9!K11$^gqE4h>E4W2qVP23$T1`b7 zjzAd`F9~(4;poyx0e9!N4RG1zR4GRmAHqHbFChOGHBun0Vi^0GzCJxou3-9jZts#B zUZmp1c!^g+Z>4+!{cgtOksnoXKwysB67FQZZR^8wC4^h?QhDURjJ2wYRkxSnAYQ59 z6$DdGTuQ2VmFs|+ZX8HC!&2@wDqf4*xiQTIyB@{l^y^f-9(VAYNg-=cYhE*E`&Pl7 z0+(FaqZKP|*2^at@?>d9X0`lYpdRJ`A{wq<*LXAmD0@YO}6fxBfNolWr!w!#JzMlTkKdtVlN6rMWXQo{!0! zNI?OorssYYpO7|6I~$vuTRY_O`+$n|*bv007+b_WzPcHLz-Lr+%K6UAb7rx zZ?I*C^u(ai+T*4nUsG0$_&I`asra_!5+>X>Q!e(T>hG%f9=^};Qo5ZsxM7+q#6ox& zKUDAtFQGXebq&=WJjr-z8N}i1>9(8ZtymDHOdw$EiKH2jj{8+_LWT){a z_8BwbijZIP7AFuyBvS99yp^J*=Pgf_T6pU)Y_~B(JCcKT+}Lc&r`Lk%9)ByPJ6Ocd zD&hYDzF7kN%Lg2PXYfnoU-lRRHKPcf=D-J)zoqVE1!i)rdIGozv-rgv;9^RZb6n1^ zIULX3g?Xqja0xDTl^%!RHFZ^O2H~yC$8m)~%ZhVYykZ=c0-bgKbEp_WRoI`w%A+W& z3Hz6?7{%4neu-vd$m&k7H2aC}zsh3uP+G&fwP0z$k933xosXc)7qa zG|ADc*(N7&LpVUmLq42E#~B>%9K{<(@Wu>|jo|GWyeoqf#<2u3IOC?|+H4{Bs#RIBDE9_a#rOyHZ!`AH!GblyK=7zBz{PxF07G zstbmL8T=ruWbh;Z9yuHQFY_YzdpZ4S2|B{L#7rb0FV3e=z%PB&;b+Namu8DUhTn|i zPbC<~-+ZW*&HY%%Y5p6@0dYv&!9&h#?d_OL++9tIS- literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/KillStreaks.class b/bin/notifyz/hardcorefactions/listeners/hcf/KillStreaks.class new file mode 100644 index 0000000000000000000000000000000000000000..33dceead99811827c430c99791a5f4f95b0d8b67 GIT binary patch literal 792 zcmb7BO;6iE5PfT#m>2^ln2)x!z%6kFmJqjAT#%4ZBREjyzHv6m24^kV28sSA4j>UB zao`8=qY$%85QyZ`%g*fEdGlu8K0QA?0@%m43yWb-Wu@$1{fqlN?<83+x;!amriwU~ zMJbfXi@2Y3<3BP@&&piz^TLJ05DfSwk5jIC@o9S?l9Itud?*-d&G#o_NY(qrP*E4d zw#XUSF@u|A!y#84f`3aT%L9gbeUf!N2{l?IbC`962OA4MJS;NU^+u}-h9w^}sOW6j zhl^RAt@x;-!m!wsN}QM({_=Ke#>^6)wsa`;(!eJXj=NNl|TurZGA literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/KillstreakListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/KillstreakListener.class new file mode 100644 index 0000000000000000000000000000000000000000..a477eb540339a5dbf8d54a06dbfa4dca7f5ef672 GIT binary patch literal 3367 zcmbVO`EwLi5dL1W$%M@WLL`BR7eZhYjuD7g77s{>tcDQX9D<-uHg9)_%+AJ{*=X>- z@V;-v`#>!H!7C(MWoeZ^sQ;2x;`e4YWEK)FtV(8Q-s|qy{q@)V`p>_A{24$ePHLzU zxYjB9R(9%$kvHA3OwpBDGvixD$1`lp^Q9wQ&&X%8#x0g@d%i2p@xJo9hL}L(VROQ4{u?C;(!knH>4hbILZ#_3Wz zaA~hOA#g>XBYmS_IWps#S>Gu6mTlymlHt3>Nof?!31cwyG3EHwpot}EE9aPg$&~`T z&QpCyUl4k5%Fs}%CwV;$*6y$z%fDWrGqHGVd&)@nmXRK?OF7F)whs%$x{G5nj%qB| z(SRm_>O}kS5(uo&p`lJgi@??Y8D`$}@{w5g@RRYz(TwHFR;!LBhzl(1BUb&T!l-ly z%~6{eH1!oTraf%BmijI)#{9hHF|>)mO@XcF9T{_#lfGh5m@a{f6MYei?8|0tx-wv! zQ_@Ygr|NMz)@fKPuxc?W9c@@IP*1xWbSvcQFlha;dBogQiWd4bIpVTYB$>ahGNBMd%}+pQ`lphN3z zCGHmFu;p1y$WDj#Vg}VIaB1|&&{Uwf$8^SQ!Wd_XU!~znfkXtve?3#j)wqUL!I*ak zUI|=8NTcdeXOs2l!VV4OeKb!M0qMAI&ZNq}bd}CJm6aQH?8Gj15OeHs$@BNQ10{dh zv`eJn$_3y~rP@>S3Tjbq{B(s2{^kS_BrgN$yBkVW+;#&a|JG~6PvbiTIL zj*h+PXX~6(6#32&*OTB^KG3j?@K!>#1vyoI@49cc`*#vOSdIkjTWLX=b**aWsM z8k~JjOAZUli(?44>)4M2Vfw$a#JypoN;#fy(ldeW z1b5LSFU(+q+=D3{M{s|bVrC+1&s5^2gy+{jwCGRacT02kcIv&I0p^qUH0_&qmn#1Q@$m;MUduki2 ztk9-7m9N9o0(#rLqg;L#&ue&&WS*Zqc%RFhbalLd7fCI@ICpMyBDG+)U&gB%ULijt zp^+o30lP>uuidOdyEdRyQF z8-je+%`%4!FTepD)A25jlj^+9`-6_bS>S-`obT)S03WirCra!iEm3U4`6kI;DNqyi zdV!9L1|Cdf6)ie)=MepH>#Q5CLZ0oub8+@A+M=k|koL{YI7gB4WD!pnOKwIgezNJS z`@yT2Ft?}_V+}`^YW~-tigOF6AWpAMYJ%ZfJ>RRK2m1|J%9UkY8RT~re^+#zLSx5w zxS-=FH19u!l|NwBH-W~5d^RD*XEUEIw7C)&U=>z#r6ttGMZrn5f{SqpE%VC7W#tok zD5Fkj?D!t5HqK&=z$`XY;VZ6HL0PY*BxrBmV&fT$jo6GWfkgvXP=0G!ej9)3znG#= zwS50$<21JK-87491%5@>J2u2Ck` z^k(pk`iQE$G=n!rPM|>@`HsM`(?`{T^qRg^&*Hsmj405n16Z~(Ss;uxOzU!vd8@IO zV5~zg=ea{z4<8%wB{}{z*G^#*e&?=&u#*}D~ItMJ7?WLUc# literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/KitMapKitsListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/KitMapKitsListener.class new file mode 100644 index 0000000000000000000000000000000000000000..d28d8ba63b0dc9f6b84da6fa5c4aa175b3b28079 GIT binary patch literal 14285 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/MinecartElevatorListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/MinecartElevatorListener.class new file mode 100644 index 0000000000000000000000000000000000000000..e765e17b41a0fa61f26afb958e705eebd7c5496c GIT binary patch literal 3558 zcmbtX{dXKy8GdfE$u!Bd(2}%GNnnd&Hy_PN(W+f2q{*g9-J~^%sfizDc5}0tW_Bjb z%%)ANBH9{1Q4rBoMG>J2RcXbok#juqqx?&Fz~|2Fq`O@w|kdE|xV==#Aj9ZS(n_iHy z<%$`&UbeETAt7-0S#!lSY||+iCv#_IKG4uC(CK;wBUf5lvI0Y{NGCAjO#;o2SdJAO z6=+QL%m^fg+kww?8>@%)1EOsOTAYn6Tzb83k+ue zPcPB}t*#UMC}5Q41pB5 z|8`;F#!=Imx22bEMF;k1*e%fe(Y5N>i%yzdkU_;Ff$mgKjVf9cti}eXHQXz(uUbR2 z9=ol~=+i{Q`S$mwL)JSEbj6kKsWLAFs=X8pCva0tW=z z=!uH40!?5~tUsq3sZtlOv>}N;9sM{cu#KWlyPi$k+iT^7vjjW^L&qoakU$H0 zkJ)a1=}TcUj;XbWb=F7q+N_#Atm88^vvX?pb1Gwx5Q3VNiS!H)5BJO{rbl!<3TC@9 zEL6ro)EbskCK%ybx($!xn1(@t-BpfOap)Mruz*Hs)2quYjykl)P3ER$+UXXIU{u5L zTFByM9b-7bSdU~ThB9Z44^C$UI;s;WW+Y%E$m$r!1WQ*wSu$-_T}LWgU-#*rIi>QH zjxQ+5EmLF1C(fKYIW?_vYf8s7z9^vkG8i(QytHkVU5V730_iknH82LomZdye=};q; z4t2^d6)Z=`9KIZ7&zR!}O0K}e1osZ*(8tsGs*bPWOq3KuuCrhjB3V^o$cNJw~K!0`6qWjU-R}2BM%rm2AOHE3V!LIAxn_8JBwwotMQDFO2VCI*`&E@b0 zrOu{4)v;gE@v7?Bje}#8ZTKTz)9@$W>#8y@JkfN#j%&P&G37_C!lLw}(`c-NPpZiOU?DNx#!q zM*G{?w~pluD@Js`)VsC$MXQ=YfPP|vfa~pV}0jCujjUgIG zL(g}jonCiv?B;j?yOF^j9?yGGKqqYM!v);SD(k`vB|Z5x=F*3@+n$q!N_AikEPLf%`qJ*^j1nywAyI4MIbQhNOm6 z_#FY>MYf#+S&AH0NRDvSxb0fk;lx#3REQIhm-!o5>qxBe8KQj)={k#jY|p9k?4Nu{mV5Ru^GyQ4P0%+tqq%?-xu1RB5XaZtzKl&ha7LE z7x{LHd8<-$H1cl~)N3JZDxa?r*1r%`Mg5gjBR@~$4N?j2pJI3vs9DOnL8>`~mw%i7 S%fDOiB4{9jf8*W;y!k&=80$d* literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/PickaxeStatisticsListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/PickaxeStatisticsListener.class new file mode 100644 index 0000000000000000000000000000000000000000..9847edc6677e75c8701dfdda34dc3dbaf3a5ecd6 GIT binary patch literal 2878 zcmbtW=~LTQ5dS?e5yuM<$VDz7r3911J!naAn#LF>absi0rjVpZDw_u=mL)37X`J5o zeYfd-&ZPO=OiPAlrXTXLe?$M0POp8kE#!b_I@9r3deZ)O_wD|6_vyF4fB6-_2)V-rV*G1i4wqj#F4MN98S}v-q_^&{W@z>ihQ=ZPGYQZqX3qAO-*Ref5uH2GY4>9ZHK0>gOh z|7MZ4&P`)nH?z5MOQ<=9y+g58>B~rYUR6kU<+Frie#| z-qnU2#S^MAs|zdGie2ba(91CR-#l{kV>fX$FYKhQmW0KyW5{3Qg*IcC0%d8i4Fecd za67|RuLCcJV-JQH)|1JoE%H%AZjNDhty#^G0h?ASAVE}%*&OYD82c3LW!U90z6O$G zKMpV`Or;;~p2bKH#)Dv*h2D4v*{IG2ouPlirM zWGSzKc8uN2F)DR1a76d{JTN}}Sz zR*ARTNLGT+li10X#1Ri+L=;R=UOii_gXTDfW5ZO1OIdj&fp;hXQ`__;kpxy<6%6)&>D|UM$V1L z5@CvIvzJ2`>5zDi<1tA|Tb1}kDk2Lz!;uA*Dknx<4Tb|X?duAHUI*2Z3i_imnmLYn zEYJ*77Z-)B{vAWnN@7=MhwAkjwM@gMN$Qk1E=iqc zr~Vyg96r8?r6rN|;R`rlgiP?f}8luL_iySXWC7y~*q^A-@s-yUd z$J4>Esp>UKuW`KYcnT*%v9iLORFYLshhplYR;bZj309sCi;$GA*&L`XTs${oC?rd;Z@Br(Lms1<9#<&$;oqk)QP zu`;2zc`J{msAoP?I~L?DW$5#QR(7#6Z5bL0d4_?takb-y#yQn}HWybHE5~JP+ALaG zaZHm3>aMz<6bIx)KtCPFjr4D#Kjf)Q_ZC_;pq2iVKybRQr#Isc4(J@dj`raj=sa^B zT|cAyM+d!$uI+@7S06g)*N)BfB(+HgTdE)#u+|Chg_XtSVoLt z_$PGVz^OA`>FaoK-!+`RhDVp7Hev~43EC3!GcM$D7gDGPx!^)B)`L9hLY}S%dCrBr zP!IC53wgC31n6k8cSd&Pa|LAvrpR4Rr0MY;PoPHldGL8X@t| literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/PickaxeStatsListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/PickaxeStatsListener.class new file mode 100644 index 0000000000000000000000000000000000000000..f104df7e33e536fde28766a806c9bbf4e9f568c5 GIT binary patch literal 21537 zcmb_^2Y6J~*7k1G*VF(K3rJHyAp!~ts7#VcGGvkoGbteG7$86(Bp3n$iWL<**if*e zU_r49_TGE%ytKi-fQo(&zX6A=C6AmV2tgr zZgnxi*|^rWj^Y6{_U6VG&cxI>XU_4>t<4>Wa3%*2spm|U zw9RbtGRgeFJj}~kFwxxFRJ~~a^rrUO#_26hoJA6CGa6g!8?h4PSy6S&X(W7y=g&XJGOJc;KYAjU~?;7XIuNyqHI{aqiKFgd*iH*7#ZW}5(-m`T05HO zH`O;UY{m{oTd_-xdbm03``=aSf)$OeGh3S4$9dTE_nix!7?&wg>C$VtqKT8!SzzNxlpmkq-_Dvd|0lGUY|ns`ZNbaITdp7{e~qOp5LY=n#L$JywerqZI0=9cD;=B9;3 z_UO>s(F+IINE#JCcDuT1Np?xm*zOPP05%%OYoR?}13KlHU0ZGtbVfP!>f&rFbbV5JPFz>R~X+v053&Xb$hk8y5Rj{Ah} z&P*4>JtMyh^P4&vXEt^;7L_$GX_{G;W%Z3Mi*OsMWK}Mf;H+q;Q(2MS5zDeWVol4U z+0CuMs#(&?Y)jy56!!0bSqpZ267FcVO$$4`tb(O!N2|robQ<;ry1^o=nQ@7(8!ZmK zkJYouF4n+Vue|im8z5j)*kL%-m{;cdIXiH0UR~*qc3kS?^3x|bZl;JHGM#Rn`u7i0 zjQb@fQ*nD!RHz4OMcQw*?XvsP)v#an3~rtM@Nuol`iWHg?l4GS}(jV-`2 z#>Od<1`T`Pxp{jn(%=@EIP6F}!#gJ4p8Dr?WGB(U7SXy1%xPR$+PrW9UP^W2{3fd6 zXkbg&QnauSc@}3qup4&XWapapv15Q8OC?ONsU|Nwj-B9Q$9KA^TV;Tq$WFqQ)^yaO z#un^t&-@g!?)&40;QB3MD}bHCPPNu=NgLkoI2+h0YwU}&ce419xR-IZ5}1pfj_YFZ zkg0LX?Ll4~@UwuO&Ca2OYM%IKAy1%RD$2*U?hb|c$_=3?48u}p8Ap8US#ZjiJ*ZU(lQmWMxD z5-o{GGwE7fCuwqS1$G-bfoMr>ygpi+Ol4Bhc!I1ufZa)!BU)W=DR%?gVktE>i5SJ) z1MFT)Nu`nvq}&he0aBniS{cK;cd`~MCF3Dr50l|6jzvq7)g(O%>@kvLajca16TqG% z?n0hQmQ<4VG_Yq#^PrX~PGr^RfIUxYxHz7|Lu*4aS(T1#PX0ed?uRO`!p7ub7QA*p-y0k99Pijv97bVV#t zM&&*R_6ezhVpKCxJiJV*izoD8eg^DwvShI}OkV=qmaVZt2Ye0e8xkDFsaRBZ>pNiI zlj29EAzoch7g(*Ge*ycEoJc1p6R(X`Q8#`9_U~*}cy=OX2e4mAf#MV@c_Z~Ju;0iC z6yx+&XR7Mb6{%!W*YXFjKgn_y*OgSp^tk*DoRJhPu1i%@kIE3EB{W1_0GB!(Gpx3b za*I2FJ4sR{mS zu97;rFYsZcsFFl<3JFEP_anhWLZ믑yK8jSYrP9<=@BzR_TcwjxN-cgM@Pn*4 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 Q(=PQft~TS{OsHG_2c&X@ssI20 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/PortalListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/PortalListener.class new file mode 100644 index 0000000000000000000000000000000000000000..3287a1a2a4e00d16d5a6480f31283c25b9193812 GIT binary patch literal 6616 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 b3a*uyrb)Yjo4AEPlOmhsU+`D_4Uzu?f{Yk0 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/listeners/hcf/ProtectionListener.class b/bin/notifyz/hardcorefactions/listeners/hcf/ProtectionListener.class new file mode 100644 index 0000000000000000000000000000000000000000..11312b14d8fdc095e10ca3c715508c5dbc9250c8 GIT binary patch literal 34354 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/revive/ReviveHandler.class b/bin/notifyz/hardcorefactions/commands/revive/ReviveHandler.class new file mode 100644 index 0000000000000000000000000000000000000000..fafd359fb416d921e272cac34b0b5f654d551314 GIT binary patch literal 6925 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/warp/WarpExecutor$1.class b/bin/notifyz/hardcorefactions/commands/warp/WarpExecutor$1.class new file mode 100644 index 0000000000000000000000000000000000000000..de1fbdd80a86e206908a032e433430c44d257cd0 GIT binary patch literal 1043 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/warp/arguments/WarpRemoveArgument.class b/bin/notifyz/hardcorefactions/commands/warp/arguments/WarpRemoveArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..9888d665ae7d8a8cda03c7dd83649fcfe51dd6e7 GIT binary patch literal 4248 zcmc&%X?GiE6@Fe>_Q>+2b(GeLLP@8=B$C~DNSd_8GEN<5Gj-x%Cr+JE@K_qllZh3QShEY4^*O^UdZ+e=9C5aZ?twKSk!0ycG1!LaOZNn+*6M<(r#oYQQ*~xYYq*Sz`O~E|^ookg6 z=wcT1O_vF5+xM2vFTbP57{nps_^8%3FuCUh0=lim`6TZL9auusK9*e{SQn_kKCebScDuCqf@ z+&yYJ=E+KF#`I1bGd6=wjknjkc1e4|KryWUpD zOmzzeRD1yBuQG4g6?1G>7GZb;WFM2r4v`GaBx?APHMTKh+5+va6E&N_Y-ZH;iuz3D z;zcW{HM<_Yo?w|wFLxV>Ce&_1zw9{$M+LSuc;XDPf(8AQZ7i6cEbVbgwGp;kM)tCox9J@gs)?x*DTf5eeDyAqmU)8lH{KTrl%NZatDUoDw)K zuw%@z7qoI1ov-B$N2_*X*zSH`2PW}^g0lizLx2%0R->n4N_J3(Pb^QEzT`my=gEqY z68)N|Ef4alaG9Wlw_S18wXKI$O(Fg~%1XXj0YC)4Z zlvFryIV!5Nv>HVJZ8pU1z{ypK`jiS!(lLH)d}u0xfI(FEVnHj~?u=nK29d-(b}P6f zaNv%zsE6L zzRqJp-Qkeu8KLzKJdbZF_$KFW{cT-Q#kcVta>TbT6GaZ{ktCkO_vGOIJ|AaBvXj!n z6%{|kj~I#-n4S^1evhjP{vhzs zhCNyzlX-3>{ZP0*&ya5{*{gW1I)fwD%R;i>GffubTAoH*sa{$xZP}63?`n{(mqapK z3dqGlq0R=Oi1^%(jVGLia_y8e)*xFqIB^TT_vz+2n*< z@$%+TOPAi>{u-hGNsWBecJNhMS2b==j{ zdkvd=+TO&Lsg~5e6I1cj)`_XsRC?kX-qmvx_fMrBxQ_SqEMnIp_}h04dtaq~3Jr$qsK5F!8qQJ{wSK$j8#f$(ov^=13CKYrK3)5 z5eMr|uTrM!v5lI*js_3fiU$pc`0*w^4C63=nXhHs-|*lX zLl>wcMWn4h=0`Lm$2I-dCD<|4)ygtPU#hh(qOx9(iM519!mAog_*;L}VvP2~tfV**ZwRG(R1(%ykF{c~l<66TFhykB4&8E7?!4WIw%< z{q#!q(^2+m9K#>+IF6tN~s$wQcIMQXmz8d<1K2oD-a4M c6}+Kfi-JEXcwXW7Ryc;)OagCGHildO0XV?5fB*mh literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/warp/arguments/WarpSetArgument.class b/bin/notifyz/hardcorefactions/commands/warp/arguments/WarpSetArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..c245b2c138b2d51ff2151cf7c340dc42216f2fe2 GIT binary patch literal 3636 zcmc&$S#uOs6#i~9Ne@X!U`T){NQ(%`1k%VNn289CAWDG9glNRAGr5^G>FFN3d%%eM zj{Cl#mQ_Ca;Db_QSh9V?rLOmAi z(6B^cLr32U>!f8mmYXv(p>Mmn)clps!9@^A=x9KrhE{F4brV3Lx}d3u-yi~DR>9xmpGr9WT|I|Q5P^RkvR zX!*99M~ks=%qEe07tWNcECHH~lb2(Gm7}foSLH7KT!tPUDfE)nla^DIM@Cfy(hJbK zOVN6#z^Ymj74ifc9BWuQ0*gF1DlLK0jy})NnZw2LaXYNkwHa+^7$fPYt{_n(m22c) z=YtyV5?EPfiS5D;C(M4wnvlMV>wcAIceA)UR4v?tgBtE-CRH6tk6B^bb39*19}ZFS z=sqf4UX5;Aq?9U06fOO8lI+Ov37HL3^O>yh6vt74t^vm1h+=GT=()~>A)k=hVyM!@ z7@jZ+CG0_WGX^lI;h2C?g*G}nn@Sz`t6FLfNbDgQsHBKvh$&Laj~>H}<2bjCUR8do zmUcDaVLYng5drfbwmcn=!4kNR*{9m_A9LunT{ShF~;$wVp+Tj0ilG3iScJT@EnH@2jk;b?V2YFIX zmQ){5*Bjd;DXI!(Wh14*6WD%Dh??Nyah2kXK(dCTHSKi{Dy~BvMVw@FD>wf#Sv^;{ z#I6*?RJppI&@rKED0cVJJwtJvX75Osu9gvUlykgc%c-VH739-8o+%yK+jnfAa_5#f zp69J$oU+3)W2W&MYVSoIFR3owLSFl;dUB)6e3gZ3s~xUcE9{(Fv_W)N5T{^_PY||i zz7JG8;gwh|KC9JGIPOdbx~*DnI?U9k(nMg#wG|3&v}8gnJATM2ME6OH=W>+x@&!kR zyaM`1_RO2ST7V7!Nr3UrZ z;wZ+khB&{AI6KYNI{xlRCYloZ6s}8loyXE-!%tW?RG($BfbMC{woB$dkaTDhtN61p~XWh5G_~u$N!DD*mAB zasIY;{etva7+uQJ6!x9Nfk_-r+*fw$A~JP|ecK+p-0(HF&yjh6GMnaLN<290VDbkn zoy0@!vDlW27_P%_*f>YY80FQr($h`f$Yf-+>u02U8rmB!;)Fm?<0ZI5O0d0g3WXl6 zqFK9$pbj%iPbu_IQrkH^#bLWPiDyf*(#CVMHeQ(Cm}8nu)|cYAA4@r2s~*ApuH*lD zbYTOIqk~s-5(Uma!A53iH@Bl(ZY9Wf-zBXKU(Iy5*5*km+^{< z8b`0v)4X@(nMmH}MwJc8a#&#ydpyF7-B`e%;O#6}^Y| zspJDL)#1ZZJ`ZwLC1UIXKAM{*4XfOiBQ3Q&k2oy(UPy(NqtbFk|Zt?#m literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/warp/utilities/FlatFileWarpManager.class b/bin/notifyz/hardcorefactions/commands/warp/utilities/FlatFileWarpManager.class new file mode 100644 index 0000000000000000000000000000000000000000..7b5e886f51bdf2d093db687a532aefc3aed3c58f GIT binary patch literal 4460 zcmbtX`&%646@F(~7_y8gh)EQPB({-Tm>7*oT}&Dmi9sML1Ps--!|v=dVRwhl%o4G! z_NKj=-utxLr}vA!XscErnAX%C9@Pbc_(me-yF?b z!KjnBXSqCK6|J1@>4-v7oET?FPci>7_~m8gpwLs#nur!Z>`L_UdGqZK3=nGD)5|Qj#4*Qr6!zw-l3Q_ z7Ck%dq!+o^B4U$P!Je>|c&LmdaWJ_+m_1WYu4n}%&(<)vd3Sib+VNclB6*66n$m7D z>*O@tvolC7Kl0|ADRqR01E0(Q%N&MGCjT#>9 z-Ch@cHy(AxI#G4Xz-fGx)S(7Ny;`xCTTn8Le55NSbv&fu_^zsv(YqYxm04z029{Iw z#T*R}^zPD;zPT2h#W@|1kioTd3hNDw;ZZ8BXwq<7G=dc$=QNzyrE(34v}ap^>gNBC z6Eot(V+I}x;4Ulw#Kfl!d|XUyDld!bPs$Qm)E4rzc7I64r48&sf}JC} zTe&ybv&KXyXP^bf76^5X$nGTrH^I=6XZ`NTyZQ~h8NB-%g>-%bi(rNC!>3eyKKMF} zL?;Y%-;9{!8)(O^&FB!sWhtS{TZ*S59zh60p1=w|t>fAEtDvo(oVAO#=cF&ly=34s z_-vJQ!f_(Kf3j0~%l9jVtZoH$f9ZH$!<`ZZf62+YK_P9XEZ;s?^zEY0No85C?F61f zr=75H0-TVQDL47*OM)H5ns{qWoEoqjFnvjU&YsWcNOhtX!vF_ zhY^zVFB!OkZ;3=n z)jYU)8Vke4KI&WL@{~I}fmiW69lzy8|A7QI@O%7$V;BoF6%I)EGN+Mq3>N36&<``q zq1BYhwJaSjC!6uQh67S!M>y}wI6I_1GBQRUDX0lCfj{9*9dA@Rw2IQWTV&n8g+DV_ z>aIJVWo#JhNZE)?GJ#dB>sVv?-=J{@u402t(U<$}?r5Ea!HuX21KKwuF}!BrFESD( zB)DaNrP|l!=Who7E_-p=qsWw7^3t{hhOiS;FYV2qG`FlHepC*2c&)fUgaYz3(bYEP@ovY~S zA6Uhq{xy8)O$Bi`fA`W13L=g>sHl@8VHaV#(W~|p2>Q^^FOd>sIpbphgH%v9>WET# zpIQeJ{cmGv14lKy!4olvjwbGbZVRRuN~sW2!~GGY6ZMczZbv#?7b%HhVvG9^QLk9u zDz*%4;K3NvbY`nP0}&rvt3I|OMeD@J5j-5?oeuF@h}T2B(HLGMeAKz45wMmjSPR2B zuD~WR8G_A+x#stLWRnCt};x4O88NB*W>5x~{6auFdK?sm{WM&^?n+$#5ez z%x?{OO5v3$&=}%r$iS{1j#Uq5Unfd5#E;ZHyioVBv-R*q-NXD_r>t2!z%qza;T2ZP z;zinisJ*ZbcNHGrz4l-YrSXCHaQ0=K?H_1Aa~01>IbFkZtgO$iVu(^b8~D72$yd>J zWCJf~Lb(Yp4-GP{gXOexHKAuZaU! z@y9j1U0!;J4+f3DJ!|-@e5~Q!tvzR+jV#TslOfM-4AK5te=w`$c#n!=_{V<%7kh5S literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/warp/utilities/Warp.class b/bin/notifyz/hardcorefactions/commands/warp/utilities/Warp.class new file mode 100644 index 0000000000000000000000000000000000000000..43a09d7a604dcef220a73045e72bac8f268c9877 GIT binary patch literal 2597 zcma)7ZBr9h6n<_J*d#8f!B@}{lqw{^+A6-3)HkecYDC*usP@fGvLq{EH{IRX(dkV8 zhu>Sj@S&ZlP}`Y~pZwr&>eN1WUr2(`ahUAhbMD=9p7WgN9$x+X=idO%z*GReYv@j`YCFcVUiD1daSNlPCT3XvPo2F+PuC_!|K|-LgqMl3mqhdBy z>8pHYN)Pmhy4KXKx>oia)2h!2q+5owYPv4d3G^3C%k(Y^{qZ)V4S>ab=$5t4WDA$ z(ki-ZXty1M6x7Hu$yadz2L;q>!>Fz-*xmv|2%PUmeyj4psCsi2vk`zqLdtLs|_X&3zoM*yQ#N) zX{E|$-O|0bLu65BqXUIE*x07g7a2xM^PKF!=_Hh0_y7e3#5CadFN&t(Ls0nfy5R|& z=q7(>$tbuiuxG0bl1MSms@{_H_T*sF1HJSw(QDS`G)|(VfkLDvT@1=1E ziweHz;V;-#v4k%v83vqh>MlbJMK$=N%Xd=oaokh!89qmK_+KL?uNL1)`qS9Or%LN5BzO{-&P{D#AfMUu2Qo`jnM3lG%Rj?# z?k^m6fLIl z!3cl#9^NM?3Fb84XXuMz)(7>FU&UyT=kgmko6Bd;KgWd_Uf_}hl+Rr0m_C*`$s2VWJqpaSk7e;Xn{;6T>*JVxD=gaZlx&dFc6wDje^c0w4>>5svJT<^u!zWMY{l z=2zQKH*nGq98}R41{S!*q`}8Uo|a5To%LJVY2TpVo;;f}#az=}CAFO4muX$0HP5DB zW5ciefCH%(H|s9qYkWhKly3~*Ng~m&42sl07*QbPRpQMI>-sU|dX!436!wgc zGy>!U^0kiIQzYW|3nLx00sA+IwuGY`WF3u+hA5C literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/commands/warp/utilities/WarpManager.class b/bin/notifyz/hardcorefactions/commands/warp/utilities/WarpManager.class new file mode 100644 index 0000000000000000000000000000000000000000..d44ee1c92e0a38097accc42d0278d2dc1815d103 GIT binary patch literal 831 zcmbtS%T59@6urdI2XP-{&8C=!>UZBxg&Y5=O zYh_WWC|(eQ)B2K5jRyuf-*B}2zfSk$WO%42iBmawdYem}_O%(%imN{>p8pLDD)Z8= zkW!F#rQWz?@XO^+_|J4wG+b&N#20R(MJJ{7LWHyI*~eT@kB!eSgrruKVsX;9Ay4l#`zvxWA zv>*KH7dz9=6vcL?W52XB?O*EDo_8-{132T1lL`A?&vTyhoPEOI|NZ(qfHAlVnglYI z?V6?aN7}OPEER3XDCtGlw5_VPWa#elqHbxIf`Nj#K*t09p{`YQtE}Bvd|(ub(jt(v zowBxATUjw(t!P^%vs`m@38PgF$J8t4BY!p(-7AD!ixoql#WD1%Z3(1jwn7wK$F$1h z0_{a^OTbyPQZcInA}^pC->jL=dbpJG7~ix_%N3ZMd2M1f*Q}VXX;d{is%ke4r)pMR zoit|bq8Eh`Rl|0_4pV2m1yY?l++CJc7=3-xJM2SE6H9?D zh#E*JOQ6l_YvVHiWWg+3x?6J?_WZU36FVi3toU9WpCn8IN-Iv{w1QItZJw9HAS%va zjH;FmI%FtX#NhtOPDlmsHR|nIGJ#|Y?_*rS2Q=rFVP|ZstYQKmGMP2qsnStaS)eBx zD=_s)K7rN*R0S6VCf>%a3A8J?#OiPHxMD6V%PN9HqX`MSNKE+*%vsR-|LL)|c-uOlw?a#dGeOAsR?xm8E=3Q@qDdg}##R`@MT6rhj zP_Qb{waX0}-izcn@$Rrdo@(_r-pM0V+d6r>S-srQYEuQf<`j)9rtCg#VGBMXtA-=Y zEXHp$KWW($`BRpbea(Bat9eiMH1Eld#-~)H1D*Vv=ImSEY~k~G<~h1D*$wn&HnDF5 zeVNQJ=(3afWzqLXNbg(b9ap3 zgvKyN_>?0_QFx;ai8Og5NiXh=B*A8nUY2{KTx-I+lBS3;%^2q;pJw{R3usMviL;V$ zHhnIfZsNS;o=s0Stn_EoA9)M2nbALx`yQ#$m&iTgFSyJso4y#Fo_dDML6&hZ%K=Z) zqvSV;E*#@$2=<}pk5s+YUmyUx)Kt}xG6 z9K;j|1t%3*Ob%ahC$iM!?dEvpCO)YPbIYsWKcpsQy!RUlcc0_-Og4RjmFs6}F#n10Q8hGbauPi_MKw<2EPq5MSm|l% zau?@4HF|wYff@-a<*N~D;ID)l&=LP)n&~saMLNkh<``p2r=%ode*26cIrF{O;_Y1U zV)>e;f>;7YTniAc1_<3UogdJid4{FrcaPB=e;RvAte96}A1fch>JG4EeOQk);n+F? z&@%yOQqtm^vV+xJ1Swf(RmO4vAYCEz>LS3vUr@voFU5gpFs0B@QuiZJT@h0JPqp=m zf(mgg*a5B<;5HMtS0Y8FYL6f_*Ga9_v(k84l9HGEw(H!v>*cTNI!7Z9N@1gs_w9Pw I@lI9$2LUaD{Qv*} literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/LivesExecutor.class b/bin/notifyz/hardcorefactions/deathban/lives/LivesExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..8cafb0f08d7063c0a19c33b62b2f3edd9a612f00 GIT binary patch literal 1349 zcmbu9(M}UV6o&sPrG=$Pt+W&>)godk%Ekos0%HP2)L03jghaWT?hftfcDLEiHtI_m zZzR#g2k@bcXS!`FCQG#L#q573GvEAkX3qTh`Sm-1EtpBf7#_Hul4l=2nl0|zmgkEz zZYk-xUDFm^wHn+t9oZ9Iv!>gp?}Zg8&rc%Ga2Po?P|}e~(k$MQrjGi7<+a<~wapjR zQ0(~4penlo>Hfg!p%XNvyS;wG5U+Z+n8Gx}WZ$)c3CyH0 zi4;S&TzkuV+;q6xH0#QjZjpo>-WEbg3eU+Q?!8CNaYWq9=0$9AEZx2f(r{TgDpAB~78I|iff1->QrW$5qs zcVbgl97Q$}RNPi}L40otq!!)(?w0I5~ETD)yDpDy!{#qic%+E{ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckArgument.class b/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..dfe531742e23483bb948fb2f82a748b01f29d407 GIT binary patch literal 3591 zcmc&%*>@9V6#so`nhEV-ODapjB_K=MN=FeD8$@ZKwi+l%J@Q zyMh}k!ix{ckpg-SM_+yLfAPiBbM%P6@0)4ql5*4seQCbs-ut`vcb9Ma^Pk^e0I(h> zGz0_^PSLe9qmLRnvz$&9%T~rrxpvX17-`FNbHk=%>p_e3iQrtsOs8z+qI>Ql5NPH+N6qwg6X7ZO7VPEeu=b-R5wf&PI~Ol$jqg%eLJ6he0=IR|K}so$0?{#Y7F0n!$>h zCEV)26){7-0qZo}D9}7Jdpd5ydeVK!%vY`cj7&{p4!&=ZeBUZ?RV|4LR>QbWV19I; zS93Ch2Uw$dbJ)rY%qu#68wq4$$znNc3|B`+Y}c4*Gyi&k`LxRM%ShBH)qS&5)V8+) zn{cOwI|LR?f$LVNIyR%5oRH7{OeW7n$DF&v=$2DvbSTg0B6UcT)4bPk` zv>sXbcL~(RWJC4g9u0T1w5O;fa;BRo=8I(=No=F!uB|k>XetGhBC2-#Wjc1usQUil zgI3Co&(7eb{On@3Rrz#9Wy9^(u@;?;7{YxT?iGkm@u_B3bnKBW+*o0bwpkTfh>h5X z0~+>ECt(^#I_}2<>=+Iq#Y(!{%5aV=M)pd5Q^&BB2-}r@N9ID(l-6NMGD3T{CX@a5 zhLNR!$7*zq6tHz1lmfxcI|nz1!5Y)oL^+P5nPSyRbLKcGX($R9|8Pd@cnD?oGizgu z|HN!F9mdMTO`J$`nwxB8J{wZJV$9Hw%V=F4RU9IVvX>qEp{mu#0T!7Ub@KT!1_%4L zQ1}r%s$o>1>)%7_cnptwgG0TG0xf=lUjl0DlYT9eqv9z!6rP?jUFNK;co@&J#pUzD zf@;C@vMyhcW1{bJW%v@4mbWu}#16{=A)jmJSr(O~c*WGZuUUp1gqnXrtjmZ~Fvv%U z)>~>!2x7XtwOoOvQ;ke3UYcn1qpx|D9jmG z%3CgLzxtodKyNInOegJ%%V6dW*jdMPtFr$N{~tbVoIR>Haj1QY&oz9;H%Prw%43ei zJSUp`*3)qeU(k80P;y6QBr_XEMW^8_fh#T<@B|wMiq&$;>apb`y;x;&+Q(t1RKRl1 z!#aL;(y;vA;VQ_rhA{umK;r0cQmU&1;IFxeaJm@NI^=FX5$)G~!34r|QKQCqYw$wwIGS36!FA_w zdsqEQZ0Pt2i6hWEendjBwvU;$9>s4f9HJbS$xRhK) zd2=1P>|v^UnVS7D@HhwMEBt*E>+m*i#tGbtU$6nc^7l7%DdzX9su`b5@HjPICFA57 zuiP2&j{mi^Q&ZU+3LZgAyO%2t7MW>j8YMB5=5>=bmM8q5c>& zaT1|(_(YbQN19h|cc`G(d!my;H%$iJG#PZ$WYA51&@veQtJm1A;Y<2(oZA4t{tHYD B%{l-8 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckDeathbanArgument.class b/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesCheckDeathbanArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..437a6163f477a0f6aacea8e8b20296b8275577d5 GIT binary patch literal 6218 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesGiveArgument.class b/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesGiveArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..781129b93321bd3891aea2ca685912bdb7a20964 GIT binary patch literal 4705 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesSetDeathbanTimeArgument.class b/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesSetDeathbanTimeArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..ac820bff1a02596ab85ae86c9f85807690fbface GIT binary patch literal 3129 zcmc&$T~`xF7=8veB!pNoDi*bMLD2+(6+~@;(h5k$2C<@1(AG|pNwSjcrn?hb?DvPQ zJw4p@s+Ya?qU||F+MeSN=x^$2`_5()Qb;`Xs=3(g%)Ik{Jnu8l>>q#q_7uP<9tF|D zFmKt?%&t8!^4!U!ZAWBzTAH@y8X3W5KE*AgV6F<+;7+bw6qYm+YPcxmjK6-vEQ*W% zVh|d`<)$vn(kz(LRNhLap+?>yZ5NB&${2Igm6xhFhPDaQGUX)0Xe`mx>t#RlSwHh@ zg>ufc#^Xr_ZQ9O=5ZW2`x9SldP3|E(Vp{KYj^y<2<48mx|o(KYXj^R`+ zai6bpqrk14u_ztW%8l=wi6?{TWH_|lbgFC?GQtTVN)hwv?2upYkO%Bg71*IL_Tqqw zc#z>>gNX5D800>J=h4j&%n5mw7X`zCSbS$P%Gr?!j^YJEk(Wxs$}kKz^15TMpYOPG zaV!E|MGHy0Qg=J0&>O*VoL~r-gi|zKm*~O}-Qj1PP*0eaxLPizgmZ(Z3Y2U#VW)W^ z$sJRT{Yg#cO_yPzd5^2D`7dOo_-!SR3k<`}T{oc*)l3NAba{@lKDjI42(clY3Bq9L z+)jcBhA~22TjhnaSjeglPd91XsA}6ehNF!vs?7=E0(sLX6jkYb1PVMQ3JmSGH6mtR z_~|^C({{mjBACK7Szf<1!_ZY9zh>ew?~+1cb{l6GQujq#j_(9+3zo|Si`TU=T^*Mz z5uCJAI6(l4B|S&NK+Bok~a0`8dpd!ZmPEk zZr~>Qlg`>T?zm#kl8ptWz9=#hIciTBx3Cn%ZH9eYgz^_7SjHVV0y#)`f~Sx=NvbYwf;o$P5IKe!OGu+gM?UTFtn>ulPsh2swBLZ;)Su@*`}*bIl86Cr|k;ZUrUWAjX!yF^^?g7WFWaA7wmYpY>? zj_N{cQ?wG~ytkhD4T(td74#QK3!Y(4h8kTWgwFm32b366Z9W;)9pEa*81^hmo?e;f zC0~yB*cQD}(WQcr#H;dd%54tkE`_9$nmRr7iQ!7Bs(sPSSzMMK%Hf;;BZrAPxcnwg z(wY1WUj*?vNx0WyFJqFn0-YxH;S|A_cu2{MVo9#4O6bz7-q7{cg%|CzlNPh4x)yt$ z^;I>b;-H7rtd+jp0FB-PXrpJ4Mt5o4LjQVyG!zX#L8Sk8>|KiPdxHJ_8|d1=;SId_ z3wnMcn-=uZ^EuB?7eY9MWArs~lIFT9K5z;#8j&}|(N7VWl23Z7NK3R&Me0)lI*m;X zQjF6Spi|$#SwC3xd?n(KWLOEO5(SC*R+zq8m_EFO6JD5?F;)q~bSkZlcC2@6PXj+7 zc3Opdg7Kd*xq+GJ>*T+Ga07FdIKSeJ7HE&VHEm=Q*Tw?ffej=d9>Cr2zK6bT>)Zd@ zvbFe*@|&i`%4SX5grHG$rDDH{qV|{)YW2_?LI=I~5F)*V&~ZZNB+e0PQ-s)CG;@zW z0vs54ME~E?t*^?StQ1r$dmS#M2g^FjSoKg{_n=T6UdMZQpSpSux3Pu?)awsuwjC`4 ze_|v^R|3O__=q-rOw%p+#A{BHW&<>)+&|rp{dq5m(aL%)39XidR!c&wC87CAFnr}j G`T8F~=WzP~ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument$1$1.class b/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument$1$1.class new file mode 100644 index 0000000000000000000000000000000000000000..6ab0500ad07064a690a2aef55cc9e7ddc7d8f2e1 GIT binary patch literal 2110 zcmb_c`%@cL6#i}qYzPa)l!sPStf`XlSn)xXP&9;xu^~_bDENSz%}uhf*=06&nbv>C zf1tnEDb(tW2LzE$L#80_l zbEj@>RE~rxHS{pdJ3<;w%Mqr>YtrzgWgB(JH>BsD3gg6cO;PndVQjbW6dbwvbdRCi zbbUuMumVGmY*?+-EI}?_0p=`2{FK|NmT;=VW4KXty}D8HkB=>Bm~OMlovM*gy~C)H#AWU1QAqx zXQ!~7Eu{D37{?6_Z&NZMzLx^pb-aTV$*3;mMy+NO{!N?TSH+on&Q&^0-39BchIbi8 zpJ}lyJ|8J@bm)TgP)CN}^({@|*PS%BNxK#}lH-80fR!2SPPM+^D=mp0SUf$-dmS|BU zpsq!~Zu*C6T0kP98XS#D)!t}Vo%CaXtOjYeib$|Cl$kt3A~SV{Wacr3GF@jF{fW*a zc#ZxC0-HG+Z{Zr|aGmya@&F9sb&S!-R3SP(|DgC$+N)0fjJHaeM@asPn|sOk9wYq_ zQ|I^~v-b$2(ZhX;agMp3u0me)lM+YMz!ZvmS+*RxnI}x%zAnUKm#~yi#f&GPwhNVP~ z^4ag?lc7_^T0ArPJH8<#->Il=W_ki|r1D?~6z?FI9fAjA1tyJAid;j3W=XnNrBQu~ HKl=UwNn|aH literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument$1.class b/bin/notifyz/hardcorefactions/deathban/lives/argument/LivesTopArgument$1.class new file mode 100644 index 0000000000000000000000000000000000000000..40bc1b0feb46f40be4d1a425f70ba8c96abd9dde GIT binary patch literal 2881 zcmb_eZByGu5Pl9Q0;2@t1lrQHb%~oA6A*;vg_tHWwgDIO5-=o?w)Bt>TOdoWB-7G= z(4Wv>(0)xOF(sMl^mBhxr_(*zfC+Ci1ZB=JeFI;-?3aZbBblTGNB@g6cNF*tNIiy zrRc!Fnw2(8Agy4MAykLOu`Nu+*O;Qb%ceI? zQ3BT}`5~VJ3Ml`n6QkPal%L_#4z%!406NxXXU;QhTtM%lHd|lA$EG&cyCex^sMx?J zgSu`zDXte%mgf+w9+4NPQM=^WIvu)>sH5rJo-Ee8LRIL;?Kg^%({0H%aXjPcuplzl zA4uD!y+dj0{~8^wR*m1Q78ldW*hAXp(t^kJP4c#OYcL1OxC~p8#LjP6-XugfUMrbVc+M|81p+;}L#^vY^I$rpSSLxYIil8#N zMo-oMZbv7&XhaPc!KxWHK$}RzZ=$cD{(%oF_+%GhhQAQa^i^={SM<=#<+m7I-ofpc z7_ML>_*DguDj3_vcmrM>n$FPlOU%~IADUkDr=L~uoHT;p(4!+z!FNG^(t@M*`rblc zj!LUL5ET@j%7~jFBfd%S0R8l>p_}@`eGCyy!+1t5;}_h)@3@OyJoXXkszzNytxqMwaGp-@CG0x>2~Y!oUg)d-B9ba$Ab9S$^HL8O{~^VlRX~T@8J@9&DMV%@8GAE<37jGkd8;MtDnquH)vmoE-&tj1GJz?D7L!g}0p)Ba zfoYs!h_{5>G(C^9kRjP+hr+kFXxd`gZ&rj`;uVX?CX0^2tul8_H4Z1EvSE4*`Tik( z*&HX#7zuOJ<8=Z%{ZjstqceC%!`lp_J7br?yLgYpURMcyt)>E#@1ynwr8eOo>9t}@ zQ-(o{SA@kd?AT#NG1R7tj$79&{@R);^{t8vKd(^eggd*-iXK^cw>ui?J8^u3OB&`G z^jECJ1oF5{!6Ruehuvn0+oZ9}Fh}Xv*IXxV)I-#APv5bBb_7?kpy6YN3;*6q0tI|R z9f|k_U2loE7|ttVLh4P*LBr)W88kJ$Zu`1)opqr%c}p){tK1icEZCCv%xWl78oroE zP`Uj(?Zmk_7O|{q`5HrGm)6zM=LHsb3xAj(sy!^?(*$mS+VPm{+a>O;&3hZR(QqBx z@jYvU;e+Q=t=*dSu-&G&=a^?SMAf&1t6vJzQW;YX*$dK<;pFzky;GLzCj3BEvCDEY z8>KEt9bjLNyrpAhMRH?};uEwB4WBWjUQ{m{zF-*dze>ZZ2F{RswG7c<5X)y>qD0a@ zXm_?f4hdeNqHS41QuFbjQ@Xc8yNS|W!9BzYdyzV=>Ad$ONjbb?)@?3*mpFX$e{i_i z&3uk}tcf)Z_bD?2^#aCu$FivS)Ga0f3r!*~nk~7ZJfUv0b*^pqF2)T*c;3WWhV}oV zu6F5NeJ>^P6~}iCan)1@+E~zVwq3Jw%0Grg!M25)x47pC4=3o@RQI6>#xaN?8fn2O zhNQYU(EmZ28$p7eduSvOrM1ARO!Bql=wl=^(~mHgd5VLp$wQBEIJ1dkn>e|N(~pq; zAuyGtXOgx7M-js@GIN{`q!e;AbD(VuI?mFF%m$!zX~Q|34L8?W5ohQ-bsWsmQ#tiJu^XayHuDf;oA~fYTwz$f zF!<|JEUspzA7iQg;rgvZgTH+Xjh??mzay|w0-2ND9L)w4RaCOLja4FdhyI^HUDr}<^?NEw#C`CJzq8&=nHl@)RY&fBQ hr|7K|A5=2!1Q`!NQ~)Dr1<$YG(p%jb7wJvEe*gj@dFB8B literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/managers/DeathbanConfigManager.class b/bin/notifyz/hardcorefactions/deathban/managers/DeathbanConfigManager.class new file mode 100644 index 0000000000000000000000000000000000000000..e165237421445c3e1f28108fcd582f97de49af14 GIT binary patch literal 1329 zcmbtTYflqF6g{^Twk%7nl{cb1MEZcP4}6vw1>{pj6G#(2PTQdjw7Xl=SjUEe7~!?!2I}zBXZuKawW{mMLs1Qs z>-cs}ir}as9J?tTQJ0=?Z%39b*Ev-6cWtwQI3aZ`J_@@boVxwKaxAL>A?}E#B&16n z*IwW$r(Pr&OuMhNduT&BDtJX$$#es|E!i>?Z@D#TVgQzf1V#x1nQVC&gc}wHF{F1l zEf^SLOG!C$x7DmjZ(mdzVL5J9G|IwL`WzYK!IAO_o2CElg_c&A!EUI0ER*dPKrk7w zc_n|84(%W_>*PcQ_UT`jZ+Bot1GfnaeQ^fv5GJp;f3u|;HR&ZV zPZ++sOxqo=T@iSnCDtQXQo%CXgkJ6gsLjXWqgp zCJBkaZO?~^Su762#zO-S2${Y*w|Qn;jljYqJSGh8yeaLyCFJ@yG72o}j87~)#WTJh zUj~sql=rXMi+VK8jx@qj{{nbk%ssc|RppM-(>c@gg%$J_Vu9y+fFEv*KOXaN$3xC* zoIMHXxi|TAzmx zOhe&LCyH@`2~0+5Y+ki*F!vqFFT9B{F&L(esgTfW10q7gRL|hl_299d!PA&wIxSFg zT`^v>mzX`c#N0vp?gbWf8Rxi{&hYOXtbMJN|AxXj*7KbN$xz}HOP$6F6KdHLZL+A! Rd2Y#byx>%Xm+Xz9_y<%{JyQSx literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/managers/DeathbanFile$1.class b/bin/notifyz/hardcorefactions/deathban/managers/DeathbanFile$1.class new file mode 100644 index 0000000000000000000000000000000000000000..5f622608e0c8d47264d08a7e380146eb1a170e2e GIT binary patch literal 1389 zcmbVM+iuf95IviOxOLnngivk)3Ixcd)GfDOTq>a!q==Lv^@79`8)uWaO6|&7N5FR= z!AJ0dM9bv?@ytgdW*t|F+P7F*?|OFU%$b?9{`>FOZvYRmsv*X(RlCte|3v)!RHX=8RA=TrZ zLYMc%20vg(*Fu^h4>Hhxa>a2SxytaOIC7K|pru`g#G2O-oa$Sp(zHb;NPb zKngjAcu^fq*Qh=(gZ;Yjw|TuI7_v3b=AB*cJL)?!CR8;TtWjAO<|$iEyc2dHDMqe1 z#Cm6^x^7iVZ*=5wO~X}&$w8gerh)62W*C#+mh>IBrTj~MfUxC#tEJ;63L0)vvI99# zQw6EUz-`Xm^CW~gQdfn->W*bnK=8luxz zlQj$+p4$Riqilx15&C zC25=C?P<8$==WmfB=J@1YxyDJ!Gu zy24-U@NQRhF-@Y5(>Q}zCZkjiWU@-*^jC?~NWq}p30f^77FyEf${{ApGl$5Oza#sV zwqiI>?<5@rK4OaA$_Ys00xr_bRKX*dT>??Sx$-w;Do41I|A8AnaW{_Fi7#aDW9c*l zpOD4p5O2Eg6XB6J?qN2Jk%NgjBL9?P%ttZGQ4GCY`Gb7^2=@obeU>DUFcy%YpQnoY X2#>>g0gE&zC|wIrXr&XT%7vc)j~HY@ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/managers/DeathbanFile.class b/bin/notifyz/hardcorefactions/deathban/managers/DeathbanFile.class new file mode 100644 index 0000000000000000000000000000000000000000..3e87d19c0ac93b525435ee7ae3c5a1ede3b69f68 GIT binary patch literal 8295 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 C6A>2x literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/deathban/managers/DeathbanManager.class b/bin/notifyz/hardcorefactions/deathban/managers/DeathbanManager.class new file mode 100644 index 0000000000000000000000000000000000000000..2cb7e0947114a568b845d1c89ee71730a2c52705 GIT binary patch literal 1084 zcmb7DZBG+H5PlYc7H9=a@g4EqR>e(>pDZCM7DJmBjBSbW3)x3Kxm&Ibb8XW3|AWE4@Z^Va%*p=ynocH zHg*|UjUm0|1xhQs&2XtuJY<-C6L#eSmXJ*$!?5nCBC7)Kh1!dZk=pW>8pt+9WpEkG z40C%2?e|TFjrzIXr8(*`e$tD?znVcFYgB;^8!8CYh;kQd#o7WGu4OQXd4}b>(sDl< zbfjsCP9Pa__0SW+p)e}e6L86wwywr<)DT04mxW?oOUnlo>ltxuxhvn-5w|8BOFFwD zZ=D`YRa=TFF)TEduZ4{a<)~bkVC#>@+wE$lv`v)hX;loXg?}B2RdN_5Wi#Z@I8>d7 z=yqLWRG<}onf$L2v%B{lp&Li3o9bWzGq_`5(%q$w3E3|TQ8 z29s$d!^d;{PYZT4)U-xvzeK0{-?5xdBemZ<)6zxaFPJQ6WDtt(G<`)_L2ED)WBE6< z*bF1%$+s$=rTo;E?9PjLdTHut6=+BqZp1@Ke@jRsMK4_fX`9XpWWQiBkCku8eZ|$! zWSGHq`p%OZ87VkM;%&T%TZG+q`a0=%u;K8#xaZ{kL_SF5Lp*Z$V?0S@!O0?(5c55a LB{4p8jL&}q{EsJ$ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/economy/Economy.class b/bin/notifyz/hardcorefactions/economy/Economy.class new file mode 100644 index 0000000000000000000000000000000000000000..8165a0a83c65114bf1e237e8ca730d2a952e9922 GIT binary patch literal 548 zcmb7B%TB^T6ukpV1$hd-_AbiCNsK#;3mzs-z%CFHR_4+USW;%lFeSlHbKwX0QO4WS zVAPeXlY8cz`#AIQ`SuO~w{T%WhJh`W31-_@{({=~lom7eOrYeN3r|V4-16QIEjVCM zUEl_Jh;q)|=|XshLAlp)AKk&^c{mxg-97`>VNmK&2ZPd#F^oi(=3Nmv7p9G5_QU{J z3~uaZUkbyQffSy`nch^C*(;>-vzdD1)ABmG_(D&2x7*y8L)M$!w&(yRC75ZtKT{Orb zYd6QS7B}JtUl^)Ld*UGo>B?gIbRDmrqkJLGlffk%LXOa)Dg#Gg(f{P3K+JK%6sayj b8RCDdKsCWyiYF=7p^@;XF_QBvah`txVb_jg literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/economy/manager/EconomyFile$1.class b/bin/notifyz/hardcorefactions/economy/manager/EconomyFile$1.class new file mode 100644 index 0000000000000000000000000000000000000000..d2849d04c2ebb257c44a4f4fbdb353c49235007e GIT binary patch literal 1372 zcmbVM+iuf95IviOxOH3-LMXQY1p?$!>J~~VO{s+1A|j=vunG; z@_AdDfwUd7;|8Ymy}mGye9scCz!&CDt9Z6g^kU@bV zSyo50O{&b>pt~>p9lq}fhJ4erxUIAK13%HQGFOb zHc?xGz;2OD&!*47Y#I$k>^xLh9EPU`uHy!SzU>9RC6w$5YUmQoD9#My+jht0k`&GG z;XGP%^xLp}miG#^HM{Owj@P5cYzTSawKOa-%#U(c3@j^IX4PGZ(^}(_GBO&jEBsZ5 z_j;m-DH3y%#swsDIi+qOmsi@RpGcBM1_td;(CP&ep(R_bo#0}1`UJV^H{`$2RsvV( zou-386O;5-PCyn{agAoCY8}Ju5r_gVRKFruJH^f7cijDfM@hU(eI|Q^rPB;-B9E;Q zZz}SM@yHvGF%!lpz{D((e?>9o;uzI9hF-1xMzMH`Cj;b&C21p!1*GU-siHo^LO4Ii SBF!mEw~m*z(g{=LLeD>K6J9+4 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/economy/manager/EconomyFile.class b/bin/notifyz/hardcorefactions/economy/manager/EconomyFile.class new file mode 100644 index 0000000000000000000000000000000000000000..9d4eed280a8d1177b9f1120ece68d1546524e2ae GIT binary patch literal 3730 zcmbVO`&S!f8h*YcFfZ)QRU3cV~GnEBrMzURF?@B4oL{ol9W z0qDc$3L*l1mhGA|ix;$6-6`a4$C%Ocu4!8p&B)u9J-?{U>y}6X$kDf*-lZLuFlPwuI39h5ByajFPPvf_x6^t}f7?V@k%V^V5cN zN}nz<)QOy(*Gm(+W6E_PjJdOBMWBD`$g{GNS|;zUf2j(jeZj zMc|g?TBfA3t+)rh3VH;3ubZJ&q*bBeUM83d1hxmrp@Pe#vgAXxY8F_HYxS~VDl0(} z*mjj+S>LjL75C#HwUn#WvSS@B+(=I7^LEwZ4#7oSFBF3COG5liMG9&8HlX4@^pOUY z>a^>ylLWgI3<_vBSspDI7HA2ItP;mj9G3)rNZ{a&6pJ4aFI?lUV_Lo=8rmLU|fD+)OJ@f#rLeoNlxjeo%1+kJEkAHHdFJGBx3|*+5Q!Dg0c)S)w-p z>R(knfhWlk%Xo&V+g3*ib4bCtRlVHzKaOb>6yyaqH&A8gQ(<6+44853d4H?G-Y{ua z$FI>b70e3Ux;D;(RkKtuoEDsCgRZB#H;y7oGS~BKcwYyfkUMM@WjrmZSuPtEYoKRi zJ3=%FRAwYZMTLth!|d91XI2L(P$=2*3l+~`k?NRE4wVfoW3^A=mnwdRUo-P;xMN=E z*`%j<)b<9YY>JIQ1nlDOiq9Pm(eNy|2FuvQVsjp|+SkxZAR@a$SWn;ziL|;SFP7_F zdCzK)pxcE)=a0Q{SI^IJZUnu&y`nD|p&_8)uk}QG+2=%8kP=ed;I+?7d3@ZiI(b80 z{n#slT+3Cj1Y|(6mSs3YCB0HHD!d%f5B@dre?ndwc)f_oYXoJj-n+^*dobTyC~Lgc{KA2aC>?QiS%V`pWG5p+!|fNPcES|-F*qW(ly-im4|Vs+(&d^7h>oj{%u6; zz&1)da0jKkv4>xG_=wnxySVbtNUdz;=;AluqNJx^^W;EN`fGH4$;}Z+HO&-*01{61 z-kSnAAqO8N()a=Hmd3Zr!`;j1j^GO}!w{*EMXf6qwPGLkdzv{r1F(~fU6iLcdtf`4 zaUhB_I~#a$PgO6?(LBuE{_Yjb%>gD6@Bj{Rw?JkE{RAT>(c9A9>Fyd1?>tw-kp{T$ zZ(j(wZ3Vb(1-NYm_`!{V3+n(saKpg7X8Q3ET}(nVEnXlij!rTtyAnf7ICcpmd>=^+ z)$nkx`v;7^jfw8>F*2D&_Z8O6zj zxrDinSPfPUP7MowxaE-x0`FY;k7QiTqr%9GyVVJ*jd{*(0 z=V2c!fEEX#>%>|72G7!;E{x%~_#Jc7gAqK3=b4LPN`H?(P|F{AMv~0`_9uS(GbLS! zUco^$D-a5z3Pu&)8x)Qj?7u>jBEFm(1^!YG8eXIUl9BzF@q&z5=Q3UtSi-A0xwwpr zlj-gyyuOULA~+*skr*Ny-ji=N{6jh&^_%3FCO zi6%aPH@=baOt%d+aZPqNnf=aY=AZwZowGlGfBONTf=3C&7`BwBW$W{~eaii&_N!U|yMDXh z8B=AL+>uJ^XAG5MJyiYW(BQ$);E~&JOI6)CW{B6krkKK2h6!Q(TDXE_3KK{%WQ+BW z{EXW!S8cnYeW}{CCV^`VJE408x$~jXVHIjzIl>*ew=j*g*<;cILnehAxXF;@&E{wZ z!|VT~6R}tW&$E#|?+I6EF>+)fi*y3>k!9WpMW^9XCTC<88J@k$XyYL@>g(@|0 zchHOs+uh2>rGN{DR{~x&d^_MZ!*>H-H@p#W$?z8O7uq(4do-4j zq%ljT=8!=S1@ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/arguments/EventCancelArgument.class b/bin/notifyz/hardcorefactions/games/arguments/EventCancelArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..af6b85757c24e4418a7768dd4f7856e07c7e352f GIT binary patch literal 2987 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 OWKj_K8&_B1@BahI*G!%O literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/arguments/EventDeleteArgument.class b/bin/notifyz/hardcorefactions/games/arguments/EventDeleteArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..c032ff5fe5f3932b2191890539e753d3f9870973 GIT binary patch literal 4790 zcmc&%`ClAo9e!TeWj4#ukWHJ0HchrQgezfMj5%1OZ3qauBr#AT)N5deWy0*tIy;M! zs`b`--`aXqtM!bU#D+j>W9x0L_wmo@$B)lDGc3#QLdj3=4?FM7e2?dQf9J*jUcUk0 zF#e^WPN2_rJacyOf;OkSnHk45X7w4*bnJqb)pJHc)7@+_XV_jr8(iS!q+uDJ@nHB+ zK}2A9LkUICv`o*GQu3xI@BEt?CzsRhj5ab599E?XG~}&f*0crgOK&K2IK(*=;ymNC zq{!T7+NRepaJc=ZxjQBVA_Gpwh@p{^GQO2DGzl~Z78jDboiwBe;;6@V6$+XK+S=3S z^#xtCbUUk!d9G<^Q`Jv8CbmH!p(2U~1-DXWB~uK$sMR%c&H@qa7N{oz$#jQ`JF!PV z(JfOi7zKfy4_7Ntuvg&rN}(r;rj;?=7?J{a&dtnrhkoz&&FEeYYOQdozIPIS>AJ)bx1jKHBGtdr)Q=22R3kNzjW#S z0()vvtU4}+2L;q*pC4ZtBi2IH(x(keV4Guy)h008o_5@)4c)5a$FT@jFR%~;7Ng9<@!q` zerlYSt~gVXRHvuU8#7+2+IwrhIZIFbLF!G)d>&VE6vrAdfj1~PCy*?|RMRCYCS`>* z7U-Z+qaec_$HRD&f;S3iH`%UKycus1*ulgJ``D;%Q=%*F>ex6RJwwlFaup3k=lE+s#F;wf7MTDWxDQaAb2HZ!vFZg~ftr~6OtLM8d4amNZfSZ>g$+lbDd?S{Fh+Ni5#YO{5_@^R z)eL{CV@f9Q+f=wRO&cZ$)9KUaV(^%(!HCEN^PvP+k}s%uyCjdE8y*=SjAIdxD7e5N zZ|hd=#&#O$UPo1xs{RD2SjB6uU0_ZFok z9E7V=d(ApoNS{&hS$vM|ZLKLVl3gTb@U^VtWG%xV6^_k|uRt5g<%*shr@oKk_yWG9 z;EUXfw#cI5%XnNSqvx`Ha7kGQEqE%oD%o2STv@-O;;Z-?)66rZCCPQsWjP!VyP!{5Ltq)kesNPHuf{5uYQ~?q-;UU};SN}OfuBPP{>H7LDvY&)q2M0^ zdp9R#X#|nO-88$NErEbf|2?7N1$JD0G33GGWbcoo`Zvex01{NF`Ez-|g|K@;x4K7Q{V z!5)5|%XhvCyoyic@2C$&5CS*X5XdB9N~%_=s99Uaaq8-#qUPihUL7h;JP>HUM8ZIA z1KELOnVQy;npT`Z58pFrILUw7E6yU~dttdHawGZ_+PkE>YZ$zO;U%0(yq@wq4=rIV z(6fSv>JYiu`3!a}VX7q(=~=;B>(Co*iN1i@CvdQWeU5CBikHOsnj)fIE3oSEIF7Bc z=B4HW$*-WuV@s4~zr(+kZ<@PlKfN7dp|$nC!+W4gcQKX+_#M%PgZ%I3{}2u#$B#~j z-E{ZEkkGOtT?z6?fxV1LO=%Xl{)rFX#Ecn>*b5SD$<$-G&{`xwLsxh~-S_y7a< zK|WPcfABvzpfDX z-jX%Fp*7NmdWgp6I5n;WsR4~w>4s=0V|$T@@(c^KsR4oS2`S;aPxUN*#;Z*7U-H?n b@jLw9Km7rJ#GmmOzLU-8ulPIuiI)EXxOI1z literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/arguments/EventListArgument.class b/bin/notifyz/hardcorefactions/games/arguments/EventListArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..afcb3deb0e6efb7897b142c959253d230813c3e0 GIT binary patch literal 4167 zcmb7H`F|VL5&u40_A2rQD@x+TKtTyk@B!WcDNrj->L>|uk&|FMZWG$lwX~MkUhS&8 zE4PN0p0xD759ocS2W=rGifvk&^e&(NO?>)&yDNKR$tL+h((ZfnX6Aio<~yS|-dueh zz+t?hpiN-Jc6@Vo>1l0FcS}XbHD>jqZ#uT8mGz3@X}VjkRSetrw3CbcDVUx=8Z9YE z2%O&Ze9bp4(>JA#s;SAh;HBtPD!N_L#`57qLz_Tn)vA?ETi}7hrb2&^uV-0BJY%pB)a%y@s3Gs7f|JGy{sWG?xoO=oGE!sNhoiU#gbaVOp;pp*^&3}Ys+tAC)`8>#GW6fSbDW;*d>AcTWM`N8@ZX2 zD(+FyC#@xYC%m}4<3SboqF*3YHQb8ndCVVPs7VjQ)Lk%b<4mnGW4KfLj74WN1*fQ6 z)4FTQ_h>QU&zYXUk=g3LX$hZ;X|Shj5rEFX~p! zI6EsNlHUa8hb7F92;A99q5-Brho#RLmcTa0j%q<*w!h%GWo@RmuweRHqgJBrNyf}@ zb6ZHX$igR^!!U4B!4ZMIF-y#F(_hlgS^ARUrf?MRQgBQ_yTw9OF^b~?I|zJKq2s#E z0Jt*M1~!kTZ|D_mieHg?ao9A{Whp6}9m)?%abB;9G@sw4<*<}zg6 zb1I&|1UbexJYOJtgZOOC4yac<=NcumsQU(Cn8LJz^9}B3R;%JYcrQJeCA~_R-w`Ex zAlX7=l(Nl==%2tv6;I-QOidDmwIpzNYX?t7o(BGXK*dw|pg?;?uL?Zc(*D|k&CRDU zgOY+GK@3VS?qNO*m*aXW46yb(eMd%2;I11Si~wH~5B!@`VPc+@8wFk9P~69+Gx4H6 zJ2THT$thr&-nQiv@IKLk$!L$E7WSNS>Jr#p_T!bgp@eqwau@uwb} z7`-6S6EEa7!GL8yEE(h@8~8bLChi|oi@m2oDM>sn&~{%|y7EyKACm?X(pCx|$0rqh zLg0~@Z$($1^&_US%o$IccdEW;R;sKM(`Gi=x)pUd;{GXon%d?a*`Obe0~nM}3zBJG zlI;4NiqGP6jE3o*tWFX-Ku@3g=6X!?e>bF#UJ3!?4*}{nw7w$>odu$TH zT;q*oWf=zqE3iKvnbss6q*1(qE>#;%v~Pp#k>-dTrS9#MzFu4y*Q-(QOAy-uOOz;^vTZi7R_R#Wey*cPR%VEr%X9j z^aN3r2sP%*VOhQe@VMjnta-gUZuoOfiF4h{xUAq6Mt!~IoA#o!U}%K^2@2}cFUMU{ z@h7~>gsZGC3H&drhF}_uPKL@)bI`R6udm=Z3$<#C<{XR24F{))P+a`xH$#(KpN%s} zq&cr!)}+af)7^>=~@% z_B!sWWB(N#c!h#(7~pq?$AH~b(}V5U!(n_c2D#D`D#H-&;~UimMg@)CkKxGV6djT# zv(iXfTZTqELo|}k*75drgD+DiwARU!;NOdN3)wXbSv-n(2a zj@*mrNW3(34Y`qy!B?@Pj(4sgFHpzWD$W8cm~6u;F36|%w_zFj3d(J`hJ}&N-cIS_ zRa7pcTE}8$iB4X|Gkhc-%XoG~=~e3Z%nR7x+p#A3yp;T6h}jCh+=fedD7O7IZePYX z>-Y{uGT&X(C^bo#gCmKT=zStUdJri-?_NnQaPOB~Nuzz+n|M|M2a^Q_hqQD`R%93hX#AB?>lnO_U(4&nLwO)@RjQ-_ reoNzE$U>>#;}3k3iFAc)SLxzw!P8%G9e>9^xF@UspZGWai{AeO+X%Um literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/arguments/EventRenameArgument.class b/bin/notifyz/hardcorefactions/games/arguments/EventRenameArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..03ab8f0c77eff4b591551a7082e5747ba0738157 GIT binary patch literal 4782 zcmc&&X?q)26@IU6c@%lvC{CN!O-PlJ#Fm|Sl90BE<+{|WT^r;i#I8+Jwy`yqCmzj+ z(a6PRY1z84?@L(_;~xr|1O{x!Gv}5b)#i0KJL|Z{oIdNBj$PDpdfq5%x|=KI4cjYf!;4%_ z8a9vb4-XZz2#l^Pq2!sC>6ubW!PMlN|1#_3^SYhY#?ry2EKQ)bV3l&FEpRZiuF%m? z&yi5i6Fy6d%mb!vdV>OoyKk5~IVI4NcCtnkZItBtRz}e-5DzRaCUiStNDsu&jLj+( z#09##GiUTgU9)sMr%iaSY3EY)C&{Tz5a>`5L92qB1#Ycn8Y-Dq)^MZPCa`^ecCIgU zQJ;_4SB^nn3|n!V#O@Thr2%$wDn_L3Dt6#a0!q&CjxkySH+LuN)sn*QP?5kcTC5ie zhMg7I-$-g5Z>Vodig>e%-4ZS8Ie`bHv3pf?p<5tUFxo#Zks8G2mEP8Mnd2fNebD?*t;2 zK4Vw{n;bj5HUe|q8OP0OGo^(E)6>e=D*Qabcp7eM1BwQz`fz=SlBZ>q2W8gXC(zt2 zv-y6c6%0|=D){ug?xh{eaaBBkVN#wPen4PbHU27zpEwUnmyFh=-0_(+#;ljB_hQ9I zZ==Wk5cVfzwr5oAM_(I`;e>+Y0*NY}8oETqJLLUoE7C#ZMo}h13=?=r!K8q8gLOy6 z6s85XFs;IZG_Ko}=t{ei>u0NH=y`3DkB~gohEsT0!D)fyx+>H%sdyLO%}Z7R7f3hE z>WxKK>hzdYDHX+g1$Ir&8?KQsS@|s2(6dVkJrVYXgzN#?gaTdQ?u|uzO9ewKE)_i^ zA2g8AOHs@U>{*4NkktZPgVGfRFKbg5i(d}g70lDK8)Md(Bl*s#SO9O2QY@Fmdm8wu zI#(N}PAYj?Ccmx1ktyDKYB-ZQJ{`sT1#SxZL^fy=2}xE|;YqT{^yt{+a1@K|F$vE} zkWuEI%#l0a7?Mhdy0Cg|K+fXU!bZU&xwXM9rj#&v%<(r!%NqYtuo6}zf%XYcpIsQ& z3t?SucWmxhatfB=F;1obNl6N-l+;tpm_?5oZkjN2w(gZ&>hSdcLx+L-$~nj~_XM6& z@FY8f-#dJbStKpiI5}gfcp9Ig@Dd_^X!$NQh>T(L&A;8adM zvSf5{r2LwSuj3m`L(hKruMvLG z1rAi}SjSV{Si@ec;5^G$MXdlkYU%lztiJnzz@ZK1X}={&e+P4Z&_9ywVzCLQ zaTnoUL6px;d^6C3Ca!yWI$|B_CEV20dl6fDUc%N>9k*P;>d{jhqMwT(x-`W|G2y}}%T|v)F%?l(y50~4{R)6cCmMW)G z!0Lw@1?j?OKY}CJ;>Sn9Ub?i4@#?`KpJ_(w3}a>CAU?uhY)|mNj~8$k>*f(G<0!7t z#s9>BXhll2;a)!+qk*H#Q5Wra1Rr1+=zJ{UQ5kLSWQdrG+G)M7*c literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/arguments/EventSetAreaArgument.class b/bin/notifyz/hardcorefactions/games/arguments/EventSetAreaArgument.class new file mode 100644 index 0000000000000000000000000000000000000000..be89c1eb15b6e1c45026df149bd33998cc5e98b4 GIT binary patch literal 7053 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 literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/conquest/ConquestExecutor.class b/bin/notifyz/hardcorefactions/games/conquest/ConquestExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..a786a13c1cd3f913ed331cf9a20bbbf054f0744a GIT binary patch literal 782 zcmb7C%SyvQ6g^X`ZPWUyw!Rnce1Ji4Au2*C7KQqNir{ig#yFD9)MO&+U%63G@B{oP z@g_DKA%dH^b1rkvz4zSt{CfKUu!W@(3Jlvy8+rZsWZ&@6b#y4MxnrbOk?rw7M7E>V zT`VGFw+EMl2jRp#QLYYjJVPsD# zY4#bmR=Tzzkkz4vJ@Lr$yNYaCGUma%=V*V|?|1d5 z-~97q0K@pJf)0Vbw&Pj(rMvV+!_8$K*UTGP&vNXFUNA~#MbA3+iKZt$#w0+n6a!im&sFBDuNa6z-X`>IwkXS#7*3QfUf0zJ(XDlW$s z0p+AoteVq#fzADy7UJW$7*|MGdnLtc^{IJD(WjyxDQ1sRE}M2vV0$alRotPKX(?i> z6tPXNy6%rHqgs_iyPPSy5CrNUtqS4%lD z&k0gQptEQ!m_-@qX0#ZZF2@c_O(5St>9_@bp?dtd<*~$rQVc)O5&_dquR+lw8IP`3 znYvAynU>)17TC})vvU-C6x=|Um#NPz8eYaJIb$%zg+)W5+CXtCDdb0 zL7HATW@f$gY9#B}$8Zxt_mgu(i?dE9R3vdxH-3yM1(O2WGMidLqT+x|qwWd;nldXg z&EuHCK?S!6=-;zfshGu_z`4wVu!&6>HYK{!uT=YD^h~3q&+!qGr@JwaTNNA@NVPSg znMuVF+$IojC}#s`neuCkZ1naCX;NCjPiX$yJl;~-)Mtvu65A4aVz`|-973SQaHqfy z&8ldo#a`=bl%?gF^EpOG{w(i?R`%KJ-FGmK1>_WD*`?d+ZkQ@h75!#5*hBK9!UWq# zx92X+7;eR!uswF|mS8lhibN)3m5yOiK=j3Mj8)gyFwpkfE)6TfR#0M`SMjQFP^Rk~ zrSr0f`6V(T6N-gU0gdQkcsNn=R-x(|awf~Ewnl0+TwKA$nmLJ63Vudp*8$H8UKLBy zNG-6$Ujz=CC#sff=H{)e=MXc07l`5K0+&r0r>s)7RG*M}hK$mDE(win2Y1Wb{iSS^ z6YWd23-{uF1@{SD+t%Pkv%Spb?;gcStU8((wB>1(L5@!XZ?7@iimh&xcz3RGW!;y8-I7@p$> zrFjlR{d>Hi;1A?!-&Ixo5ifGcEx3-6%Ni9XyFZA+-pc5&XG}E;E8LXi8W)v4T83xK z@-fn~t8+9e;RmMW8ssF5aBt(Tw5i3kqm&Q}&Vu&2=0o1d+MsR9#ls)$6uoSY)|-sL zIYGk3~ zMjYp3BQD?*{PX#EyO1|Z@a3}$%V{1;KSFJis`p>G_(+d_20uKFA8oDS${wwTfq@#f z^PJepM-5l~jf8>9DA~a#)lk!WR!uLi!L|G@a2<99YC0~Yi81;(oQ!-NeHHy%rMlA? z`2g3~kV%YF{s1-Y5A=M5n>!GBf8axGs$n`Ai41*&Lme3DOm_YUM_<6UCib6_O;Yid zxMPKgWTbQG42+RzGWy?DYz3dK(`U0*vPEk+9;iQ2L-lnGHEFzymPanoPDegoHi+q>(#ld!*;_iGmcHnjF#GCvd_6&F6&ls8i z@%?|s=W~qU3#3H{t{0mzDs;YwaDyMwgF&q75f#ID34f9i=jqRQStblmGRjO`o?gML zjPEGE#B0>oN!|a(8`K)5hH<=ww`uV^^n!`H?Q85)@b1^RMnUl_?4eZYUkCp3Ev@B^ A_W%F@ literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/endevent/CustomDragon.class b/bin/notifyz/hardcorefactions/games/endevent/CustomDragon.class new file mode 100644 index 0000000000000000000000000000000000000000..54f0b104112dda244ff8e7bd0bd8fbfab7dc739e GIT binary patch literal 785 zcmbVJO^*^m5Pb~;C_B3>xF7ftb##>v%}z{+9@cE!FqmutY$9azMw+34QKrW<4a#2p z8J_e%>}ib$REuBxu8_g?jnpI^TLsG*cWf}tj39S#?#?wG4V5Gyg{ zfevFibw@lBQ&-4=m$Wwe2%M2`reJQjXg;E5H54AfLYA%#Jf7E-@dr@;6 zQipocpl)^1!?4{tdev*4_>ESh-R*hDo$gV)-e6$I4C{4*)Ld$xPi7(su!jukr=bk> zAw#L${43bYSWN~86`#SX#{-c?66-cDBg>F$62tZ^>I>E7{fS^GG~<9ze6B(huacG? zhf{{f&Hq`)0YmDYp}?^BFGPuE6wirDy6kyg#m{0FS2HLwY`o@k?oPNIxh<~8Hm>11 zLz4H2n^pEIUiz8(PQM2jjkj!UVVf5Cp3Ea#ke$*pJDLY?TKw%wT(%R>R3M&*Mt=U! zkK8wSa6lL|lM!4BX}U8MC2)z1nKjb6Mwvs36LhDm56)qqEo(OD%r3KQ)N3P0@yQTTIn!ya+)vOPMVNjgX7wl}|#>Y>{6;mt!Gpw^}sZvax t%A-gFZ__vfS6$|v-*67S7)dl7cgT!12Y1O**dyOUV%LbhM}7kLe*uorsEhyr literal 0 HcmV?d00001 diff --git a/bin/notifyz/hardcorefactions/games/endevent/EndEventCommand.class b/bin/notifyz/hardcorefactions/games/endevent/EndEventCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..4dfc6bad64717f00af7df77d094aafb8eaa2dd55 GIT binary patch literal 2944 zcmbVOS##4?6#j1FL{1_|39Eq;5jH!47--mHXo27mw;@mhfrJ*KII<(6NI|j